155 lines
3.9 KiB
YAML
155 lines
3.9 KiB
YAML
kind: pipeline
|
|
type: docker
|
|
name: default
|
|
|
|
steps:
|
|
- name: 测试服-依赖安装&&编译打包
|
|
pull: if-not-exists
|
|
image: node:20
|
|
when:
|
|
branch:
|
|
- test
|
|
commands:
|
|
- npm config set registry https://registry.npmmirror.com/
|
|
- npm install -g pnpm
|
|
- pnpm install
|
|
- pnpm build:h5:test
|
|
- rm -rf dist.tar
|
|
- rm -rf node_modules
|
|
- tar -zcvf dist.tar ./dist ./default.conf ./Dockerfile
|
|
|
|
- name: 正式服-依赖安装&&编译打包
|
|
pull: if-not-exists
|
|
image: node:20
|
|
when:
|
|
branch:
|
|
- master
|
|
commands:
|
|
- npm config set registry https://registry.npmmirror.com/
|
|
- npm install -g pnpm
|
|
- pnpm install
|
|
- pnpm build:h5
|
|
- rm -rf dist.tar
|
|
- rm -rf node_modules
|
|
- tar -zcvf dist.tar ./dist ./default.conf ./Dockerfile
|
|
|
|
- name: 测试服-产物上传
|
|
pull: if-not-exists
|
|
image: appleboy/drone-scp
|
|
when:
|
|
branch:
|
|
- test
|
|
settings:
|
|
host:
|
|
from_secret: HOST_DEV
|
|
username:
|
|
from_secret: USER_DEV
|
|
password:
|
|
from_secret: PWD_DEV
|
|
port: 22
|
|
strip_components: 1
|
|
target: /www/builder
|
|
source:
|
|
- ./dist.tar
|
|
|
|
- name: 测试服-部署
|
|
pull: if-not-exists
|
|
image: appleboy/drone-ssh
|
|
when:
|
|
branch:
|
|
- test
|
|
settings:
|
|
host:
|
|
from_secret: HOST_DEV
|
|
username:
|
|
from_secret: USER_DEV
|
|
password:
|
|
from_secret: PWD_DEV
|
|
port: 22
|
|
script:
|
|
- cd /www/builder
|
|
- mkdir jdt-tz-dev
|
|
- tar -xzvf dist.tar -C /www/builder/jdt-tz-dev
|
|
- rm -rf dist.tar
|
|
- cd jdt-tz-dev
|
|
- docker build -t jdt-tz-dev .
|
|
- docker stop jdt-tz-dev
|
|
- docker rm jdt-tz-dev
|
|
- docker run -d -p 8283:80 --restart=always --name jdt-tz-dev jdt-tz-dev
|
|
- cd ..
|
|
- rm -rf jdt-tz-dev
|
|
|
|
- name: 正式服-产物上传
|
|
pull: if-not-exists
|
|
image: appleboy/drone-scp
|
|
when:
|
|
branch:
|
|
- master
|
|
settings:
|
|
host:
|
|
from_secret: HOST_PROD
|
|
username:
|
|
from_secret: USER_PROD
|
|
password:
|
|
from_secret: PWD_PROD
|
|
port: 22
|
|
strip_components: 1
|
|
target: /www/builder
|
|
source:
|
|
- ./dist.tar
|
|
|
|
- name: 正式服-部署
|
|
pull: if-not-exists
|
|
image: appleboy/drone-ssh
|
|
when:
|
|
branch:
|
|
- master
|
|
settings:
|
|
host:
|
|
from_secret: HOST_PROD
|
|
username:
|
|
from_secret: USER_PROD
|
|
password:
|
|
from_secret: PWD_PROD
|
|
port: 22
|
|
script:
|
|
- cd /www/builder
|
|
- mkdir jdt-tz-prod
|
|
- tar -xzvf dist.tar -C /www/builder/jdt-tz-prod
|
|
- rm -rf dist.tar
|
|
- cd jdt-tz-prod
|
|
- docker build -t jdt-tz-prod .
|
|
- docker stop jdt-tz-prod
|
|
- docker rm jdt-tz-prod
|
|
- docker run -d -p 8283:80 --restart=always --name jdt-tz-prod jdt-tz-prod
|
|
- cd ..
|
|
- rm -rf jdt-tz-prod
|
|
|
|
- name: 企业微信通知
|
|
pull: if-not-exists
|
|
image: plugins/webhook
|
|
when:
|
|
branch:
|
|
- test
|
|
- master
|
|
status:
|
|
- success
|
|
- failure
|
|
settings:
|
|
urls: https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=a2065e21-4f92-4f5b-a432-2c0cd1d965b5
|
|
content_type: application/json
|
|
template: |
|
|
{
|
|
"msgtype": "markdown",
|
|
"markdown": {
|
|
"content": "{{#success build.status}}✅{{else}}❌{{/success}}**{{ repo.owner }}/{{ repo.name }}** (Build #{{build.number}})\n
|
|
>**构建结果**: {{ build.status }}
|
|
>**构建详情**: [点击查看]({{ build.link }})
|
|
>**代码分支**: {{ build.branch }}
|
|
>**提交标识**: {{ build.commit }}
|
|
>**提交发起**: {{ build.author }}
|
|
>**提交信息**: {{ build.message }}
|
|
"
|
|
}
|
|
}
|