36 lines
942 B
YAML
36 lines
942 B
YAML
when:
|
|
branch: main
|
|
event: [push, manual]
|
|
|
|
steps:
|
|
install-client:
|
|
image: node:20
|
|
commands:
|
|
- cd client && npm install
|
|
|
|
build-client:
|
|
image: node:20
|
|
commands:
|
|
- cd client && npm run build
|
|
depends_on: [install-client]
|
|
|
|
deploy:
|
|
image: alpine:latest
|
|
environment:
|
|
DEPLOY_KEY:
|
|
from_secret: deploy_key
|
|
commands:
|
|
- apk add --no-cache openssh
|
|
- mkdir -p /ssh
|
|
- echo "$DEPLOY_KEY" > /ssh/deploy_key
|
|
- chmod 600 /ssh/deploy_key
|
|
- ssh -i /ssh/deploy_key -o StrictHostKeyChecking=no root@192.168.1.80 '
|
|
cd /opt/min-chat &&
|
|
git pull origin main &&
|
|
cd server && npm install --omit=dev && cd .. &&
|
|
cd client && npm install && npm run build && cd .. &&
|
|
cp -r client/dist/* /var/www/html/ 2>/dev/null || true &&
|
|
systemctl restart chat-app
|
|
'
|
|
depends_on: [build-client]
|