underpost
Version:
Underpost Platform — end-to-end CI/CD and application-delivery toolchain CLI. Covers bare metal, Kubernetes, K3s, kubeadm, LXD, container/image orchestration, secrets, databases, cron jobs, monitoring, SSH, runners, PWA + Workbox delivery, and release orc
39 lines (34 loc) • 1.22 kB
YAML
name: CD | Release deployment | remote ssh
on:
push:
branches: [main, master]
workflow_call:
workflow_dispatch:
jobs:
after-publish:
if: |
github.event_name == 'workflow_dispatch'
|| github.event_name == 'workflow_call'
|| (github.event_name == 'push' && startsWith(github.event.head_commit.message, 'cd(ssh-release)'))
runs-on: ubuntu-latest
steps:
- name: Run remote deploy via SSH
uses: appleboy/ssh-action@v1.2.5
with:
# Remote host (secret)
host: ${{ secrets.SSH_HOST }}
# Remote user (secret)
username: ${{ secrets.SSH_USERNAME }}
# Private key (secret) — the PEM contents (not a path)
key: ${{ secrets.SSH_PRIV_KEY }}
# Remote port (optional)
port: ${{ secrets.SSH_PORT }}
# Optional: increase timeout for long-running commands
command_timeout: 60m
# Optional: if your private key has a passphrase, add:
# passphrase: ${{ secrets.SSH_KEY_PASSPHRASE }}
# Commands to run on the remote VM
script: |
set -e
set -o pipefail
bash /home/dd/engine/deploy/release/deploy.sh