Jenkins 不允许重新部署到发布存储库
CI系统:Jenkins与Jenkins人工插件,使用管道作业Jenkins 不允许重新部署到发布存储库,jenkins,artifactory,Jenkins,Artifactory,CI系统:Jenkins与Jenkins人工插件,使用管道作业 语言:Java,用Maven构建 我们有一个设置,其中“发布版本”应该上载到一个暂存存储库,并且应该能够从连续的Jenkins构建中被覆盖(例如,由于发布/x.x.x分支中的错误修复)。 不应允许将发布版本直接上载到发布存储库中,但应允许将其升级到发布存储库中。当然,无论是升级还是直接上传,都不应该允许覆盖它们 在我们当前的设置中,我们成功地允许重新部署到暂存,并且不允许对发布进行“重新升级”。但是发布工件仍然可以重新部署到发布存储
语言:Java,用Maven构建 我们有一个设置,其中“发布版本”应该上载到一个暂存存储库,并且应该能够从连续的Jenkins构建中被覆盖(例如,由于发布/x.x.x分支中的错误修复)。
不应允许将发布版本直接上载到发布存储库中,但应允许将其升级到发布存储库中。当然,无论是升级还是直接上传,都不应该允许覆盖它们 在我们当前的设置中,我们成功地允许重新部署到暂存,并且不允许对发布进行“重新升级”。但是发布工件仍然可以重新部署到发布存储库中。 Jenkins用户的有效权限:
- 发布存储库
- 删除/覆盖:false
- 部署/缓存:true
- 注释:正确
- 读:对
- 登台
- 删除/覆盖:true
- 部署/缓存:true
- 注释:正确
- 读:对
最好只使用Artifactory权限设置。看来您的思路是正确的。正如您所提到的,您可以通过撤销“删除/覆盖”权限来“阻止”重新部署(覆盖)。针对特定用户,或针对您案例中的所有用户。要回答您的特定用例,您需要做的是:
使用Artifactory权限目标应该可以做到这一点。从Maven的角度来看,覆盖,即重新剥离不同内容的“发布版本”(具有相同的发布版本号)是违反Maven的理念的,是吗?这就是snaphot版本的用途。即使它对您来说只是一个临时存储库。Maven对暂存存储库一无所知。它只知道快照和发布。