覆盖Artifactory工件(和历史)?

时间:2017-01-25 22:47:39

标签: jenkins artifactory

我目前正试图了解Artifactory并尝试将“通用”工件部署到一个简单的仓库中。 (我正在使用网络界面以及Upload File Spec上的最小Jenkins上传。)

我看到的是,我可以多次使用相同的名称/路径部署工件,例如我的http://localhost:8081/artifactory/martin-repo/martin/bla/foo.zip中有工件martin-repo,我可以根据需要随意部署它,它只会覆盖

它只会列出一个

  
      
  • 创建时间:25-01-17 23:20:09 +01:00
  •   
  • 上次修改时间:25-01-17 23:32:33   01:00
  •   

表示http://localhost:8081/artifactory/webapp/#/artifacts/browse/tree/General/martin-repo/.../...

下的工件

问题 -

  • Artifactory中是否存在某种工件的不同“版本”的某种历史记录?

  • 或者,只要部署了同一路径下的新版本,旧版本就会丢失吗?

  • 存储库是否有任何一次性写入选项,因此默认情况下每个工件路径只能上载一次?

免责声明:我在这里总是Noob,所以如果我错过了什么,请随时指出任何RTFM。

从我看到的示例中,通常会在要部署的路径中包含版本号,但据我所知,路径将是“客户端”生成的,因此服务器必须有一些处理这个呢?

1 个答案:

答案 0 :(得分:4)

Artifactory中是否存在某种工件的不同“版本”的某种历史记录?

如果我理解正确你的意思是版本控制,回滚到旧文件。如果是这种情况,则回答这不是Artifactory

中可用的内容


或者,只要部署了同一路径下的新版本,旧版本就会丢失吗?

一旦文件被覆盖,旧文件就会丢失。请注意,覆盖文件,尤其是版本,被认为是不好的做法。


存储库是否有任何一次性写入选项,因此默认情况下每个工件路径只能上传一次?

您唯一的选择是删除用户的“删除/覆盖”权限。然后,一旦他们尝试编写已存在的文件,他们将收到以下错误:

{
    "errors" : [ {
        "status" : 403,
        "message" : "Not enough permissions to overwrite artifact 'XXX' (user 'YYY' needs DELETE permission)."
    } ]
}