Compare commits
3
Commits
5def3c14e8
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e43773aa71 | ||
|
|
656976ff1e | ||
|
|
733a7218fa |
@@ -0,0 +1,45 @@
|
||||
name: Deploy
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
runs-on: ubuntu-latest # hits the host runner (vps-runner) already on this box
|
||||
env:
|
||||
KUBECONFIG: /etc/rancher/k3s/k3s.yaml
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Build backend image
|
||||
run: docker build -t realtime-collab-backend:latest ./backend
|
||||
|
||||
- name: Import image into k3s containerd
|
||||
# docker build only populates the Docker daemon's store; k3s runs its
|
||||
# own containerd (imagePullPolicy: Never, never pulls a registry), so
|
||||
# the image must be explicitly imported or the pod keeps running
|
||||
# whatever was last imported.
|
||||
run: docker save realtime-collab-backend:latest | k3s ctr -n k8s.io images import -
|
||||
|
||||
- name: Roll out backend
|
||||
run: |
|
||||
kubectl rollout restart deployment/realtime-collab-backend
|
||||
kubectl rollout status deployment/realtime-collab-backend --timeout=90s
|
||||
|
||||
- name: Build frontend
|
||||
working-directory: frontend
|
||||
env:
|
||||
# frontend/.env.local holds these for the manually-maintained
|
||||
# /root/realtime-collab checkout, but it's gitignored, so this
|
||||
# actions/checkout-based workspace never has it — without setting
|
||||
# them here, Vite silently falls back to the localhost dev
|
||||
# defaults and bakes a broken API URL into the production bundle.
|
||||
VITE_API_URL: https://collab.m1ngdaxie.com/api
|
||||
VITE_WS_URL: wss://collab.m1ngdaxie.com/ws
|
||||
run: |
|
||||
npm ci
|
||||
npm run build
|
||||
|
||||
- name: Deploy frontend
|
||||
run: rsync -a --delete frontend/dist/ /var/www/realtime-collab/
|
||||
@@ -40,3 +40,5 @@ postgres_data/
|
||||
loadtest/pprof
|
||||
|
||||
/docs
|
||||
|
||||
.playwright-mcp/
|
||||
|
||||
Reference in New Issue
Block a user