#artifactory
#артефактор
Вопрос:
Как бы вы загрузили артефакт в artifactory без использования пароля?
Если я создаю нового пользователя, специально предназначенного для загрузки, этот пользователь по умолчанию не получает разрешение на загрузку, если он не является администратором.
Ответ №1:
Для загрузки с учетными данными
curl -u admin:'correct-horse-battery-staple' -T foo.zip
Для загрузки с ключом api
curl --header 'X-JFrog-Art-Api: 1234567890' -T foo.zip
В качестве альтернативы вы можете использовать синтаксис <username:apikey>
curl -u admin:1234567890 -T foo.zip
https://www.jfrog.com/confluence/display/RTF/Artifactory REST API
Вы можете создать ключ api на странице профиля пользователя.
Ответ №2:
Смотрите Различные параметры аутентификации, включая аутентификацию с использованием ключа API, на странице документации JFrog CLI для Artifactory: https://www.jfrog.com/confluence/display/CLI/CLI for JFrog Artifactory
Ответ №3:
Если вы хотите использовать .pypirc
, вы можете просто поместить:
[distutils]
index-servers = local
[local]
repository: https://artifactory-url/repo
username: <username>
password: <api-key>
Затем вы можете загрузить с помощью python setup.py bdist_wheel upload -r local
.
Хотя мой пользователь на данный момент является администратором, поэтому он отвечает только на часть вопроса с ключом API.
Ответ №4:
Если вы смотрите на артефакт nuget, вот однострочная команда CLI ниже.
nuget push <your-package-name.nupkg> -source <artifactory-repo-url>/nuget-local/ -ApiKey <your-user-name>:<apikey>
Это скрыто в документации jfrog. Я бы подумал, что загрузка других артефактов будет следовать аналогичной схеме.