Jenkins Groovy脚本获取登录的用户名

时间:2020-06-03 11:23:31

标签: jenkins groovy jenkins-pipeline jenkins-groovy

在构建jenkins作业之前,我对如何检索已登录用户(如果可能的话,用户名)感到有些困惑。

我想根据哪个用户希望开始工作将不同的数组传递到choiceParam中。因此,我需要找到一种方法来检索用户名。

我正在使用Groovy脚本创建单独的Jenkins文件,但是Jenkins作业本身正在使用参数。为此,我有一个单独的作业文件,其中包含要选择的参数,然后将其推送到Jenkinsfile,以继续其管道。

不幸的是,我只能找到在构建工作时发现用户的方法,不幸的是,我无法将逻辑移到Jenkinsfile中。

例如

def user = ?!?
def array = []
if (user == 'tedcrilly') {
    ...
    array.add("thingToAddBasedOnUser")
    ...
}

pipelineJob("jobName") {
    parameters {
        choiceParam('ARRAY', array, 'Array to test')
    }
    definition {
        cpsScm {
            scm {
                git {
                    remote {
                        url "[redacted]"
                        credentials("[redacted]")
                    }
                    branch('master')

                    extensions {
                        wipeWorkspace()
                    }
                }
            }
            scriptPath("Jenkinsfile.groovy")
        }
    }
}

非常感谢

0 个答案:

没有答案