在流水线中使用curl首先需要安装curl这个库,当然也可以自己构建一个镜像,直接将curl
安装进去使用
在流水线中使用curl的最大困难是 关于冒号 :
以及 引号"
的转义。试了很久总是搞定了。
由于使用的是钉钉机器人,所以会需要一个access_token
请求地址直接复制群管理中 机器人配置
主要参数
参数传输类型 Content-type: application/json
携带的json参数 {msgtype: 'text', text: {content: 'my msg 123' }}
msgtype
有多种类型, 支持md
其中的content
必须包含关键词
单独拿出来看一下
'curl -H ''Content-type: application/json'' -d ''{"msgtype":"text", "text": {"content":"mymsg1234"}}'' https://oapi.dingtalk.com/robot/send?access_token=7858801c485b6357042fd3xxxxx'
job代码
deploy_qa_job:
image: ubuntu
stage: deploy
script:
- echo 'deploy qa '
- 'which curl || (apt-get update && apt-get install -y curl telnet )'
after_script:
- 'curl -H ''Content-type: application/json'' -d ''{"msgtype":"text", "text": {"content":"mymsg1234"}}'' https://oapi.dingtalk.com/robot/send?access_token=7858801c485b6357042fd3'
有关在yaml 冒号, 使用变量
https://docs.gitlab.com/ee/ci/yaml/script.html#troubleshooting