詹金斯参数 从属性文件



我有 3 个 Jenkins 作业要串行运行。

  1. 运行 Ant 文件
  2. 运行另一个 ANT 文件
  3. 运行命令行

上述所有作业都使用在属性文件中设置的文件路径。
Ex Job 1 ,执行放置在文件路径位置
的 ANT 文件作业 2 ,执行放置在相同文件路径位置
的另一个文件作业 3,执行命令行在同一文件路径位置进行 SVN 更新

我需要从属性文件参数化所有三个构建中的文件路径。

谁能帮我提供可能的方法?

提前致谢

这个答案可能有点高。您可以使用 Jenkins Pipeline 作为此方法的代码,而不是使用 3 个自由式作业。

您可以创建 3 个阶段来执行这 3 个步骤。管道即代码支持从不同的文件类型(json、yaml 等(读取属性。

查找"EnvInject"插件。 这允许您将属性作为环境变量注入到构建中;这些任务在构建步骤边界中幸存下来。

如果属性文件已签入,则可以在开始执行生成步骤之前在"生成环境"部分中加载该文件。 如果属性文件是在生成序列期间生成的,则可以在创建属性文件的位置和使用属性文件的位置之间添加生成步骤。

设置后,如果属性文件包含"FOO=/path/to/folder",那么在配置 Jenkins 时,您将引用 $FOO 或 ${FOO}(例如,Ant 构建步骤可能指定 "${FOO}/build.xml";在 Windows 批处理脚本执行中,FOO 显示为环境变量,并由 %FOO% 引用(即"@echo Some_Useful_Piece_Of_Data> %FOO%\data.txt">

更多信息可以在这里找到:https://wiki.jenkins.io/display/JENKINS/EnvInject+Plugin

最新更新