Add logic for deploying with docker-compose

This commit is contained in:
Kristian Klausen 2021-10-03 00:29:56 +02:00 committed by Kevin Morris
parent d7ac95a707
commit a333cd0fee
No known key found for this signature in database
GPG key ID: F7E46DED420788F3

View file

@ -11,7 +11,9 @@ variables:
DB_HOST: localhost
TEST_RECURSION_LIMIT: 10000
before_script:
test:
stage: test
before_script:
- export PATH="$HOME/.poetry/bin:${PATH}"
- ./docker/scripts/install-deps.sh
- ./docker/scripts/install-python-deps.sh
@ -25,8 +27,6 @@ before_script:
- python -m aurweb.initdb # Initialize MySQL tables.
- AUR_CONFIG=conf/config.sqlite python -m aurweb.initdb
- make -C test clean
test:
script:
- make -C test sh pytest # sharness tests use sqlite & pytest w/ mysql.
- AUR_CONFIG=conf/config.sqlite make -C test pytest
@ -41,3 +41,17 @@ test:
artifacts:
reports:
cobertura: coverage.xml
deploy:
stage: deploy
tags:
- secure
rules:
- if: $CI_COMMIT_BRANCH == "docker-deploy"
script:
- pacman -Syu --noconfirm docker-compose socat openssh
- chmod 600 ${SSH_KEY}
- socat "UNIX-LISTEN:/tmp/docker.sock,reuseaddr,fork" EXEC:"ssh -o UserKnownHostsFile=${SSH_KNOWN_HOSTS} -Ti ${SSH_KEY} ${SSH_USER}@${SSH_HOST}" &
- export DOCKER_HOST="unix:///tmp/docker.sock"
- docker-compose build
- docker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d