This repository has been archived on 2023-05-02. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
neo/.github/workflows/update-server.yml
Didier a7ae0357d1
All checks were successful
update neo with compose files / deploy the config on the server (push) Successful in 5s
update neo with compose files / notify after actions (push) Successful in 2s
change msg behaviour
2023-04-30 22:02:41 +02:00

73 lines
2.1 KiB
YAML

name: update neo with compose files
run-name: update on ${{ github.sha }}
on: [push]
jobs:
# validate:
# name: validate the new configuration
# runs-on: ubuntu-latest
# steps:
# - name: install packages
# run: |
# apt update -y
# apt install -y docker-compose
# - uses: actions/checkout@v3
# with:
# submodules: true
# ssh-key: ${{ secrets.SSH_PRIVATE_KEY }}
# ssh-strict: false
# - name: validate files
# run: |
# set -e
# DC_ARGS=""
# for file in docker-compose.*.yml; do
# DC_ARGS="$DC_ARGS -f $file"
# done
# echo $DC_ARGS
# docker-compose $DC_ARGS config -q
deploy:
name: deploy the config on the server
runs-on: ubuntu-latest
steps:
- name: setup ssh
run: |
set -e
mkdir -p ~/.ssh/
echo "$SSH_KEY" > ~/.ssh/staging.key
chmod 600 ~/.ssh/staging.key
cat >>~/.ssh/config <<END
Host staging
HostName $SSH_HOST
Port $SSH_PORT
User $SSH_USER
IdentityFile ~/.ssh/staging.key
StrictHostKeyChecking no
END
env:
SSH_HOST: neo.ixvd.net
SSH_PORT: ${{ secrets.SSH_PORT }}
SSH_USER: automation
SSH_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
- name: update git
run: ssh staging srvctl -fn neo mm u git
- name: clean docker compose
run: ssh staging srvctl -fn neo mm c
- name: enforce new config
run: ssh staging srvctl -fn neo mm e
notify:
name: notify after actions
if: always()
runs-on: ubuntu-latest
steps:
- name: send ping to ntfy
if: always()
run: |
cat msg.txt <<EOF
results for: ${{ github.sha }}
validate: ${{ jobs.validate.status }}
deploy: ${{ jobs.deploy.success }}
https://git.ixvd.net/${{ github.repository }}/actions/runs/${{ github.run_number }}
EOF
curl -d @msg.txt https://push.ixvd.net/${{ secrets.NTFY_TOPIC }}