artifactory - Pip install 为 Artifactory 上传的包返回 "Could not find a version that satisfies requirement"

标签 artifactory pypi

我将 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]

Artifactory 以这种格式上传到 PyPi 本地存储库

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

当我访问

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

在浏览器中,我可以找到神器。

当我使用

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

返回

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

我在我的 pip.conf 中使用 Artifactory Set Me

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

Artifactory 版本:Artifactory Pro 6.8.1

我无法使 pip 安装工作。有任何想法吗 ?

谢谢。

最佳答案

我设法以某种方式找到了解决方案,我想分享我所做的。

Artifactory 从 Set Me Up 函数生成了 pip.conf

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

显然,要访问本地上传的文件,您需要将凭据传递给 index-url。

如何生成凭证以传递给索引 url。

1) 前往 Artifactory。

2) 单击编辑配置文件。生成 API key 。复制 API key 。

3) 编辑 pip.conf 文件。

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

4) 重新运行 pip 安装。它现在应该可以工作了。

关于artifactory - Pip install 为 Artifactory 上传的包返回 "Could not find a version that satisfies requirement",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55841230/

相关文章:

python - 防止私有(private)和基于 pypi 的 Python 包之间的命名空间冲突

artifactory - 如何使用 jfrog cli 重新计算 repo 的索引?

nginx - 无法将 docker 镜像推送到神器

python - 如何将 python 包上传到 Nexus sonatype 私有(private)仓库

python - 使用 PyPi 时在 Python 3 代码库中支持 Python 2 的好方法是什么?

python - Opencv python包管理

python - 给定 Python 包的名称,要导入的模块的名称是什么?

用于下载 Artifactory 并进行比较的java程序

mysql - 人工异常 : There should be 10 default repository layouts

java - 从另一个 Jenkins 构建中查找 Artifactory URL