【问题标题】:How to right distribute python application which based on python-fabric如何正确分发基于python-fabric的python应用程序
【发布时间】:2012-07-05 23:42:38
【问题描述】:

我的应用程序有一个用于控制 Linux 主机场的 python 脚本。更准确地说,我有一个集群数据库管理系统。该脚本实现了控制集群的例行任务——启动节点、停止节点、获取节点状态等。

现在脚本是用 python 编写的,只有标准的 python 库。它使用 paramiko 通过 ssh 访问远程主机。它非常丑陋,对于脚本的开发人员和维护人员来说毫无用处。

我想切换到python-fabric

我的问题是:如何正确编写脚本并将其打包到发行版中(包、tar.gz 等)?

主要的应用程序构建系统是 CMake,并使用 configure_file 语句从模板生成我的脚本,并替换 C++ 应用程序、库等的完整路径。

我希望构建脚本:

  1. 使用 virtualenv 创建一个单独的环境
  2. 在单独的环境中安装 pip
  3. 在单独的环境中安装结构
  4. 运行由 virtualenv 生成的“activate”脚本并从中调用东西

这种解决方案有什么缺点?您还能提出哪些其他解决方案?

【问题讨论】:

    标签: python deployment distributed fabric


    【解决方案1】:

    我认为您没有得到任何回复,因为您的问题太模糊了。

    Fabric 是一个简化 ssh 命令自动化的工具。您可以按照与在命令行中通过 run() in fabric.这是一个很棒的工具。

    virtualenv new_env 变成 run('virtualenv new_env') 例如。 就打包而言,你可以像打包任何python包一样打包它(带有setup.py文件)。

    如果您热衷于简化构建/部署,请开始使用 Fabric,如果遇到the documentation 未涵盖的任何问题,请返回此处。

    【讨论】:

      猜你喜欢
      • 2014-02-25
      • 2011-12-05
      • 1970-01-01
      • 1970-01-01
      • 2022-01-03
      • 2020-10-08
      • 2019-11-05
      • 1970-01-01
      • 2019-08-30
      相关资源
      最近更新 更多