#devops #artifactory #jfrog-cli
#devops #артефактор #jfrog-cli
Вопрос:
Я обнаружил это действительно странное поведение при использовании JFrog CLI для загрузки.
Хорошо, давайте начнем с загрузки: когда я хочу загрузить полную иерархию каталогов, скажем, у меня есть такая структура:
root
│
└───Folder1
└───Folder2
│ file1
│ file2
│ file3
│
└───Folder3
nested1
nested2
nested3
И я хочу загрузить содержимое Folder2
(пока мое местоположение находится в корневом каталоге!) и все его подкаталоги и файлы в `MyRepo / myPath’, поэтому мой репозиторий будет выглядеть так:
MyRepo
└───MyPath
│ file1
│ file2
│ file3
│
└───Folder3
nested1
nested2
nested3
Если я попробую это:
jfrog rt upload --flat=false Folder1/Folder2/ MyRepo/MyPath/
Я останусь Folder1/Folder2
в своей иерархии в Artifactory, и это не то, чего я хочу, поэтому я использую заполнители:
Я выполню следующую команду:
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 мне нужно сообщить об этом?
Ответ №1:
Это действительно ошибка. Я только что отправил эту ошибку сюда — https://github.com/jfrog/jfrog-cli/issues/883
Проблема связана с функцией заполнителей. JFrog CLI, похоже, неправильно интерпретирует правильное определение —flat, когда оно используется вместе с заполнителями в команде «загрузка jfrog rt». Я считаю, что эта проблема будет решена очень скоро.
Большое спасибо, что поделились этим!