Jenkins获取运行job的用户名
1. Jenkins获取运行job的用户名
需要安装user build vars plugin 插件,然后就可以取到$BUILD_USER_ID变量。
user build vars plugin下载地址:
https://wiki.jenkins-ci.org/display/JENKINS/Build+User+Vars+Plugin
可以使用的用户变量:
Property | Default |
---|---|
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."
- 对jenkins依赖hive启动脚本添加username和jobname参数:就可以使通过hive执行的任务可以上传该参数。
HIVE_OPTS="$HIVE_OPTS --hiveconf scheduler.job.submit.username=${BUILD_USER_ID} --hiveconf scheduler.job.submit.jobname=${JOB_NAME} --hiveconf hive.aux.jars.path=${AUX_PARAM}"
- 缺陷:当job是定时执行的时候,获取不到jenkins登录用户名。
解决方案:可以通过分析job的历史任务,得到没个job的首次执行登录用户名,和末次执行的登录用户名,进行job的归属者。
作者:
丹江湖畔养蜂子的赵大爹
出处:http://www.cnblogs.com/honeybee/
关于作者:丹江湖畔养蜂子的赵大爹
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接