如何知道哪些用户在Jenkinsfile中运行构建

时间:2016-07-18 14:18:07

标签: groovy jenkins-pipeline jenkinsfile

我正在尝试获取在Jenkinsfile中运行构建的用户的名称:

...
user = User.current().getFullName()
...

但得到" SYSTEM"。 如何获得正确的用户名?

詹金斯1.651.3

2 个答案:

答案 0 :(得分:5)

找到解决方案:

def build = currentBuild.rawBuild
def cause = build.getCause(hudson.model.Cause.UserIdCause.class)
def name = cause.getUserName()
echo "User: " + name

打印运行构建的用户名。

答案 1 :(得分:0)

如果遇到"脚本不被允许"这也有效;

Install the Build User Vars plugin found here

...然后包装你的步骤,如下所示:

steps {
    script {
        wrap([$class: 'BuildUser']) {

            var name = "${BUILD_USER}"
        }
    }
}