消息通知

本文主要介绍流水线消息通知插件,主要用于流水线运行过程中消息通知、三方系统Webhook触发调用等。

进入流水线编辑页,添加任务,添加插件,支持添加钉钉机器人通知、邮件通知、Webhook通知、企业微信机器人通知、飞书机器人通知多种插件。image

钉钉机器人通知

  1. 前提条件:已有钉钉群,钉钉群已配置 Webhook 机器人(机器人配置参考)。

  2. 配置流水线任务通知插件:复制机器人 Webhook 地址,并配置到流水线钉钉通知插件中。

    1. 复制填写钉钉机器人 webhook 地址。

    2. 若钉钉机器人开启了“加签”,复制填写加签秘钥。

    3. 选择运行状态,当该流水线的任务进入选择状态后,会触发消息通知。

    4. 选择通知内容,所选的通知内容会自动添加至推送消息中。

    5. 支持填写自定义内容,支持引用环境变量,如${CI_COMMIT_TITLE},支持钉钉Markdown语法,查看帮助

    6. 支持@手机号,多个手机号(钉钉手机号)之间以,分隔,支持@all(输入all即可)。

    image

  3. 触发流水线运行,当流水线任务进入通知插件配置的运行状态时,触发消息通知,相应钉钉群即可收到消息通知。

    image

邮件通知

  1. 配置流水线任务通知插件:编辑流水线的任务,在任务插件中选择邮件通知插件,并填写邮件地址并选择运行时机。

    image

  2. 触发流水线运行,当流水线任务进入通知插件配置的运行状态时,收到通知邮件。

    image

Webhook通知

  1. 前提条件:Webhook 地址必须公网可访问。

  2. 配置流水线任务通知插件:编辑流水线的任务,在任务插件中选择 Webhook 通知,并填写 Webhook 地址并选择运行时机。

    image

  3. 触发流水线运行,当流水线任务进入通知插件配置的运行状态时,发起 Webhook 调用,Flow发送的 Webhook 一律为 Post 请求,任务状态信息的 Payload 示例如下。

    {
      "event": 'task',
      "action": 'status',
      "task": {
        "pipelineId": 183,
        "pipelineName": 'test pipeline',
        "stageName": '构建',
        "taskName": 'java构建',
        "buildNumber": 19,
        "statusCode": 'SUCCESS', // UNKOWN, RUNNING, WAITING, CANCELLING, CANCELED,FINISH,SUCCESS,FAIL,SKIP  
        "statusName": '运行成功',
        "pipelineUrl": 'https://rdc.aliyun.com/ec/pipelines/156539?build=19',
        "message": '[test pipeline]流水线阶段[构建]任务[java构建]运行成功'
      },
      "sources": [
        {
          "repo": 'git@gitlab:test.git',
          "branch": 'master',
          "commitId": 'xdfdfdff',
          "privousCommitId": 'ddddd',
        }
      ],
      "globalParams": [
        {"key": 'test', "value": 'test1'},
        {"key": 'test2', "value": 'test2'}
      ]
    }

企业微信机器人通知

  1. 前提条件:已有微信群,微信群已配置 Webhook 机器人。

    image

  2. 配置流水线任务通知插件:复制 Webhook 地址,并配置到流水线企业微信机器人通知插件中。

    1. 复制填写企业微信机器人 Webhook 地址。

    2. 选择运行状态,当该流水线的任务进入选择状态后,会触发消息通知。

    3. 选择通知内容,所选的通知内容会自动添加至推送消息中。

    4. 支持填写自定义内容,支持引用环境变量,如${CI_COMMIT_TITLE},支持钉钉Markdown语法,查看帮助

    5. 支持@user_id,多个手机号(企业微信 user_id)之间以,分隔,支持@all(输入all即可)。

      • 可以通过企业微信管理后台 -> 通讯录获取用户 user_id

    image

  3. 触发流水线运行,当流水线任务进入通知插件配置的运行状态时,触发消息通知,相应微信群即可收到消息通知。

    image

飞书机器人通知

  1. 前提条件:已有飞书群,飞书群已配置 Webhook 机器人(机器人配置参考)。

    image

  2. 配置流水线任务通知插件:复制 Webhook 地址,并配置到流水线飞书机器人通知插件中。

    1. 复制填写飞书机器人 Webhook 地址。

    2. 若飞书机器人开启了“加签”,复制填写加签秘钥。

    3. 选择运行状态,当该流水线的任务进入选择状态后,会触发消息通知。

    4. 选择通知内容,所选的通知内容会自动添加至推送消息中。

    5. 支持填写自定义内容,支持引用环境变量,如${CI_COMMIT_TITLE}。

    6. 支持@user_id,多个user_id(飞书user_id)之间以,分隔,支持@all(输入all即可)。

      • 可以通过飞书管理后台 -> 成员与部门获取用户 user_id。

    image

  3. 触发流水线运行,当流水线任务进入通知插件配置的运行状态时,触发消息通知,相应飞书群即可收到消息通知。

    image