Jenkins-获取build用户信息

需求: 代码发布后,将发布结果发送至相关运维同学邮箱,需要获取发布人的信息。jenkins默认是没有相关内置变量的。 需要通过插件的方式进行解决:

插件: user build vars plugin

部署后,可使用的变量:

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
BUILD_USER_EMAIL Email address

在jenkins任务中使用构建变量:注意需要勾选 "Set jenkins user build variables."

缺陷:1). 当job是定时执行的时候,获取不到jenkins登录用户名。

2). 使用pipeline构建时, 不支持直接调用相关变量。

pipeline解决方式:

使用wrap对相关方法进行封装:

复制代码
post {
    success{
        wrap([$class: 'BuildUser']) {
            emailext body:"${BUILD_USER} ${JOB_NAME} (${BUILD_NUMBER}) run success\n请及时前往${env.BUILD_URL}进行查看" , subject: "PineLine '${JOB_NAME}' (${BUILD_NUMBER}) result", to: 'xiaoxiang@mail.xxx-inc.com'
        }
    }        
}

验证。。。

相关推荐
芝麻开门-新起点2 小时前
数据脱敏与自动化技术融合:大规模GIS数据安全高效处理方案
运维·自动化
行走正道2 小时前
【探索实战】跨云应用分发自动化实战:基于Kurator的统一交付体系深度解析
运维·自动化·wpf·kurator·跨云分发
杨云龙UP3 小时前
SQL Server 备份异地同步 + 清理脚本
运维·服务器·数据库·sql·mysql·sqlserver
q***48413 小时前
Nginx中$http_host、$host、$proxy_host的区别
运维·nginx·http
_lst_4 小时前
linux进程状态
linux·运维·服务器
霍格沃兹测试开发学社-小明4 小时前
AI来袭:自动化测试在智能实战中的华丽转身
运维·人工智能·python·测试工具·开源
MaisieKim_5 小时前
2025年企业文档管理系统全面评测报告
运维·数据库
zzzsde6 小时前
【Linux】基础开发工具(3):编译器
linux·运维·服务器
..空空的人7 小时前
C++基于websocket的多用户网页五子棋 ---- 整合封装服务器模块设计实现
运维·服务器
愚戏师7 小时前
Python3 多线程
linux·运维·服务器·python