【发布时间】:2020-07-30 10:23:51
【问题描述】:
假设我们有一个具有以下结构的 maven 项目:
projectAlfa (e.g. Snapshot)
- componentA
- componentB
- componentC
在人工制品部署到 Nexus 的中期(例如上传 ComponentC 时),Jenkins 作业由于网络问题而失败。
问题:
- 前两个组件(A 和 B)是否会上传到 nexus?
- 如果我请求 projectAlfa 的提交哈希,我会得到什么? projectAlfa 的组件是否会具有不同的状态/提交哈希(例如,组件 A 和 B 的工件具有不同的状态/提交哈希然后 C)?
我们的目标是获取快照工件的 git commit 哈希。我需要这些信息,因为它可以帮助我定义,基于哪个 git commit-hash 是在 nexus 上构建的上传快照工件。
【问题讨论】:
-
我猜你说的是 git commit 哈希?它们与 Maven 有什么关系?
-
目标是获取快照工件的 git 提交哈希。我需要这些信息,因为它可以帮助我定义,基于哪个 git commit-hash 是在 nexus 上构建的上传快照工件。我更新了问题
-
构建是否会以任何方式影响此哈希?我的意思是,我不明白失败的构建如何影响 git commit 哈希。
-
假设 master 分支中有两个提交:例如xxxxx1,xxxxx2。在提交 xxxxx1 之后,项目(以及所有组件)将成功构建并部署到 nexus 但是在提交 xxxxx2 之后,如果可能的话,会进行部分部署(参见问题 1)。因此,如果我得到部署在 nexus 上的所有人工制品的哈希提交,它们是否相同,这是问题 2?
-
部分部署是可能的。但是工件的哈希提交是什么?我只知道 git 存储库的哈希提交。我的意思是,如果您尝试从 git 提交构建三个工件,两个通过,一个不通过,这不好。但是您如何“看到”已部署工件中的哈希提交?
标签: maven jenkins commit nexus