Pip install возвращает «Не удалось найти версию, которая удовлетворяет требованию» для загруженного пакета Artifactory - PullRequest
1 голос
/ 25 апреля 2019

Я загрузил пакет PyPi в локальный репозиторий Artifactory.Когда я запускаю

pip install -v package==0.1

, он возвращает эту ошибку.

Looking in indexes: https://artifactory/api/pypi/pypi/simple
Collecting toolboxio==0.1
  1 location(s) to search for versions of toolboxio:
  * https://artifactory/api/pypi/pypi/simple/package/
  Getting page https://artifactory/api/pypi/pypi/simple/package/
  Looking up "https://artifactory/api/pypi/pypi/simple/package/" in the cache
  Request header has "max_age" as 0, cache bypassed
  Starting new HTTPS connection (1): artifactory:443
  https://artifactory:443 "GET /api/pypi/pypi/simple/package/ HTTP/1.1" 404 None
  Status code 404 not in (200, 203, 300, 301)
  Could not fetch URL https://artifactory/api/pypi/pypi/simple/package/: 404 Client Error: Not Found for url: https://artifactory/api/pypi/pypi/simple/package/ - skipping
  ERROR: Could not find a version that satisfies the requirement package==0.1 (from versions: none)
Cleaning up...

В хранилище pypi настроено использование простого макета по умолчанию во время установки,

[orgPath]/[module]/[module]-[baseRev].[ext]

артефакт загружается в локальный репозиторий PyPi в этом формате

pypi-local -
           company/package - 
                           package-0.1.tar.gz

Когда я открываю

"https://artifactory/api/pypi/pypi/simple/package/" 

в браузере, я могу найти артефакт.

Когда яuse

curl -X GET "https://artifactory/api/pypi/pypi/simple/package/" 

Возвращает

"errors" : [ {
    "status" : 404,
    "message" : "Not Found"
  } ]

Я использую Artifactory Set Me, в моем pip.conf

[global]
index-url = https://artifactory/api/pypi/pypi-local/simple

Версия Artifactory: Artifactory Pro 6.8.1

Я не могу заставить работать установку pip.Есть идеи ?

Спасибо.

1 Ответ

0 голосов
/ 25 апреля 2019

Мне удалось как-то найти решение, и я хотел бы поделиться тем, что я сделал.

Artifactory сгенерировал pip.conf из функции Set Me Up

[global]
index-url = https://artifactory/api/pypi/pypi-local/simple

Видимо, чтобыДля доступа к локальным загруженным файлам необходимо передать учетные данные в index-url.

Как создать учетные данные для передачи в index-url.

1) Перейти в Artifactory.

2) Нажмите Редактировать профиль.Сгенерировать ключ API.Скопируйте ключ API.

3) Отредактируйте файл pip.conf.

[global]
index-url = https://username:<API-KEY>/api/pypi/pypi-local/simple

4) Повторите установку pip.Это должно работать сейчас.

...