【发布时间】:2017-02-15 10:29:42
【问题描述】:
CI 系统: Jenkins 和 Jenkins Artifactory 插件,使用流水线作业
语言: Java,使用 Maven 构建
我们有一个设置,其中“发布版本”应该上传到临时存储库,并且应该能够从连续的 Jenkins 构建中被覆盖(例如,由于发布/x.x.x 分支中的错误修复)。
不应允许发布版本直接上传到发布存储库,但应允许将其提升到其中。当然,它们不应被促销或直接上传所覆盖。
在我们当前的设置中,我们已经成功地允许重新部署到暂存,并且不允许“重新提升”到发布。但仍可以将发布工件重新部署到发布存储库中。
Jenkins 用户的有效权限:
-
发布存储库
- 删除/覆盖: false
- 部署/缓存: true
- 注释: 是的
- 阅读: 是的
-
分期
- 删除/覆盖: true
- 部署/缓存: true
- 注释: 是的
- 阅读: 是的
那么,有没有办法:
- 不允许部署(和重新部署)到发布存储库
- 允许每个版本一个升级到发布存储库
- 禁止“重新升级”到发布存储库
- 允许部署(和重新部署)到临时存储库
最好只使用 Artifactory 权限设置。
【问题讨论】:
-
您知道从 Maven 的角度覆盖,即重新部署,具有不同内容的“发布版本”(具有相同的发布版本号)违反了 Maven 的理念,是吗?这就是快照版本的用途。即使它对您来说只是一个临时存储库。 Maven 对暂存存储库一无所知。它只知道快照和版本。
标签: jenkins artifactory