1 changed files with 219 additions and 0 deletions
@ -0,0 +1,219 @@ |
|||
--- |
|||
kind: pipeline |
|||
type: docker |
|||
name: development |
|||
|
|||
# 常量值 |
|||
constants: |
|||
- &DEVELOPMENT_HOST test.tall.wiki |
|||
- &DEVELOPMENT_CMD |
|||
- npm config set registry http://registry.npm.taobao.org |
|||
- npm i |
|||
- npm run build:test |
|||
- &DEVELOPMENT_SCP_TARGET /home/greenvalley |
|||
- &DEVELOPMENT_URL http://www.sxgreenvalley.com/ |
|||
- &DEVELOPMENT_PORT 22 |
|||
- &DEVELOPMENT_NODE_VERSION node:16 |
|||
- &DEVELOPMENT_BRANCH develop |
|||
- &DEVELOPMENT_SCP_SOURCE dist/* |
|||
- &SCP_STRIP_DIR_LEVEL 1 |
|||
- &NOTIFY_WECHATROBOT_WEBHOOK https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=428e5c5d-f992-4349-939d-9c99556e50b8 |
|||
|
|||
|
|||
# 挂载的主机卷,可以映射到docker容器中 |
|||
volumes: |
|||
# maven构建缓存(宿主机目录) |
|||
- name: ssh_key |
|||
host: |
|||
path: /root/.ssh/ |
|||
- name: cache |
|||
host: |
|||
path: /var/lib/cache |
|||
- name: data |
|||
host: |
|||
path: /var/lib/data |
|||
|
|||
steps: |
|||
- name: restore-cache |
|||
image: drillster/drone-volume-cache |
|||
volumes: |
|||
- name: cache |
|||
path: /cache |
|||
settings: |
|||
restore: true |
|||
mount: |
|||
- ./node_modules |
|||
|
|||
- name: build |
|||
image: *DEVELOPMENT_NODE_VERSION |
|||
pull: if-not-exists # default always |
|||
# volumes: |
|||
# - name: cache |
|||
# path: /root/.m2 |
|||
commands: *DEVELOPMENT_CMD |
|||
|
|||
- name: rebuild-cache |
|||
image: drillster/drone-volume-cache |
|||
volumes: |
|||
- name: cache |
|||
path: /cache |
|||
settings: |
|||
rebuild: true |
|||
mount: |
|||
- ./node_modules |
|||
|
|||
- name: deploy-scp |
|||
image: appleboy/drone-scp |
|||
pull: if-not-exists |
|||
volumes: |
|||
- name: ssh_key |
|||
path: /root/.ssh/ |
|||
settings: |
|||
host: *DEVELOPMENT_HOST |
|||
port: *DEVELOPMENT_PORT |
|||
username: root |
|||
key_path: /root/.ssh/id_rsa |
|||
rm: true # true则会删除目标目录重建 |
|||
target: *DEVELOPMENT_SCP_TARGET |
|||
source: *DEVELOPMENT_SCP_SOURCE |
|||
strip_components: 1 # 去除的目录层数,如果没有该选项,则拷贝过去是 target/xxx.jar,1代表去除target |
|||
|
|||
- name: notify-wechatwork |
|||
image: fifsky/drone-wechat-work |
|||
pull: if-not-exists |
|||
settings: |
|||
url: *NOTIFY_WECHATROBOT_WEBHOOK |
|||
msgtype: markdown |
|||
content: | |
|||
{{if eq .Status "success" }} |
|||
#### 🎉 ${DRONE_REPO} 测试环境构建成功 |
|||
> Branch: ${DRONE_BRANCH} |
|||
> Commit: [${DRONE_COMMIT_MESSAGE} ](${DRONE_COMMIT_LINK}) |
|||
> Author: ${DRONE_COMMIT_AUTHOR} |
|||
> PATH: http://www.sxgreenvalley.com/ |
|||
> [点击查看](http://www.sxgreenvalley.com/) |
|||
{{else}} |
|||
#### ❌ ${DRONE_REPO} 测试环境构建失败 |
|||
> Branch: ${DRONE_BRANCH} |
|||
> Commit: [${DRONE_COMMIT_MESSAGE} ](${DRONE_COMMIT_LINK}) |
|||
> Author: ${DRONE_COMMIT_AUTHOR} |
|||
> 请立即修复!!! |
|||
> [点击查看](http://www.sxgreenvalley.com/) |
|||
{{end}} |
|||
when: |
|||
status: |
|||
- failure |
|||
- success |
|||
|
|||
trigger: |
|||
branch: |
|||
- *DEVELOPMENT_BRANCH |
|||
|
|||
--- |
|||
kind: pipeline |
|||
type: docker |
|||
name: production |
|||
|
|||
# 常量值 |
|||
constants: |
|||
- &PRODUCTION_HOST www.sxgreenvalley.com |
|||
- &PRODUCTION_CMD |
|||
- npm config set registry http://registry.npm.taobao.org |
|||
- npm i |
|||
- npm run build |
|||
- &PRODUCTION_SCP_TARGET /home/greenvalley |
|||
- &PRODUCTION_BRANCH master |
|||
- &PRODUCTION_PORT 22 |
|||
- &PRODUCTION_NODE_VERSION node:16 |
|||
- &PRODUCTION_SCP_SOURCE dist/* |
|||
- &SCP_STRIP_DIR_LEVEL 1 |
|||
- &NOTIFY_WECHATROBOT_WEBHOOK https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=428e5c5d-f992-4349-939d-9c99556e50b8 |
|||
|
|||
# 挂载的主机卷,可以映射到docker容器中 |
|||
volumes: |
|||
# maven构建缓存(宿主机目录) |
|||
- name: ssh_key |
|||
host: |
|||
path: /root/.ssh/ |
|||
- name: cache |
|||
host: |
|||
path: /var/lib/cache |
|||
- name: data |
|||
host: |
|||
path: /var/lib/data |
|||
|
|||
steps: |
|||
- name: restore-cache |
|||
image: drillster/drone-volume-cache |
|||
volumes: |
|||
- name: cache |
|||
path: /cache |
|||
settings: |
|||
restore: true |
|||
mount: |
|||
- ./node_modules |
|||
|
|||
- name: build |
|||
image: *PRODUCTION_NODE_VERSION |
|||
pull: if-not-exists # default always |
|||
# volumes: |
|||
# - name: cache |
|||
# path: /root/.m2 |
|||
commands: *PRODUCTION_CMD |
|||
|
|||
- name: rebuild-cache |
|||
image: drillster/drone-volume-cache |
|||
volumes: |
|||
- name: cache |
|||
path: /cache |
|||
settings: |
|||
rebuild: true |
|||
mount: |
|||
- ./node_modules |
|||
|
|||
- name: deploy-scp |
|||
image: appleboy/drone-scp |
|||
pull: if-not-exists |
|||
volumes: |
|||
- name: ssh_key |
|||
path: /root/.ssh/ |
|||
settings: |
|||
host: *PRODUCTION_HOST |
|||
port: *PRODUCTION_PORT |
|||
username: root |
|||
key_path: /root/.ssh/id_rsa |
|||
rm: true # true则会删除目标目录重建 |
|||
target: *PRODUCTION_SCP_TARGET |
|||
source: *PRODUCTION_SCP_SOURCE |
|||
strip_components: 1 # 去除的目录层数,如果没有该选项,则拷贝过去是 target/xxx.jar,1代表去除target |
|||
|
|||
- name: notify-wechatwork |
|||
image: fifsky/drone-wechat-work |
|||
pull: if-not-exists |
|||
settings: |
|||
url: *NOTIFY_WECHATROBOT_WEBHOOK |
|||
msgtype: markdown |
|||
content: | |
|||
{{if eq .Status "success" }} |
|||
#### 🎉 ${DRONE_REPO} 生产环境构建成功 |
|||
> Branch: ${DRONE_BRANCH} |
|||
> Commit: [${DRONE_COMMIT_MESSAGE}](${DRONE_COMMIT_LINK}) |
|||
> Author: ${DRONE_COMMIT_AUTHOR} |
|||
> PATH: http://www.sxgreenvalley.com/ |
|||
> [点击查看](http://www.sxgreenvalley.com/) |
|||
{{else}} |
|||
#### ❌ ${DRONE_REPO} 生产环境构建失败 |
|||
> Branch: ${DRONE_BRANCH} |
|||
> Commit: [${DRONE_COMMIT_MESSAGE}](${DRONE_COMMIT_LINK}) |
|||
> Author: ${DRONE_COMMIT_AUTHOR} |
|||
> 请立即修复!!! |
|||
> [点击查看](http://www.sxgreenvalley.com/) |
|||
{{end}} |
|||
when: |
|||
status: |
|||
- failure |
|||
- success |
|||
|
|||
trigger: |
|||
branch: |
|||
- *PRODUCTION_BRANCH |
Loading…
Reference in new issue