GitLab cicd 流水线添加企业微信机器人消息通知

GitLab cicd 流水线添加企业微信机器人消息通知

描述

公司部门需要我们在进行项目发布的时候,希望能通过企业微信机器人,来告诉测试,是发布还是项目出来了问题,因为项目没有做无感知处理,所以每次合并代码,cicd的时候就会重启,所以我们就想通过cicd的时候,发送企业机器人消息在群里告诉大家,项目正在发布。

创建机器人

首先第一步创建企业微信机器人,大家可以在公司自行拉一个群,然后创建一个企业机器人。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vqZam2b0-1632908593048)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20210929161605450.png)]

创建成功,webhook地址就是机器人请求地址,发送消息配置请看机器人配置说明。

curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=693axxx6-7aoc-4bc4-97a0-0ec2sifa5aaa' \
   -H 'Content-Type: application/json' \
   -d '
   {
        "msgtype": "text",
        "text": {
            "content": "hello world"
        }
   }'

机器人发送实例,可以使用 curl 发送测试一下,是否发送到自己的群了,如果有,那么就表示机器人创建成功了。

gitlab-ci.yml配置

找到当前项目的ci 配置文件,只要在当前需要的流水线节点,执行机器人脚本命令就能实现了。

  after_script:
    - 'curl ''https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxxxxxx'' -H ''Content-Type:application/json''  -d ''{"msgtype": "text","text": { "content": "DEV环境,系统正在发布!","mentioned_mobile_list":["xxxxxx","xxxxxx"]} }'''

比如,我这个是在 dev环境下,才会触发这个机器人脚本, mentioned_mobile_list指定发布艾特的人。

这里建议在多个版本下都执行这个命令 ,我们发布的版本。

stages:
  - build
  - package
  - dev
  - release
  - beta
  - production

配置完成后,我们提交代码进入流水线的时候,就会触发机器人脚本了。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uSdtmOwG-1632908593054)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20210929173640251.png)]

就表示成功了。

sh脚本发布机器人

编写sh脚本文件:

#!/bin/bash

function httpRequest()
{
cmd=`curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=e04aeef3-9111-4e2e-ba0e-91d558f86aa0' \
   -H 'Content-Type: application/json' \
   -d '
   {
        "msgtype": "text",
        "text": {
            "content": '$1',
			"mentioned_mobile_list":["15914045969"]
        }
   }'`
}
 
httpRequest "$1"

ed_mobile_list":[“15914045969”]
}
}'`
}

httpRequest “$1”


./xxx.sh “项目发布”。

如果这篇文章,有帮助到大家的,请给作者一个一键三连,谢谢
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值