詹金斯,指纹工件意味着什么?

时间:2015-06-22 16:36:41

标签: jenkins fingerprint artifacts

我的理解

据我所知,到目前为止,它是用于了解我的项目是否涉及未完成的构建任务的工件。

问题

我尝试阅读更多(在jenkins网站上也是如此),但我不确定我是否很容易理解他们现在所做的事情。我知道当我推广构建时,我可以指纹工件。那是什么意思呢?

2 个答案:

答案 0 :(得分:12)

  • 工件 - 在构建过程中生成的任何内容。
  • 指纹识别工件 - 记录所选工件的 MD5校验和

然后,您可以使用MD5校验和来跟踪特定工件返回到它来自的构建。

答案 1 :(得分:7)

添加@Slav答案,Fingerprinting帮助Jenkins跟踪 哪个版本的依赖项使用了哪个版本的文件

引用一个示例及其工作原理Jenkins Page

例如:

  • 假设您拥有的TOP项目依赖于MIDDLE项目,而BOTTOM项目依赖于BOTTOM项目。

  • 您正在处理TOP项目。 bottom.jar小组报告他们正在使用的BOTTOM #32导致空指针异常,您(BOTTOM小组的成员)认为您已在MIDDLE中修复此异常。

  • Jenkins可以告诉您哪些TOP版本和bottom.jar #32版本正在使用(或不使用)您的fingerprint

它是如何运作的?

文件的MD5只是md5sum校验和。 Jenkins维护着一个md5sum的数据库,对于每个$JENKINS_HOME/fingerprints ,Jenkins记录了哪些项目使用的构建。每次构建运行并且文档都是指纹识别时,都会更新此数据库。

为避免过多的磁盘使用,Jenkins不存储实际文件。相反,它只存储md5sum及其用法。这些文件可以在

中看到
{$taxonomy}_add_form_fields