如何获取管道配置字段'脚本路径'在执行Jenkinsfile时?

时间:2018-04-25 07:04:56

标签: jenkins groovy jenkins-pipeline

如何获取管道配置字段的内容'脚本路径'来自Jenkinsfile的Jenkins(groovy)?

enter image description here

在这个例子中:我想得到字符串' Apps / mq-logger / Jenkinsfile'执行Jenkins文件时。

3 个答案:

答案 0 :(得分:1)

您可以通过这种方式获取脚本路径

ngOnInit() {
  this.mouseUpSubscription = Observable.fromEvent(window, "mouseup")
    .throttleTime(30) // throttle time in ms, optional
    .subscribe(res => {
      this.mouseUpHandler(res);
    });
}

ngOnDestroy() {
  this.mouseUpSubscription.unsubscribe();
}

请注意,您必须approve所有这些方法。

答案 1 :(得分:1)

如果希望在构建期间可以自定义此字符串,可以按如下方式创建参数化构建:

invert boolean

如果要通过$ {FileParameter}在管道脚本中访问它,如下所示:

def scriptPath = currentBuild.rawBuild.parent.definition.scriptPath

如果您不希望它可自定义,那么您可以使用global var。但是,如果你的目标是获取字符串console.log(res.assetData['productMedia'+i]); ,那么你必须使用lfe答案来使用:

felm

并批准必要的权限

答案 2 :(得分:0)

这是我的替代解决方案:

def currentAbsoluteDir = sh(returnStdout: true, script: "pwd")

if (currentAbsoluteDir) {
  currentAbsoluteDir = currentAbsoluteDir.replaceAll("\\n", "");
}