Files
MarietjeDjango/.gitlab-ci.yml
Daan Sprenkels 065f29fe55 gitlab-ci: Regenerate caches after apply patch
This commit fixes #14.
2019-10-25 19:18:54 +02:00

49 lines
1.8 KiB
YAML

stages:
- test
- deploy
pylint:
stage: test
before_script:
- apt-get -qq update
- apt-get -qq install -y python3 python3-venv python3-pip
- python3 -m venv venv
- source venv/bin/activate
- pip install -r requirements.txt pylint
script:
- pylint marietje/marietje marietje/metrics marietje/playerapi marietje/queues marietje/songs marietje/stats
deploy:
stage: deploy
only: ['marietje-zuid']
before_script:
- apt-get -qq update
- apt-get -qq install -y git openssh-client
script: |
umask 077
mkdir -p "$HOME/.ssh"
cat <<EOF >"$HOME/.ssh/id_rsa"
$SSH_PRIVATE_KEY
EOF
cat <<EOF >>"$HOME/.ssh/known_hosts"
marietje-zuid.science.ru.nl ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBLticd8NEr6r5QJ2VKFX/rVcfkhM3IcAr+hCgc/kgBSIPEzyRIXd74glIx17FJxvhi2KLC5D+EVtu9CSZhYSe10=
EOF
# Deploy the new version
cat <<EOF | ssh root@marietje-zuid.science.ru.nl
readonly PYTHON="/srv/MarietjeDjango/django_env/bin/python"
readonly MANAGE="/srv/MarietjeDjango/marietje/manage.py"
systemctl stop MarietjeDjango.service
git --git-dir=/srv/MarietjeDjango/.git --work-tree=/srv/MarietjeDjango/ pull origin marietje-zuid
"\$PYTHON" "\$MANAGE" migrate --noinput
"\$PYTHON" "\$MANAGE" collectstatic --noinput
systemctl start MarietjeDjango.service
# Regenerate caches
(
sudo -u www-data /srv/MarietjeDjango/django_env/bin/python /srv/MarietjeDjango/marietje/manage.py recache_stats
sudo -u www-data /srv/MarietjeDjango/django_env/bin/python /srv/MarietjeDjango/marietje/manage.py recache_user_stats
) &
EOF