Browse Source

drone test

yanyuan
zhizhi wu 4 years ago
parent
commit
10b3666e5a
  1. 149
      .drone.yml

149
.drone.yml

@ -2,95 +2,93 @@ kind: pipeline
type: docker
name: default
# workspace,path可设定默认的拉取目录和每个step中docker镜像的chdir目录,通常不需要设置
# workspace官方说明:https://docs.drone.io/yaml/docker/#the-workspace-object
# 可在repo->setting中设置secret,使用from_secret引用密钥
# 常量值
constants:
- &SERVER_HOST test.tall.wiki
- &SERVER_PORT 30022
- &BUILD_CMDER
- ls
- mvn -version
- java -version
- mvn clean install -Dmaven.test.skip=true
- &SCP_TARGET /home/cloud/tall3
- &SCP_SOURCE target/signin-1.0-SNAPSHOT.jar
- &SCP_STRIP_DIR_LEVEL 1
- &SSH_CMDER
- cd /home/cloud/tall3
- pwd
- ./tall3.sh > /dev/null 2> /dev/null &
#- &NOTIFY_EMAIL weizezhao@ccsens.com
- &NOTIFY_WECHATROBOT_WEBHOOK https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=b2b93e9a-128b-41d4-8dce-12004e3f48b9
# 挂载的主机卷,可以映射到docker容器中
volumes:
# maven构建缓存(宿主机目录)
- name: ssh_key
host:
path: /root/.ssh/
- name: cache
host:
path: /var/lib/cache
- name: data
host:
path: /var/lib/data
# 执行触发器
trigger:
branch:
- yanyuan
- drone
# 构建阶段
steps:
- name: test
image: alpine
pull: if-not-exists
commands:
- echo hello
- echo world
- name: build-maven
image: maven:3.8.4-jdk-8
pull: if-not-exists # default always
volumes:
- name: cache
path: /root/.m2
commands:
- ls
- mvn -version
- java -version
- mvn clean install -Dmaven.test.skip=true
- name: cache
path: /root/.m2
commands: *BUILD_CMDER
- name: deploy-scp
image: appleboy/drone-scp
pull: if-not-exists
volumes:
- name: ssh_key
path: /root/.ssh/
settings:
host: *SERVER_HOST
port: *SERVER_PORT
username: root
key_path: /root/.ssh/id_rsa
rm: false # true则会删除目标目录重建
target: *SCP_TARGET
source: *SCP_SOURCE
strip_components: *SCP_STRIP_DIR_LEVEL # 去除的目录层数,如果没有该选项,则拷贝过去是 target/xxx.jar,1代表去除target
# - name: deploy-scp
# image: appleboy/drone-scp
# pull: if-not-exists
# volumes:
# - name: ssh_key
# path: /root/.ssh/
# settings:
# host: test.tall.wiki
# port: 22
# username: root
# key_path: /root/.ssh/id_rsa
# rm: false # true则会删除目标目录重建
# target: /home/iacd-platform-drone
# source: target/*.jar
# strip_components: 1 # 去除的目录层数,如果没有该选项,则拷贝过去是 target/xxx.jar,1代表去除target
#
# - name: run-ssh
# image: appleboy/drone-ssh
# pull: if-not-exists
# volumes:
# - name: ssh_key
# path: /root/.ssh/
# settings:
# settings:
# host: test.tall.wiki
# port: 22
# username: root
# key_path: /root/.ssh/id_rsa
# script_stop: true # stop script after first failure
# #command_timeout: 30s # 30seconds, the maximum amount of time for the execute commands, default is 10 minutes.
# script:
# - cd /home/iacd-platform-drone
# - ./re.sh > /dev/null 2> /dev/null &
- name: notify-email
image: drillster/drone-email
- name: run-ssh
image: appleboy/drone-ssh
pull: if-not-exists
volumes:
- name: ssh_key
path: /root/.ssh/
settings:
host: smtp.qiye.aliyun.com #例如 smtp.qq.com
port: 465 #例如QQ邮箱端口465
username: devops@ccsens.com #邮箱用户名
password: #邮箱密码
from_secret: orgsecret_password_mail_devops
from: devops@ccsens.com
recipients: weizezhao@ccsens.com,wuhuijuan@ccsens.com #收件人,多个用,隔开
when: #执行条件
status:
- success
- changed
- failure
settings:
host: *SERVER_HOST
port: *SERVER_PORT
username: root
key_path: /root/.ssh/id_rsa
script_stop: true # stop script after first failure
#command_timeout: 30s # 30seconds, the maximum amount of time for the execute commands, default is 10 minutes.
script: *SSH_CMDER
#- cd /home/cloud/tall3
#- ./re.sh > /dev/null 2> /dev/null &
- name: notify-wechatwork
image: fifsky/drone-wechat-work
pull: if-not-exists
settings:
url: https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=b2b93e9a-128b-41d4-8dce-12004e3f48b9
url: *NOTIFY_WECHATROBOT_WEBHOOK
msgtype: markdown
content: |
{{if eq .Status "success" }}
@ -110,6 +108,23 @@ steps:
- failure
- success
# - name: notify-email
# image: drillster/drone-email
# pull: if-not-exists
# settings:
# host: smtp.qiye.aliyun.com #例如 smtp.qq.com
# port: 465 #例如QQ邮箱端口465
# username: devops@ccsens.com #邮箱用户名
# password: #邮箱密码
# from_secret: orgsecret_password_mail_devops
# from: devops@ccsens.com
# recipients: *NOTIFY_EMAIL #收件人,多个用,隔开
# when: #执行条件
# status:
# - success
# - changed
# - failure
# - name: notify-dingtalk
# image: lddsb/drone-dingtalk-message
# environment:

Loading…
Cancel
Save