jenkins持续集成从0入门到实战【六】构建前后推送钉钉消息

简介: jenkins构建集成钉钉群消息推送

消息推送一般有如下几种:企业微信群消息、钉钉群消息、飞书群消息、邮箱提醒、短信提醒

前3种是企业中首选,3种基本差不多,这里我以钉钉群消息推送为例,首选你需要有一个钉钉群,可以自己拉3个人建一个,然后在群管理中加一个机器人,如下:

image.png

添加好后你会得到一个钉钉提供给你的URL链接,主要用来接收消息我的如下:

https://oapi.dingtalk.com/robot/send?
access_token=6cecd1365009eb54f234aca1ff6c5825f40fa10d2943338bd36b4def7ea8eef
//上述key已做混淆

我们先实现最基本的推送,组装如下的内容:

#!/bin/bash
#-*- coding:utf-8 -*-

Message='测试环境 gitee-test-password发布,所有接口受到影响,当前时间:2099-01-01'

curl 'https://oapi.dingtalk.com/robot/send?access_token=6cecd1365009eb54f234aca1ff6c5825f40fa10d2943338bd36b4def7ea8eef' \
   -H 'Content-Type: application/json' \
   -d "
  {\"msgtype\": \"text\", 
    \"text\": {
        \"content\": \"$Message\"
     }
  }"

实际上上述内容非常简单,利用shell的curl命令,远程调用该url,并传入对应的消息body体,body体为钉钉要求的格式,如果不懂钉钉消息推送的同学,可以点此处的链接直达

jenkins的任务中添加shell执行脚本,将内容复制到jenkins

image.png

点击构建,此时可以收到推送的消息

image.png

完善构造的推送信息

#!/bin/bash
#-*- coding:utf-8 -*-
tt = "$(date +%F-%T)"
Message='发布完成\n项目名称:${PROJECT_NAME}\n项目版本号:${version}\n操作类型:$type\n触发时间:$tt\n触发人员:$BUILD_USER'

curl 'https://oapi.dingtalk.com/robot/send?access_token=6cecd1365009eb54f234aca1ff6c5825f40fa10d2943338bd36b4def7ea8eef' \
   -H 'Content-Type: application/json' \
   -d "
  {\"msgtype\": \"text\", 
    \"text\": {
        \"content\": \"$Message\"
     }
  }"

image.png

安装后可拿到的用户信息

Variable Description 说明
BUILD_USER Full name (first name + last name) 全名
BUILD_USER_FIRST_NAME First name 名字
BUILD_USER_LAST_NAME Last name
BUILD_USER_ID Jenkins user ID jinkins 用户ID
BUILD_USER_EMAIL Email address 用户邮箱

在配置项目的时候一定要勾选Set jenkins user build variables

image.png

最终推送代码

#!/bin/bash
#-*- coding:utf-8 -*-

if [ $type = 1 ];then
    typeDesc="发布"
else
    typeDesc="回滚"
fi

pname='\n项目名称:'${JOB_NAME}
vv='\n项目版本号:'${version}
handler_type='\n操作类型:'${typeDesc}

build_time="\n触发时间:$(date +%F-%T)"
build_u='\n触发人员:'$BUILD_USER_ID
Message='发布完成'${pname}${vv}${handler_type}$build_time${build_u}

curl 'https://oapi.dingtalk.com/robot/send?access_token=6cecd1365009eb54f234aca1ff6c5825f40fa10d2943338bd36b4def7ea8eef' \
   -H 'Content-Type: application/json' \
   -d "
  {\"msgtype\": \"text\", 
    \"text\": {
        \"content\": \"$Message\"
     }
  }"

推送效果

image.png

君哥由于宽带变化,ip发生了调整,所以接下来的课程你所看到的IP跟之前的文章中的IP不一样

Jenkins服务器:192.168.2.6

应用服务器:192.168.2.8

