Files
MarietjeDjango/.gitlab-ci.yml
2019-03-29 15:29:59 +01:00

43 lines
1.4 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 pull origin marietje-zuid
"$PYTHON" "$MANAGE" migrate --noinput
"$PYTHON" "$MANAGE" collectstatic --noinput
systemctl start MarietjeDjango.service
EOF