我在Jenkins中有一个 Build
作业,它检查一个特定的Git提交并将其打包以作为工件进行部署 .
有一个后来的 Deployment
作业,它接受构建的工件并实际部署代码 . 它还对包含部署脚本的特定目录进行稀疏的Git检出 . 成功完成后,我们编写一个Git标记 .
问题是标记被写入 master
的 HEAD
,而不是写入用于原始上游构建的提交的哈希 . ( master
是作业配置中定义的分支 . )
有没有办法获取上游SCM信息,如果它没有直接通过参数化触发器传递?我可以看到Jenkins在构建目录中生成的 build.xml
文件中列出的提交;有没有办法从下游工作中读取这些信息?
我意识到它是手动触发的_203848 . 我们确实有一个定义 UPSTREAM_BUILD
和 UPSTREAM_PROJECT
的选择器 .
1 回答
如果您使用Copy Artifact插件,则可以在
Build
作业期间使用提交哈希编写一个文件,并在Deployment
作业期间将其读回: