stages: - test - deploy before_script: - apt-get -y update - apt-get -y install git docker docker-compose # configure SSH keys - 'which ssh-agent || ( apt-get install -qq openssh-client )' - eval $(ssh-agent -s) - ssh-add <(echo "$SSH_PRIVATE_KEY") - mkdir -p ~/.ssh - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config' docker-compose-test: image: debian:bullseye stage: test when: always rules: - changes: - docker-compose.yml - server/config/minecraft/ when: manual script: - ls server-deploy: image: debian:bullseye stage: deploy when: always rules: - changes: - server/ when: manual script: - ssh joey@joey-server "cd /home/joey/homelab && git pull" seedbox-deploy: image: debian:bullseye stage: deploy when: always rules: - changes: - seedbox/ when: manual script: - ssh joey@joey-seedbox "cd /home/joey/homelab && git pull" jafner-tools-deploy: image: debian:bullseye stage: deploy when: always rules: - changes: - jafner-tools/ when: manual script: - ssh root@jafner.tools "cd /root/homelab && git pull"