diff --git a/deploy/.gitignore b/deploy/.gitignore deleted file mode 100644 index 7b3596a0d8..0000000000 --- a/deploy/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/id_ed25519 diff --git a/deploy/Dockerfile b/deploy/Dockerfile index 23b460ebd1..0dab45ae15 100644 --- a/deploy/Dockerfile +++ b/deploy/Dockerfile @@ -1,15 +1,9 @@ FROM python:3.11-slim-bookworm -# Setup SSH -RUN mkdir /root/.ssh -COPY id_ed25519 /root/.ssh/id_ed25519 -COPY known_hosts /root/.ssh/known_hosts -RUN chmod -R 0600 /root/.ssh - # Install Git, Git LFS. How to silence apt-get commands: # https://peteris.rocks/blog/quiet-and-unattended-installation-with-apt-get/ RUN apt-get update -qq -RUN DEBIAN_FRONTEND=noninteractive apt-get install -qq -y git git-lfs < /dev/null > /dev/null +RUN DEBIAN_FRONTEND=noninteractive apt-get install -qq -y git git-lfs earlyoom < /dev/null > /dev/null # Cleanup apt cache RUN rm -rf /var/lib/apt/lists/* # Configure git lfs @@ -17,7 +11,7 @@ RUN git lfs install # Clone the TLOModel repository and move in it ARG BRANCH_NAME="master" -RUN git clone --branch "${BRANCH_NAME}" git@github.com:UCL/TLOmodel.git /TLOmodel +RUN git clone --branch "${BRANCH_NAME}" https://github.com/UCL/TLOmodel.git /TLOmodel WORKDIR /TLOmodel RUN git gc --aggressive diff --git a/deploy/id_ed25519.pub b/deploy/id_ed25519.pub deleted file mode 100644 index ea4dd49918..0000000000 --- a/deploy/id_ed25519.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIC+bU4n6EHIFRqTI1617bR9A54WLjawxGow+X7Rvb1M6 m.giordano@ucl.ac.uk diff --git a/deploy/known_hosts b/deploy/known_hosts deleted file mode 100644 index 251e46fb81..0000000000 --- a/deploy/known_hosts +++ /dev/null @@ -1 +0,0 @@ -|1|xy99Slrj6EqbL6lTgn2bN/SbXYQ=|9KVFj36xwrDr8cZqlwIUQV5rdAg= ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCj7ndNxQowgcQnjshcLrqPEiiphnt+VTTvDP6mHBL9j1aNUkY4Ue1gvwnGLVlOhGeYrnZaMgRK6+PKCUXaDbC7qtbW8gIkhL7aGCsOr/C56SJMy/BCZfxd1nWzAOxSDPgVsmerOBYfNqltV9/hWCqBywINIR+5dIg6JTJ72pcEpEjcYgXkE2YEFXV1JHnsKgbLWNlhScqb2UmyRkQyytRLtL+38TGxkxCflmO+5Z8CSSNY7GidjMIZ7Q4zMjA2n1nGrlTDkzwDCsw+wqFPGQA179cnfGWOWRVruj16z6XyvxvjJwbz0wQZ75XK5tKSb7FNyeIEs4TT4jk+S4dhPeAUC5y+bDYirYgM4GC7uEnztnZyaVWQ7B381AK4Qdrwt51ZqExKbQpTUNn+EjqoTwvqNj4kqx5QUCI0ThS/YkOxJCXmPUWZbhjpCg56i+2aB6CmK2JGhn57K5mj0MNdBXA4/WnwH6XoPWJzK5Nyu2zB3nAZp+S5hpQs+p1vN1/wsjk= diff --git a/src/tlo/cli.py b/src/tlo/cli.py index c5b0c3f86d..b571b78dc3 100644 --- a/src/tlo/cli.py +++ b/src/tlo/cli.py @@ -234,6 +234,25 @@ def batch_submit(ctx, scenario_file, asserts_on, more_memory, keep_pool_alive, i task_dir = "${{AZ_BATCH_TASK_DIR}}" gzip_pattern_match = "{{txt,log}}" command = f""" + # Logfile for `earlyoom` + EARLYOOM_LOG=/tmp/earlyoom.log + + function terminate_and_log() {{{{ + # Terminate the `earlyoom` process + kill "${{{{EARLYOOM_PID}}}}" + # Print line(s) in the log file referencing terminated processes, if any. + grep "^sending SIGTERM to process" "${{{{EARLYOOM_LOG}}}}" + }}}} + + # Add a trap at exit to terminate `earlyoom` and print relevant log lines. + trap terminate_and_log EXIT + + # Delete existing log files, if any. + rm -f "${{{{EARLYOOM_LOG}}}}" + # Start the `earlyoom` daemon. + nohup earlyoom -m 95 -s 100 &> "${{{{EARLYOOM_LOG}}}}" & + EARLYOOM_PID="${{{{!}}}}" + git fetch origin {commit.hexsha} git checkout {commit.hexsha} pip install -r requirements/base.txt