首页 文章

Jenkins groovy管道 - 为另一个管道调用构建步骤

提问于
浏览
2

编辑:

根据Andrew Bayer的说法,你不应该向其他人注入声明性管道 . 将来可能会支持它,但可能根本不会 .


我目前正在尝试在管道中启动管道,但我想知道我需要做些什么来使其工作 . jenkins网页上的文档说如果新作业或管道与第一个文件夹在同一个文件夹中,您可以从直接名称或绝对路径调用它 . 我已经尝试了所有不同的方式,目前我正在尝试一个文件的绝对路径,我刚刚检查过一秒钟,但它说它不存在 .

我想知道将不同管道连接在一起的正确方法是什么 .

steps {
    echo "hello ${env.WORKSPACE}"
    sh "ls ${env.WORKSPACE}"
    sh "ls ${env.WORKSPACE}/jenkins"
    build(job: "${env.WORKSPACE}/jenkins/css-core-pipeline", parameters: [[$class: 'StringParameterValue', name: 'param1', value: "$pass1" ]])
  }

[Pipeline] echo hello / home / jenkins / workspace / hellopipeline [Pipeline] sh [hellopipeline]运行shell脚本 . ls / home / jenkins / workspace / hellopipeline README.md . . . jenkins [Pipeline] sh [hellopipeline]运行shell脚本 . ls / home / jenkins / workspace / hellopipeline / jenkins css-ce-pipeline css-core-pipeline css-dev-pipeline css-prod-pipeline manual.md . . . 错误:找不到名为/ home / jenkins / workspace / hellopipeline / jenkins / css-core-pipeline的项目完成:FAILURE

1 回答

  • 4

    没有任何前缀的作业名就足够了 .

    build(job: "css-core-pipeline", parameters: [[$class: 'StringParameterValue', name: 'param1', value: "$pass1" ]])
    

    如果这不起作用,您可以使用代码段生成器获取有效的步骤片段 . 打开管道配置 - >管道语法 - >代码段生成器 - >选择构建步骤 - >填充字段(将有一个作业名称的自动完成)

相关问题