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

验证。。。

相关推荐
biass44 分钟前
jenkins角色权限
运维·jenkins
tomorrow.hello1 小时前
Jenkins Pipeline(二)
运维·jenkins
做一个AC梦1 小时前
Docker安装失败:Docker Desktop installation failed
运维·docker·容器
Shan12051 小时前
浅谈Docker Kicks in的应用
运维·docker·容器
Tipriest_4 小时前
Ubuntu常用的软件格式deb, rpm, dmg, AppImage等打包及使用方法
linux·运维·ubuntu
真智AI4 小时前
利用 Claude Opus 4 自动化 GitHub 工作流:从安装到实战详解
运维·自动化·github
胡斌附体5 小时前
linux测试端口是否可被外部访问
linux·运维·服务器·python·测试·端口测试·临时服务器
愚润求学5 小时前
【Linux】自旋锁和读写锁
linux·运维
大锦终5 小时前
【Linux】常用基本指令
linux·运维·服务器·centos
知北游天5 小时前
Linux:多线程---深入互斥&&浅谈同步
linux·运维·服务器