繁体   English   中英

在其他产品中为开发人员和用户分发python helper应用程序

[英]Distribute python helper application inside other product for developers and users

主产品具有多个python脚本,可帮助用户和开发人员使用主应用程序。

我想找到一种通过以下方式分发具有依赖性的脚本的方法:

  • 产品开发人员应该只获取存储库的副本,进行构建,并获得可行的解决方案。 没有root访问权限,没有下载可以接受。
  • 产品的用户应该只获得tar.gz的副本,将其解压缩并使用。 没有root访问权限,没有下载,没有其他可接受的构建步骤。
  • 产品的用户应该只获得rpm / deb软件包,安装并使用它。 不能接受其他下载。

所有python分发方式都需要运行其他脚本(tar.gz拒绝运行),然后经常下载依赖项。

因此,对于我的任务,我需要具有所有依赖关系的python-fabric。 现在,脚本是用标准的python库编写的,而且非常丑陋,我想将其切换为fabric。

如何正确支持所有这些要求?

  1. pip可以从本地tarball安装。 您可以在需求文件中枚举它们; 然后要安装,请在virtualenv中运行:

     pip install -r requirements.txt 

    如果依赖项之间存在C扩展名,则您的开发人员应安装一个编译器,python头文件。

  2. PyInstaller可以帮助您为用户捆绑二进制发行版。 如果没有C扩展名; 创建带有所有依赖关系的归档文件很容易,可以随时使用它们。

  3. pkgme可能会帮助您自动化Ubuntu的打包。 您也可以使用stdeb手动生成.deb文件。

描述所有依赖项,脚本入口点等的有意义的setup.py是以上所有条件的前提。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM