kind: pipeline type: docker name: default steps: - name: validate image: golang commands: - go build - go test - name: deploy image: golang environment: SSH_PRIVATE_KEY: from_secret: ssh_private_key commands: - go build - apt-get update; apt-get install -y rsync - mkdir ~/.ssh - echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa; chmod 600 ~/.ssh/id_rsa - ssh-keyscan -t rsa factorio.blackolivepineapple.pizza >> ~/.ssh/known_hosts - ssh service@factorio.blackolivepineapple.pizza sudo service factorio-site stop || true - rsync --rsync-path="sudo rsync" --archive --verbose --compress . /opt/factorio-site/ - ssh service@factorio.blackolivepineapple.pizza sudo mv /opt/factorio-site/factorio-site.service /etc/systemd/system/ - ssh service@factorio.blackolivepineapple.pizza sudo service factorio-site start when: branch: master