出于开发原因,我正在编写一个依赖于另一个托管在 github 存储库(从不在 pypi 中)的 python 应用程序。
让我们称呼他们:
- 正在编写的应用程序:
AppA
- github中的应用程序:
AppB
在 App A 中,setup.py 如下:
# coding=utf-8
import sys
try:
from setuptools import setup, find_packages
except ImportError:
import distribute_setup
distribute_setup.use_setuptools()
from setuptools import setup, find_packages
setup(
...
install_requires=[
# other requirements that install correctly
'app_b==0.1.1'
],
dependency_links=[
'git+https://github.com/user/app_b.git@0.1.1#egg=app_b-0.1.1'
]
)
现在每次推送AppA
都在构建,Jenkins CI
但由于引发了下一个错误,所以我失败了:
error: Download error for git+https://github.com/user/app_b.git@0.1.1: unknown url type: git+https
有趣的是,这只发生在 Jenkins 中,它在我的电脑上完美运行。我尝试了 github 提供的其他两个 SSH url,甚至都没有考虑下载。
现在,AppA 包含在同样由 Jenkins 构建的项目的需求文件中,因此手动安装依赖pip install AppA
pip install AppB
项不是一种选择,依赖项会通过包含在requirements.txt
.
有没有办法让 pip 和 git 与 github url 一起工作?
任何帮助将不胜感激:)
提前致谢!