Как создать ленту Azure Artifacts publi c, чтобы сделать возможным установку ночных сборок проекта с открытым исходным кодом без учетных данных? - PullRequest
0 голосов
/ 09 февраля 2020

Я создал новый фид артефактов из открытого исходного проекта c, который уже используется для выполнения Azure Конвейеров публикации c CI в репозитории, размещенном на github.

Я успешно загрузил набор тестовых файлов Python wheel для этого канала с использованием шпагата и соответствующих учетных данных.

Сгенерированный URL-адрес канала пипса выглядит следующим образом:

https://pkgs.dev.azure.com/orgname/publicprojectname/_packaging/feedname/pypi/simple/

Если я наберу "pypi" / "pip" URL-адрес канала в браузере, где я вошел в систему, я получу следующее сообщение:

Эта функция в настоящее время недоступна .

Если я введу тот же URL-адрес в новом окне "частного просмотра" на firefox, я попаду на страницу входа Azure.

Моя конечная цель будет для ночных сборок, и я не хочу использовать для этого основной сервер pypi.org.

Примечание: в этом официальном руководстве упоминается специальная c кнопка с именем "+ New publi c feed (preview) ", чтобы создать ленту, но я не смог найти ее на своем проект. Вместо этого я использовал обычную кнопку «+ Новый канал». Может быть, в этом причина проблемы?

1 Ответ

1 голос
/ 09 февраля 2020

Даже если URL нельзя просмотреть в обычном браузере, указание пункта pip для его использования с помощью следующей команды работает, как и ожидалось:

pip install -i https://pkgs.dev.azure.com/orgname/publicprojectname/_packaging/feedname/pypi/simple/ packagename 

Для отображения содержимого канала анонимные пользователи могут использовать другой URL:

https://dev.azure.com/orgname/publicprojectname/_packaging?_a=feed&feed=feedname

Примечание: убедитесь, что у вас не установлен пакет artifacts-keyring в venv, который вы используете для проверки анонимного доступа к пипу:

pip uninstall -y artifacts-keyring

В противном случае пытаетесь получить к вам доступ Подача из пипса вызовет следующую паузу учетных данных:

$ pip install -i https://pkgs.dev.azure.com/orgname/publicprojectname/_packaging/feedname/pypi/simple/ packagename
Looking in indexes: hhttps://pkgs.dev.azure.com/orgname/publicprojectname/_packaging/feedname/pypi/simple/
[Minimal] [CredentialProvider]DeviceFlow: https://pkgs.dev.azure.com/orgname/publicprojectname/_packaging/feedname/pypi/simple/
[Minimal] [CredentialProvider]ATTENTION: User interaction required. 

    **********************************************************************

    To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code XXXXXXXX to authenticate.

    **********************************************************************

[Error] [CredentialProvider]Device flow authentication failed. User was presented with device flow, but didn't react within 90 seconds.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...