【问题标题】:How to conditionally hide parameter?如何有条件地隐藏参数?
【发布时间】:2019-02-08 21:20:30
【问题描述】:

我正在尝试使用参数创建 jenkins 管道作业。我希望参数有条件地显示。条件取决于对先前参数的选择。

我已经尝试过主动选择插件。它允许我有条件地选择参数的值。我希望整个参数有条件地出现在 UI 中。

jenkins 管道文件可以吗?

【问题讨论】:

    标签: jenkins jenkins-pipeline jenkins-plugins


    【解决方案1】:

    我不相信这是可能的。在声明性/脚本化管道的情况下,参数是“后处理”的,这意味着您看到的参数基本上是在之前的“运行/构建”中评估的。这就是为什么在“使用参数构建”可用之前进行构建的原因。

    作为替代方案,(如果您使用脚本/声明式管道)您可以使用输入步骤并使其有条件地触发。

    if ( x == true ) {
        def userInput = input(
           id: 'userInput', message: 'Let\'s promote?', parameters: [
           [$class: 'TextParameterDefinition', defaultValue: 'uat', description: 'Environment', name: 'env'],
           [$class: 'TextParameterDefinition', defaultValue: 'uat1', description: 'Target', name: 'target']
        ])
    }
    

    示例来自: https://support.cloudbees.com/hc/en-us/articles/204986450-Pipeline-How-to-manage-user-inputs

    【讨论】:

    • 它可以帮助我解决这种情况吗:stackoverflow.com/questions/60248264/…
    • @arielma 我不相信你想要什么是可能的,詹金斯参数是后处理的。这意味着您基本上看到了从 LAST 构建评估的参数。如果没有实际运行构建,就没有执行过程来评估任何内容。
    • 詹金斯蓝海有没有选项可以动态隐藏参数
    • 我不知道对不起
    猜你喜欢
    • 2022-09-23
    • 1970-01-01
    • 2013-01-08
    • 2020-03-02
    • 1970-01-01
    • 1970-01-01
    • 2021-12-05
    • 2017-01-14
    • 1970-01-01
    相关资源
    最近更新 更多