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'
        }
    }        
}

验证。。。

相关推荐
拾心217 分钟前
【运维进阶】Ansible 角色管理
运维·ansible
phoenix098133 分钟前
ansible部署lnmp-allinone
linux·运维·ansible
phoenix09812 小时前
Linux入门DAY27
linux·运维·服务器
egoist20235 小时前
【Linux仓库】进程创建与进程终止【进程·柒】
linux·运维·服务器·进程创建·写时拷贝·进程终止
华纳云IDC服务商8 小时前
服务器Linux防火墙怎样实现访问控制
linux·运维·服务器
胡桃不是夹子8 小时前
linux系统装google chrome,amd64
linux·运维·chrome
睡觉z13 小时前
Jenkins持续集成系统
运维·ci/cd·jenkins
Wy_编程16 小时前
Linux文件相关命令
linux·运维
Viking_bird17 小时前
centos 7.5 + Hadoop 3.2.4 集群搭建
linux·运维·服务器·hadoop·centos
黑客影儿18 小时前
Kali Linux 环境中的系统配置文件与用户配置文件大全
linux·运维·程序人生·安全·网络安全·系统安全·学习方法