【问题标题】:Weird behavior in Artifactory download when using JFrog CLI使用 JFrog CLI 时 Artifactory 下载的奇怪行为
【发布时间】:2020-11-01 09:00:29
【问题描述】:

我在使用 JFrog CLI 下载时发现了这种非常奇怪的行为。
好的,让我们从上传开始:当我想上传一个完整的目录层次结构时,假设我有这个结构:

root
│
└───Folder1
    └───Folder2
        │   file1
        │   file2
        │   file3
        │
        └───Folder3
                nested1
                nested2
                nested3

我想上传Folder2 的内容(虽然我的位置在根目录!)及其所有子目录和文件到 `MyRepo/MyPath',所以我的 repo 看起来像:


MyRepo
    └───MyPath
        │   file1
        │   file2
        │   file3
        │
        └───Folder3
                nested1
                nested2
                nested3

如果我试试这个:

jfrog rt upload --flat=false Folder1/Folder2/ MyRepo/MyPath/ 

我将在 Artifactory 的层次结构中留下Folder1/Folder2,这不是我想要的,所以我使用占位符:

我将执行以下命令:

jfrog rt upload --flat=false "Folder1/Folder2/(*)" MyRepo/MyPath/{1} 

效果很好,我可以理解逻辑:--flat=false 是这样nested* 文件将保留在Folder3 目录中,而file* 文件将在Folder2 目录中,并且这 占位符说:将Folder1/Folder2 中的任何内容复制到MyRepo/MyPath。完美!

尝试做相反的事情,即下载,使用相同的逻辑:假设我想将MyPath 下的所有内容下载到我所在的Folder1/Folder2 目录中,所以我将得到上面绘制的第一个结构, 我试试这个:

jfrog rt download --flat=flase "MyRepo/MyPath/(*)" Folder1/Folder2/{1} 

但这会创建一个非常奇怪的目录结构,我什至不想在这里绘制。解决方案是使用flat=true 而不是flat=false,这真的很不直观且根本无法理解。有人可以解释这种行为,或者至少将我引导给 JFrog 中我需要报告的任何人吗?

【问题讨论】:

    标签: devops artifactory jfrog-cli


    【解决方案1】:

    这确实是一个错误。我刚刚在这里提交了这个错误 - https://github.com/jfrog/jfrog-cli/issues/883

    此问题特定于占位符功能。 JFrog CLI 似乎误解了 --flat 的正确定义,当它与“jfrog rt download”命令中的占位符一起使用时。我相信这个问题很快就会得到解决。

    非常感谢分享这个!

    【讨论】:

      猜你喜欢
      • 2019-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-26
      • 2018-09-28
      • 2022-11-18
      相关资源
      最近更新 更多