配置一个将自身重置为默认值的一次性值(复选框)?

Configure a one-time value(checkbox) that resets itself to default?

我正在编写一个 jenkins 插件并想要一个复选框,就我而言,这将允许我告诉 Jenkins 覆盖它正在执行的构建,但只能覆盖一次。

所以我有一个 'Overwrite' 复选框,我检查它并 运行 一个构建,比方说 #3。我做了我想要的覆盖操作,但在构建 #4 上它没有,复选框将再次取消选中。

是否可以通过代码更改作业配置中的设置?将其重置为默认值或类似的东西?

谢谢,迈克

结合使用 Jelly 和 Java 中的方法应该可以解决这个问题。假设您有复选框:

<f:checkbox name="start" checked="${it.start}"/>

然后 java 代码中包含的方法 public boolean getStart() 决定了布尔值 start 的值。由于您想在构建完成后编辑 start,我建议编写一个 class 来扩展 Jenkins 的 Publisher class.

回答 talex 问题: 我有一份每天使用一些默认设置运行的工作。 有时,我可能想用不同的设置手动触发它。很麻烦,进入配置页,更改设置,触发作业,完成后,返回配置更改回来。

谢谢大家,我用 "Parameterized Build" 完成了这个功能。

我想 SniperJoe 的解决方案也能正常工作,但这更简单、更快捷,而且我没有太多时间。