Files
todo-backend/.drone.yml
2026-03-22 03:08:13 +00:00

75 lines
2.0 KiB
YAML

kind: pipeline
type: kubernetes
name: build-and-deploy-dev
trigger:
event:
- push
branch:
- dev
steps:
- name: dev-build
image: ccr.ccs.tencentyun.com/violin/maven:3.9-eclipse-temurin-17
commands:
- mvn clean package -DskipTests
- name: dev-build-image
image: ccr.ccs.tencentyun.com/violin/docker:linux-amd64
commands:
- docker build -t ccr.ccs.tencentyun.com/violin/todo-backend:${DRONE_COMMIT_SHA} .
- docker push ccr.ccs.tencentyun.com/violin/todo-backend:${DRONE_COMMIT_SHA}
settings:
username:
from_secret: registry_username
password:
from_secret: registry_password
- name: dev-deploy
image: ccr.ccs.tencentyun.com/violin/kubectl:latest
commands:
- kubectl set image deployment/todo-backend todo-backend=ccr.ccs.tencentyun.com/violin/todo-backend:${DRONE_COMMIT_SHA} -n drone
- kubectl rollout status deployment/todo-backend -n drone
environment:
KUBECONFIG:
from_secret: kubeconfig
---
kind: pipeline
type: kubernetes
name: build-and-deploy-prod
trigger:
event:
- push
branch:
- master
steps:
- name: prod-build
image: ccr.ccs.tencentyun.com/violin/maven:3.9-eclipse-temurin-17
commands:
- mvn clean package -DskipTests
- name: prod-build-image
image: ccr.ccs.tencentyun.com/violin/docker:linux-amd64
commands:
- docker build -t ccr.ccs.tencentyun.com/violin/todo-backend:${DRONE_COMMIT_SHA} .
- docker push ccr.ccs.tencentyun.com/violin/todo-backend:${DRONE_COMMIT_SHA}
settings:
username:
from_secret: registry_username
password:
from_secret: registry_password
- name: prod-deploy
image: ccr.ccs.tencentyun.com/violin/kubectl:latest
commands:
- kubectl set image deployment/todo-backend todo-backend=ccr.ccs.tencentyun.com/violin/todo-backend:${DRONE_COMMIT_SHA} -n drone
- kubectl rollout status deployment/todo-backend -n drone
environment:
KUBECONFIG:
from_secret: kubeconfig