如何向jenkins添加条件参数

如何向jenkins添加条件参数,jenkins,continuous-integration,jenkins-plugins,Jenkins,Continuous Integration,Jenkins Plugins,我想给jenkins作业添加一个条件参数。换句话说,我想添加一个布尔参数,当选中时,另一个字符串参数会在用户构建作业时出现。如果未选中,则在用户构建作业时,字符串参数不应显示为参数(类似于jenkins的条件步骤,但基于参数)。他们的插件就是这样的吗 在下图中,如果未选中repo_update:如果用户正在生成作业,则不应向用户显示Clean和changeset。 您可能需要查看 将父项和子项设置为两个单独的作业。这对我来说更符合逻辑 在构建部分,首先运行父作业 根据条件,子作业可以运行 您只能

我想给jenkins作业添加一个条件参数。换句话说,我想添加一个布尔参数,当选中时,另一个字符串参数会在用户构建作业时出现。如果未选中,则在用户构建作业时,字符串参数不应显示为参数(类似于jenkins的条件步骤,但基于参数)。他们的插件就是这样的吗

在下图中,如果未选中repo_update:如果用户正在生成作业,则不应向用户显示Clean和changeset。

您可能需要查看

将父项和子项设置为两个单独的作业。这对我来说更符合逻辑

在构建部分,首先运行父作业

根据条件,子作业可以运行

您只能在子作业中添加子参数,因此配置父作业的人员将永远不会看到子参数


这对我来说就像是一个更干净的实现。

我建议只使用一个字符串参数,它默认为一个空字符串,触发默认构建,并且仅在非空问题是时触发不同的构建链,而不仅仅是一个字符串参数。它们是多个参数。一个字符串和两个布尔变量。我可以从这些构造一个布尔条件吗?当然这只是一个shell问题。我编辑了我的答案,以展示你如何做到这一点。但是如果子作业没有触发,你为什么担心父作业的参数?你能看看我发布的更新吗?…我详细说明了我想做什么。。。谢谢:)是的,但我想说的是,如果条件为false,那么参数就没有意义,因为它们从未被使用过。我觉得你想得太多了。如果父作业由于布尔参数(此处称为TRIGGER_child_job)而未运行子作业,则无论如何都不会使用子参数的值。如果我不理解这个问题,发布一个更详细的问题,包括父作业中的参数,将为子作业指定什么,等等。是的,你是正确的,我理解从逻辑角度看这不会有什么不同。这只是从用户体验的角度来看,如果用户没有检查是否从父作业运行子作业,那么子作业的参数显示给用户是没有意义的。