python - 具有私有(private)开发的依赖项的 Pylons 应用程序部署

标签 python deployment setuptools distutils

在我的组织中,我们有几个内部开发的 Python 包。为了举例,我们将它们称为 FooBar。两者都是在单独的 Git 存储库中开发的。 Foo 是一个 Pylons 应用程序,它使用 Bar 中的某些库函数。两者都没有公开分发。

当我们部署 Foo 时,我们通常会从源代码管理中导出最新版本,并在 virtualenv 中运行 setup.pydevelopment。这工作正常。

问题是我们需要某种方式为部署 Foo 的每个环境分发 Bar。显然我们不能将“Bar”放入setup.py的install_requires中(因为easy_install无法在任何网站上找到它)。我找不到任何自动获取/安装私有(private)开发依赖项的方法。

有没有更简单的方法来管理这个?我觉得我错过了 Python 打包和分发的重点。

最佳答案

您可以创建包存储库。步骤基本上是:

  1. 使用setup.py bdist_egg创建一个egg
  2. 将创建的egg从dist复制到Apache提供的目录
  3. 使用 -f 开关将 Apache 公开的目录的 URL 添加到 easy_install 命令

请注意,Apache 不一定是必需的,但它会自动生成 easy_install 可以处理的目录列表。

如果您使用构建,则有一些配置选项可以执行与 -f 相同的操作,并且我很确定您也可以在 pip 中使用某些功能。

关于python - 具有私有(private)开发的依赖项的 Pylons 应用程序部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4005009/

相关文章:

python - Numpy Where Multiple Conditions ,无法将 dtyped [object] 数组与 [bool] 类型的标量进行比较

node.js - 如何使用 npm 包进行部署

python - 运行 setup.py 安装 - 不支持相对模块名称

python - 升级到 18.1 后无法将 --extra-index-url 与 pip 一起使用

python - 用编译的 Julia 打包 Python?

python - 安装 X 协议(protocol)以使用 mysql shell - Mac

python - PyQt 不识别箭头键

eclipse - 如何将Spring MVC部署到远程Tomcat服务器

java - 使用反向代理在 Tomcat 子文件夹中部署 Java Web

python - 无法检索列表推导之外的 itertools 迭代器