目录
相关文章
|
11月前
|
云安全 人工智能 安全
Dify平台集成阿里云AI安全护栏,构建AI Runtime安全防线
阿里云 AI 安全护栏加入Dify平台,打造可信赖的 AI
4188 166
|
12月前
|
人工智能 Java API
Java与大模型集成实战:构建智能Java应用的新范式
随着大型语言模型(LLM)的API化,将其强大的自然语言处理能力集成到现有Java应用中已成为提升应用智能水平的关键路径。本文旨在为Java开发者提供一份实用的集成指南。我们将深入探讨如何使用Spring Boot 3框架,通过HTTP客户端与OpenAI GPT(或兼容API)进行高效、安全的交互。内容涵盖项目依赖配置、异步非阻塞的API调用、请求与响应的结构化处理、异常管理以及一些面向生产环境的最佳实践,并附带完整的代码示例,助您快速将AI能力融入Java生态。
1634 12
|
SQL 关系型数据库 Apache
从 Flink 到 Doris 的实时数据写入实践 —— 基于 Flink CDC 构建更实时高效的数据集成链路
本文将深入解析 Flink-Doris-Connector 三大典型场景中的设计与实现,并结合 Flink CDC 详细介绍了整库同步的解决方案,助力构建更加高效、稳定的实时数据处理体系。
4078 0
从 Flink 到 Doris 的实时数据写入实践 —— 基于 Flink CDC 构建更实时高效的数据集成链路
|
容灾 安全 关系型数据库
数据传输服务DTS:敏捷弹性构建企业数据容灾和集成
数据传输服务DTS提供全球覆盖、企业级跨境数据传输和智能化服务,助力企业敏捷构建数据容灾与集成。DTS支持35种数据源,实现全球化数据托管与安全传输,帮助企业快速出海并高效运营。瑶池数据库的全球容灾、多活及集成方案,结合DTS的Serverless和Insight功能,大幅提升数据传输效率与智能管理水平。特邀客户稿定分享了使用DTS加速全球业务布局的成功经验,展示DTS在数据分发、容灾多活等方面的优势。
659 0
|
人工智能 自然语言处理 安全
Python构建MCP服务器:从工具封装到AI集成的全流程实践
MCP协议为AI提供标准化工具调用接口,助力模型高效操作现实世界。
1910 1
|
jenkins Java Linux
Jenkins环境的部署及任务构建
以上就是Jenkins环境的部署及任务构建的全部内容。希望可以帮助你轻松上手Jenkins,让你的CI/CD之旅更加顺畅!
921 68
|
供应链 监控 搜索推荐
35页PPT|零售行业自助数据分析方法论:指标体系构建平台集成、会员与商品精细化运营实践
在零售行业环境剧变的背景下,传统“人找货”模式正被“货找人”取代。消费者需求日益个性化,购买路径多元化,企业亟需构建统一的指标体系,借助BI平台实现数据驱动的精细化运营。本文从指标体系构建、平台集成到会员与商品运营实践,系统梳理零售经营分析的方法论,助力企业实现敏捷决策与业务闭环。
35页PPT|零售行业自助数据分析方法论:指标体系构建平台集成、会员与商品精细化运营实践
|
jenkins 持续交付 开发工具
利用Dockerfile自主构建Jenkins镜像
希望这个过程能善用你的野马般想象,把自己置身于和计算机的卓尔不凡的对话中,让编程的过程充满趣味。
558 36
|
消息中间件 存储 数据采集
Apache InLong:构建10万亿级数据管道的全场景集成框架
Apache InLong(应龙)是一站式、全场景海量数据集成框架,支持数据接入、同步与订阅,具备自动、安全、可靠和高性能的数据传输能力。源自腾讯大数据团队,现为 Apache 顶级项目,广泛应用于广告、支付、社交等多个领域,助力企业构建高效数据分析与应用体系。
|
Ubuntu jenkins 机器人
在Jenkins上配置触发Ubuntu环境的图形用户界面(GUI)构建任务。
以上,这趟融合了技术与艺术的Jenkins配置之旅就告一段落了。记住,技术应当像艺术一样有趣和生动,这样才能激发出最大的创新和效率。
440 2

推荐镜像

更多