一.简介
类似于监控报警,jenkins在配置持续集成后,job的执行将自动化,这就需要每次将构建结果通知到不同载体中进行查看。
像我所在的项目中,可能时不时就发布一个test环境版本,这时候对于测试人员是不友好的,页面正在进行点击测试,突然就没反应了,正在发版中。
就需要微信/钉钉等方式进行通知,不仅告诉开发也告诉测试和运维,当前有版本正在发布。
二.推送到gitlab
当Jenkins执行完构建后,我们还可以将构建结果推送到Gitlab的相应commit记录上,这样就可以将构建状态与commit关联起来。
1.进入Jenkins-》Configure System页,找到“Gitlab”选项,填入Gitlab地址。注意“Connection name”的值,后面会使用到
2.在Credentials下拉列表中选择”GitLab API token”后,单击”Test Connection”按钮,如果返回Success,就说明集成成功了
3.在pipeline的post部分,将构建结果更新到GitLab的相应commit记录上。除此之外,还需要在options部分加入gitLab Connection配置,同时传入”gitlab”参数。”gitlab” 就是上文中提醒读者注意的”Connection name”的值。
pipeline {
agent any
triggers {
gitlab(triggerOnPush: true, triggerOnMergeRequest: true, branchFilterType:'All',
secretToken:
"abcdefghijk1mnopqrstuvwxyz0123456789ABCDEF")
-
}
stages {
stage('build')
{
steps {
echo "hello world from gitlab trigger"
-
}
-
}
post {
failure {
updateGitlabCommitStatus name:
'build', state:
'failed'
-
}
success {
updateGitlabCommitStatus name:'build', state:
'success'
-
}
-
}
options {
gitLabConnection(
'gitlab')
-
}
-
}
}
需要手动触发一次构建,pipeline才会生效。当前做了一次成功构建、一次失败构建的实验,在Gitlab上项目的commit列表中,显示了最近两次commit的构建状态