我正在尝试为几个 Jenkins Jobs 建立一些动态构建参数。我已经找到了Dynamic Parameter Plug-in和Extensible Choice Parameter plugin。两者都能够使用 groovy 脚本进行输入。
现在是棘手的部分。我想读取一个 project.property 文件(当前版本)并将其用作输入的默认值。问题是要访问工作区中的文件。只有“可扩展选择参数”插件可以选择为当前项目(AbstractProject)启用便利变量,我可以在其中获取工作区的 FilePath。请参阅以下脚本:
import hudson.FilePath;
propertiesFile = new FilePath(project.getWorkspace(),"project.properties");
props = new Properties();
props.load(propertiesFile.read());
return [props["version"]]
现在这个插件只向用户提供了一个列表(即使我可以让它可编辑),主要的缺点是,我需要将此脚本复制并粘贴到我想使用它的每个作业中(更不用说为所有这些更改某些内容)工作也会很痛苦)。
动态参数插件有一个很好的脚本集成,但我不知道如何获取当前项目。这些示例没有显示从实际工作区加载参数的任何内容,而只是从外部文件加载参数。
任何人都知道如何解决这些问题中的任何一个?