jenkins - 如何链接手动触发的下游作业,同时传递参数?

标签 jenkins jenkins-plugins

我正在使用 Jenkins 创建构建管道,并且需要在管道中触发部署步骤。这意味着一个手动过程(构建自动发生,定时,然后在部署阶段停止,等待手动授权)。

我还需要使用上一步中的参数触发部署步骤。

因此,使用“参数化插件”,我可以在作业之间传递参数。我可以触发自动或手动触发的下游作业(不确定这是标准功能,还是某些插件添加了手动构建)。

但是,我找不到任何方法来触发手动参数化作业。

有谁知道这样做的方法?我可以使用其他插件吗?

我需要参数的原因是我创建了一个通用部署作业,并且需要传入模块名称和 maven 版本来部署。我可以为每个模块创建特定的部署作业,但这会非常痛苦。

我也一直在考虑以下内容,但这似乎是一个杂项:

  • 自动化作业执行构建,触发“部署触发器”构建,传递参数。
  • “部署触发器”将这些参数写入文件系统上的文件(构建步骤 - shell 执行),并手动触发实际部署作业
  • 部署作业(必须使用“部署触发器”作业中的 WORKSPACE)从文件系统读取参数(使用 EnvInject 插件)。

  • 这种方法存在各种问题
  • 我只是不喜欢它。
  • 有一个中间作业只是为了传递参数。这使 Jenkins 工作区变得困惑
  • 由于构建是在同一个 WORKSPACE 上执行的,所以对我来说似乎很脆弱(尽管可行!)
  • 最佳答案

    build-pipeline-plugin 的当前生产版本(1.4.2)允许它 - 使用参数指定手动下游作业,该参数显示在管道上并且可以从那里开始。
    老版本做不到。

    关于jenkins - 如何链接手动触发的下游作业,同时传递参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11983796/

    相关文章:

    git - 无法在 jenkins 中过滤 github webhook 触发器

    plugins - 创建一个在同一个 View 中创建一个新作业的作业 DSL

    Jenkins - 如何暂停排队作业的运行并让新构建优先

    java - Jenkins 和 JIRA Cloud 之间的集成

    jenkins - rsync 替代 Jenkins Copy Artifacts 插件?

    jenkins - 如何使用 curl 更新 Jenkins Job config.xml 文件

    angular - 由于 chrome 驱动程序,使用 Protractor 的端到端测试失败

    git - Jenkins "git command not found"

    git - 如果对存储库有新的提交,则构建管道作业

    java - Jenkins CI 插件在 Slave 上运行