使用标志"--index-url"和 GitLab 的 "--extra-index-url" 进行 pip 安装会导致"ERROR: HTTP error 404 while getting"



我们使用私有GitLab Enterprise安装来存储Python模块,如Package Registry中PyPI包一文中所述
在容器内使用以下命令来安装私有托管包:

pip install <package_name_01> <package_name_02> 
--index-url https://<personal_access_token_name_package_01>:<personal_access_token_package_01>@gitlab.example.com/api/v4/projects/<project_id_package_01>/packages/pypi/simple 
--extra-index-url https://<personal_access_token_name_package_02>:<personal_access_token_package_02>@gitlab.example.com/api/v4/projects/<project_id_package_02>/packages/pypi/simple 

如示例所示,我们使用来自不同GitLab项目的包。因此,我们必须将每个GitLab项目指定为--index-url--extra-index-url。显示的解决方案正在工作,但几天后,我们收到以下错误:

pip install <package_name_01> <package_name_02> 
> --index-url https://<personal_access_token_name_package_01>:<personal_access_token_package_01>@gitlab.example.com/api/v4/projects/<project_id_package_01>/packages/pypi/simple 
> --extra-index-url https://<personal_access_token_name_package_02>:<personal_access_token_package_02>@gitlab.example.com/api/v4/projects/<project_id_package_02>/packages/pypi/simple
Looking in indexes: https://<personal_access_token_name_package_01>:****@gitlab.example.com/api/v4/projects/<project_id_package_01>/packages/pypi/simple, https://<personal_access_token_name_package_02>:****@gitlab.example.com/api/v4/projects/<project_id_package_02>/packages/pypi/simple
Collecting <package_name_01>
ERROR: HTTP error 404 while getting https://gitlab.example.com/api/v4/projects/<project_id_package_01>/packages/pypi/files/55a5d545c01aee6ef5488cb18f9d19eee9d79XXXXXXX/<package_name_01>-0.0.18-py3-none-any.whl#sha256=55a5d545c01aee6ef5488cb18f9d19eee9d79XXXXXXX (from https://gitlab.example.com/api/v4/projects/<project_id_package_01>/packages/pypi/simple/<package_name_01>/) (requires-python:>=3.6)
ERROR: Could not install requirement <package_name_01>==0.0.18 from https://gitlab.example.com/api/v4/projects/<project_id_package_01>/packages/pypi/files/55a5d545c01aee6ef5488cb18f9d19eee9d79XXXXXXX/<package_name_01>-0.0.18-py3-none-any.whl#sha256=55a5d545c01aee6ef5488cb18f9d19eee9d79XXXXXXX because of HTTP error 404 Client Error: Not Found for url: https://gitlab.example.com/api/v4/projects/<project_id_package_01>/packages/pypi/files/55a5d545c01aee6ef5488cb18f9d19eee9d79XXXXXXX/<package_name_01>-0.0.18-py3-none-any.whl for URL https://gitlab.example.com/api/v4/projects/<project_id_package_01>/packages/pypi/files/55a5d545c01aee6ef5488cb18f9d19eee9d79XXXXXXX/<package_name_01>-0.0.18-py3-none-any.whl#sha256=55a5d545c01aee6ef5488cb18f9d19eee9d79XXXXXXX (from https://gitlab.example.com/api/v4/projects/<project_id_package_01>/packages/pypi/simple/<package_name_01>/) (requires-python:>=3.6)

然而,单独安装模块是可行的。。。

pip install <package_name_01> --index-url https://<personal_access_token_name_package_01>:<personal_access_token_package_01>@gitlab.example.com/api/v4/projects/<project_id_package_01>/packages/pypi/simple
pip install <package_name_02> --index-url https://<personal_access_token_name_package_02>:<personal_access_token_package_02>@gitlab.example.com/api/v4/projects/<project_id_package_02>/packages/pypi/simple

有人知道这里出了什么问题吗?

这是GitLab中的一个错误,需要在将来解决。

GitLab官方发布的链接:https://gitlab.com/gitlab-org/gitlab/-/issues/371814

最新更新