29 lines
849 B
YAML
29 lines
849 B
YAML
when:
|
|
branch: main
|
|
event: [push, manual]
|
|
|
|
steps:
|
|
install:
|
|
image: node:20
|
|
commands:
|
|
- cd client && npm install
|
|
|
|
build:
|
|
image: node:20
|
|
commands:
|
|
- cd client && npm run build
|
|
depends_on: [install]
|
|
|
|
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]
|