feat: add dev pipeline with branch-specific deploy
This commit is contained in:
+19
-7
@@ -1,26 +1,22 @@
|
|||||||
when:
|
when:
|
||||||
branch: main
|
|
||||||
event: [push, manual]
|
event: [push, manual]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
install:
|
install:
|
||||||
image: node:20
|
image: node:20
|
||||||
commands:
|
commands:
|
||||||
- cd client && npm install
|
- cd client && npm ci
|
||||||
|
|
||||||
lint:
|
lint:
|
||||||
image: node:20
|
image: node:20
|
||||||
commands:
|
commands:
|
||||||
- cd client && npm run lint
|
- cd client && npm run lint
|
||||||
depends_on: [install]
|
depends_on: [install]
|
||||||
|
|
||||||
build:
|
build:
|
||||||
image: node:20
|
image: node:20
|
||||||
commands:
|
commands:
|
||||||
- cd client && npm run build
|
- cd client && npm run build
|
||||||
depends_on: [install]
|
depends_on: [install]
|
||||||
|
deploy-main:
|
||||||
deploy:
|
|
||||||
image: alpine:latest
|
image: alpine:latest
|
||||||
environment:
|
environment:
|
||||||
DEPLOY_KEY:
|
DEPLOY_KEY:
|
||||||
@@ -28,7 +24,23 @@ steps:
|
|||||||
commands:
|
commands:
|
||||||
- apk add --no-cache openssh rsync
|
- apk add --no-cache openssh rsync
|
||||||
- mkdir -p /ssh
|
- mkdir -p /ssh
|
||||||
- echo "$DEPLOY_KEY" > /ssh/deploy_key
|
- echo "" > /ssh/deploy_key
|
||||||
- chmod 600 /ssh/deploy_key
|
- chmod 600 /ssh/deploy_key
|
||||||
- rsync -e "ssh -i /ssh/deploy_key -o StrictHostKeyChecking=no" -avz --delete client/dist/ root@192.168.1.88:/var/www/
|
- rsync -e "ssh -i /ssh/deploy_key -o StrictHostKeyChecking=no" -avz --delete client/dist/ root@192.168.1.88:/var/www/
|
||||||
depends_on: [lint, build]
|
depends_on: [lint, build]
|
||||||
|
when:
|
||||||
|
branch: main
|
||||||
|
deploy-dev:
|
||||||
|
image: alpine:latest
|
||||||
|
environment:
|
||||||
|
DEPLOY_KEY:
|
||||||
|
from_secret: deploy_key
|
||||||
|
commands:
|
||||||
|
- apk add --no-cache openssh rsync
|
||||||
|
- mkdir -p /ssh
|
||||||
|
- echo "" > /ssh/deploy_key
|
||||||
|
- chmod 600 /ssh/deploy_key
|
||||||
|
- rsync -e "ssh -i /ssh/deploy_key -o StrictHostKeyChecking=no" -avz --delete client/dist/ root@192.168.1.118:/var/www/
|
||||||
|
depends_on: [lint, build]
|
||||||
|
when:
|
||||||
|
branch: dev
|
||||||
|
|||||||
Reference in New Issue
Block a user