gpt4 book ai didi

bamboo - 将快照从 Bamboo 部署到 Artifactory 时遇到问题

转载 作者:行者123 更新时间:2023-12-03 17:59:31 25 4
gpt4 key购买 nike

我想将快照构建从 Bamboo 部署到 Artifactory。我的存储库的 Handle Snapshots选项被选中,它是 Maven Snapshot Version Behavior设置为 Unique .存储库的布局是 gradle-default .

我的目标是制定一个在类似于以下位置部署 Artifactory 的构建计划:

repo-local:com.company/project/1.0-SNAPSHOT/project-1.0-20120612.101600.txt

在 Bamboo 我有一个 Artifactory Generic Deploy Task ,为 Edit Published Artifacts配置如下 field :
project-1.0-SNAPSHOT.txt=>com.company/project/1.0-SNAPSHOT

然而,Artifactory 拒绝了我的构建 Artifactory ,说 The repository 'repo-local' rejected the artifact 'repo-local:com.company/project/1.0-SNAPSHOT/project-1.0-SNAPSHOT.txt' due to its snapshot/release handling policy.
如何让 Artifactory 接受神器并自动替换 SNAPSHOT在文件名中带有时间戳?

最佳答案

您的问题很可能是您部署到的路径不被您选择的布局(gradle-default)视为有效的集成修订。
gradle-default 布局需要集成修订,如:

org/module/1.0-12345678912345/module-1.0-12345678912345.jar

也就是说,在基本修订之后附加一个 14 位长的时间戳;
虽然您的路径包含 SNAPSHOT 而不是 14 位长的时间戳。

如果你想有这样的模式:
com.company/project/1.0-SNAPSHOT/project-1.0-20120612.101600.txt

您必须自定义布局以接受 -SNAPSHOT 作为文件夹集成修订并修改您的 Artifactory 以包含时间戳作为文件集成修订。

我猜你的假设是 Artifactory 会将非唯一的集成修订版转换为唯一的集成修订版;只有当存储库设置为默认的 Maven 布局并且 Artifactory 符合 Maven 的布局时,Artifactory 才会执行此转换。

这是因为虽然 Maven 实际上已经定义了集成修订的标准,但 Gradle 没有这样的标准;所以基本上,Gradle 修订版几乎可以是任何东西。

最重要的是,Gradle 世界中并不真正存在唯一和非唯一集成修订的概念,它实际上没有任何内置功能来支持这些功能;因此,当您在 Gradle 中看到 Mavenized 路径时,它基本上只是在模仿模式。

关于bamboo - 将快照从 Bamboo 部署到 Artifactory 时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10998653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com