name: Deploy newsbot on: push: branches: - main jobs: deploy: runs-on: deploy-host steps: - name: Deploy on server run: | set -euxo pipefail test -d /opt/noctura/newsbot || { echo "Deploy-Verzeichnis fehlt: /opt/noctura/newsbot" exit 1 } cd /opt/noctura/newsbot test -d .git || { echo "Kein Git-Repository in /opt/noctura/newsbot" exit 1 } command -v git >/dev/null || { echo "git ist auf dem Runner nicht installiert" exit 1 } command -v docker >/dev/null || { echo "docker ist auf dem Runner nicht installiert" exit 1 } docker compose version git config --global --add safe.directory /opt/noctura/newsbot mkdir -p "$HOME/.ssh" chmod 700 "$HOME/.ssh" ssh-keyscan -p 222 git.noctura.dev >> "$HOME/.ssh/known_hosts" chmod 600 "$HOME/.ssh/known_hosts" git fetch origin git reset --hard origin/main docker compose up -d --build docker image prune -f