server-monitor/.gitea/workflows/deploy.yaml

24 lines
1.0 KiB
YAML

name: Deploy Dashboard Monitor ke K3s
on: [push]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Deploy via SCP (Jalur Luar Container)
env:
# SSH_PRIVATE_KEY harus diisi dengan isi file /root/.ssh/id_rsa Anda
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
run: |
# 1. Simpan key ke file
echo "$SSH_PRIVATE_KEY" > deploy_key
chmod 600 deploy_key
# 2. Kirim file deployment ke VPS
scp -o StrictHostKeyChecking=no -i deploy_key dashdot-deploy.yaml root@43.134.163.21:/tmp/dashdot-deploy.yaml
# 3. Jalankan kubectl di VPS (bukan di dalam container runner)
ssh -o StrictHostKeyChecking=no -i deploy_key root@43.134.163.21 "KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl apply -f /tmp/dashdot-deploy.yaml"
ssh -o StrictHostKeyChecking=no -i deploy_key root@43.134.163.21 "KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl rollout status deployment/dashdot"