如何知道哪个用户 运行 在 Jenkinsfile 中构建
How to know which user run build in Jenkinsfile
我正在尝试获取 运行 在 Jenkinsfile 中构建的用户的名称:
...
user = User.current().getFullName()
...
但得到"SYSTEM"。
如何获得正确的用户名?
詹金斯 1.651.3
找到解决方案:
def build = currentBuild.rawBuild
def cause = build.getCause(hudson.model.Cause.UserIdCause.class)
def name = cause.getUserName()
echo "User: " + name
打印 运行 构建的用户名。
如果遇到"Scripts not allowed"这个也可以;
Install the Build User Vars plugin found here
...然后结束你的步骤,像这样:
steps {
script {
wrap([$class: 'BuildUser']) {
var name = "${BUILD_USER}"
}
}
}
我正在尝试获取 运行 在 Jenkinsfile 中构建的用户的名称:
...
user = User.current().getFullName()
...
但得到"SYSTEM"。 如何获得正确的用户名?
詹金斯 1.651.3
找到解决方案:
def build = currentBuild.rawBuild
def cause = build.getCause(hudson.model.Cause.UserIdCause.class)
def name = cause.getUserName()
echo "User: " + name
打印 运行 构建的用户名。
如果遇到"Scripts not allowed"这个也可以;
Install the Build User Vars plugin found here
...然后结束你的步骤,像这样:
steps {
script {
wrap([$class: 'BuildUser']) {
var name = "${BUILD_USER}"
}
}
}