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变量

  • 对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的归属者。
原文地址:https://www.cnblogs.com/honeybee/p/6525322.html