使用 bandersnatch 下载特定 pypi 版本 (3.7) 的 PYPI 包

问题描述 投票:0回答:2

我正在尝试专门针对 python 3.7 的包镜像 pypi.org 存储库

根据 bandersnatch 文档,可以使用过滤器来做到这一点。 但我不确定这是否是我正在寻找的。我查看了 PyPi API 的文档,我认为基于项目正则表达式匹配的过滤器(如

.*Programming Language :: Python :: 2.*
)只是检查该项目是否可用于您指定的版本,但不会仅下载该版本。

我也尝试将以下内容添加到我的配置文件中,但没有成功实现我预期的结果。它仍然下载了所有版本的requests库

[regex_release_file_metadata]
any:release_file.python_version =
   "3.7"

这是使用错误的过滤器,还是我只是以错误的方式使用它?

python pypi bandersnatch
2个回答
1
投票

查看潘达斯奈基新版本;现在您至少可以排除特定 Python 次要版本不需要的二进制发行版。

来自文档

如果您确定您的镜像不需要提供这些二进制文件,您还可以按次要版本(例如 Python 2.6、2.7)排除 Python 版本。


0
投票

很抱歉提出这个问题,但我只是想下载 1 个特定版本的 python(所有 windows/linux/egg/tgz/ 等...)来托管在我的离线实验室中。

这个配置文件是否满足我的需要,有人可以验证这个配置文件是否只会下载Python python 3.6.8(而不是其他版本)?

    # cat /etc/bandersnatch.conf | grep -v '^;' | sed '/^$/d'
[mirror]
directory = /mnt/mylabnas01/repos/pypi
json = false
release-files = true
cleanup = false
master = https://pypi.org
timeout = 10
global-timeout = 1800
workers = 5
hash-index = false
simple-format = ALL
stop-on-error = false
storage-backend = filesystem
verifiers = 3
compare-method = hash
[allowlist]
platforms =
        py3.6.8
© www.soinside.com 2019 - 2024. All rights reserved.