查看原文
其他

Jenkins Pipeline 使用钉钉通知

直接上pipeline脚本:


// vars/buildAndDeploy.groovy
def call(Map config) {

    node {
......
        try {
......
       } finally {
      wrap([$class: 'BuildUser']) {
      def user = env.BUILD_USER_ID
        if (currentBuild.result == 'SUCCESS') {
          dingtalk (
              robot: "${dingMap.accessToken}",
              type: 'ACTION_CARD',
              title: "${env.JOB_NAME} ${currentBuild.displayName}构建成功",
              text: [
                "### [${env.JOB_NAME}](${env.JOB_URL}) ",
                '---',
                "- 任务:[${currentBuild.displayName}](${env.BUILD_URL})",
                '- 状态:<font color=#00CD00 >成功</font>',
                "- 持续时间:${currentBuild.durationString}".split("and counting")[0],
                "- 执行人:${user}",
              ],
            )
        } else if (currentBuild.result == 'FAILURE') {
          dingtalk (
              robot: "${dingMap.accessToken}",
              type: 'ACTION_CARD',
              title: "${env.JOB_NAME} ${currentBuild.displayName}构建失败",
              text: [
                "### [${env.JOB_NAME}](${env.JOB_URL}) ",
                '---',
                "- 任务:[${currentBuild.displayName}](${env.BUILD_URL})",
                '- 状态:<font color=#EE0000 >失败</font>',
                "- 持续时间:${currentBuild.durationString}".split("and counting")[0],
                "- 执行人:${user}",
              ],
            )
        } else {
          echo "${env.JOB_NAME} ${currentBuild.displayName} ${currentBuild.result}"
        }
      }
      withEnv(["QA_EMAIL=${config.QA_EMAIL}"]) {
        emailext body: '''${DEFAULT_CONTENT}''', subject: '''${DEFAULT_SUBJECT}''', to: "$QA_EMAIL"
      }
        }
    }
}


效果如下:

老铁,试试吧~


- END -


推荐阅读 

漫画解释如何用 Kubernetes 实现 CI/CD

从 0 到 1:中小团队的监控告警成长之路

学习Docker,看这一篇就够了!(收藏版)

K8s为啥要启用bridge-nf-call-iptables内核参数?

3 种方法限制 K8s Pod 磁盘容量使用

DevOps CI/CD流程方案

Kubernetes 故障排查流程图

正确姿势配置 Pod 的 CPU和内存

Kubernetes 的这些原理,你一定要了解

Kubernetes YAML 学习,提升编写能力

图解 Kubernetes 核心资源工作原理

建设Kubernetes生产环境的16条建议

60道常见的 Kubernetes 面试题总结



订阅,一起成长

K8s生态圈






点在看,K8s一年不出问

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存