我们有 Python 模块,它们引用内部 GitLab 包注册表中的其他 Python 模块。
setup.py
如下所示:
import setuptools
setuptools.setup(
name="dummy-module",
version="0.1.0",
author="Dummy User",
author_email="[email protected]",
description="Dumm module.",
packages=setuptools.find_packages(),
classifiers=[
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
],
python_requires='>=3.6',
install_requires=[
"other-internal-module @ https://gitlab.local.com/api/v4/projects/1/packages/pypi/files/0635d9dc9b32911047c19d2814b0b574be7c91756de2283f5217d9e098f79bab/other-internal-module-0.1.0-py3-none-any.whl",
"python-ldap==3.4.4"]
)
我们的目标是不使用具有冗余内容的单独
requirements.txt
,并且在安装Python模块时直接安装所有依赖项dummy-module
。到目前为止,这是通过使用 setup.py
和 install_requires
来实现的,如上所示。
Renovate 已配置,并且还能够检测和更新
python-ldap
内的 setup.py
。但是,other-internal-module
不会更新。可能是因为“直接引用”(-> @ https://gitlab.local.com/api/v4/projects/1/packages/pypi/files/0635d9dc9b32911047c19d2814b0b574be7c91756de2283f5217d9e098f79bab/other-internal-module-0.1.0-py3-none-any.whl
)或 Renovate 无法处理此类引用。
所以我的问题是:
other-internal-module
?setup.py
中定义内部托管(由 GitLab 包注册表)Python 模块,在模块 dummy-module
安装过程中,模块 other-internal-module
也将从本地 GitLab 包注册表安装?如此 GitHub 讨论所示,Renovate 目前无法处理此类依赖关系。
"other-internal-module @ https://gitlab.local.com/api/v4/projects/1/packages/pypi/files/0635d9dc9b32911047c19d2814b0b574be7c91756de2283f5217d9e098f79bab/other-internal-module-0.1.0-py3-none-any.whl"