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: '[email protected]'
        }
    }        
}

验证。。。

相关推荐
plmm烟酒僧5 小时前
使用 Tmux 在断开SSH连接后,保持会话的生命周期
运维·ssh·tmux·分离会话
多多*7 小时前
Java设计模式 简单工厂模式 工厂方法模式 抽象工厂模式 模版工厂模式 模式对比
java·linux·运维·服务器·stm32·单片机·嵌入式硬件
南鸳6108 小时前
Linux常见操作命令(2)
linux·运维·服务器
Kaede69 小时前
怎么安装JSON服务器?JSON服务器最新安装教程
运维·服务器·json
西北大程序猿9 小时前
linux进程信号 ─── linux第27课
linux·运维·服务器·信号处理
inxunoffice10 小时前
批量给 PDF 添加或删除密码保护,支持设置打开密码、只读密码、限制复制和打印
运维·服务器·pdf
Brandon汐12 小时前
Linux中常用的文件管理命令
linux·运维·服务器
Vacancy空白13 小时前
【Ubuntu常用命令】
linux·运维·ubuntu·ssh
老天文学家了13 小时前
课表周视图数据【示例】
linux·运维·服务器
爪娃侠13 小时前
解决wsl2下CentOS 7 的 yum 仓库无法连接问题
linux·运维·centos