diff --git a/docker/Dockerfile b/docker/Dockerfile --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -21,6 +21,7 @@ ngrep \ rsync \ nodejs \ + cron \ yarn && \ apt-get install -y --no-install-recommends \ r-base-core \ @@ -29,6 +30,8 @@ rm -rf /var/lib/apt/lists/* RUN useradd -md /srv/softwareheritage -s /bin/bash swh +RUN echo swh >> /etc/cron.allow +RUN cron -f & USER swh RUN python3 -m venv /srv/softwareheritage/venv diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -240,6 +240,8 @@ volumes: - "./conf/web.yml:/web.yml:ro" - "./services/swh-web/entrypoint.sh:/entrypoint.sh:ro" + - "./services/swh-web/refresh-savecodenow-statuses:/usr/local/bin/refresh-savecodenow-statuses" + - "./services/swh-web/refresh-savecodenow-statuses.cron:/etc/cron.d/refresh-savecodenow-statuses.cron" swh-web-cron: build: ./ diff --git a/docker/services/swh-web/entrypoint.sh b/docker/services/swh-web/entrypoint.sh --- a/docker/services/swh-web/entrypoint.sh +++ b/docker/services/swh-web/entrypoint.sh @@ -40,6 +40,10 @@ popd fi + # Trigger periodic update of save code now status + crontab -u swh /etc/cron.d/refresh-savecodenow-statuses.cron + crontab -u swh -l + echo "Migrating db using ${DJANGO_SETTINGS_MODULE}" django-admin migrate --settings=${DJANGO_SETTINGS_MODULE} diff --git a/docker/services/swh-web/refresh-savecodenow-statuses b/docker/services/swh-web/refresh-savecodenow-statuses deleted file mode 100644 --- a/docker/services/swh-web/refresh-savecodenow-statuses +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env bash - -set -x - -export DJANGO_SETTINGS_MODULE=swh.web.settings.production -export SWH_CONFIG_FILENAME=/web.yml - -/srv/softwareheritage/venv/bin/django-admin refresh_savecodenow_statuses diff --git a/docker/services/swh-web/refresh-savecodenow-statuses.cron b/docker/services/swh-web/refresh-savecodenow-statuses.cron --- a/docker/services/swh-web/refresh-savecodenow-statuses.cron +++ b/docker/services/swh-web/refresh-savecodenow-statuses.cron @@ -1 +1 @@ -* * * * * (date && /usr/local/bin/refresh-savecodenow-statuses 2>&1) >> /var/log/refresh-statuses.log +* * * * * (date && /srv/softwareheritage/venv/bin/django-admin refresh_savecodenow_statuses 2>&1) >> /tmp/refresh-statuses.log