如何正确分发基于python结构的python应用程序

如何正确分发基于python结构的python应用程序,python,deployment,distributed,fabric,Python,Deployment,Distributed,Fabric,我的应用程序有一个python脚本,用于控制linux主机群。更准确地说,我有一个集群数据库管理系统。该脚本实现了控制集群的例行任务——启动节点、停止节点、获取节点状态等 现在,脚本是用python编写的,只有标准的python库。它使用paramiko通过ssh访问远程主机。它非常难看,对于脚本的开发人员和维护人员来说是无用的 我想换成 我的问题是:如何正确编写脚本并将其打包到发行版(packages、tar.gz等)中 主应用构建系统是CGUID,使用“代码>配置文件> /COD>语句从模板

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

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

我想换成

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

主应用构建系统是CGUID,使用“代码>配置文件> /COD>语句从模板生成脚本,将完整路径替换为C++应用程序、库等。 我希望生成脚本:

  • 使用virtualenv创建单独的环境
  • 在单独的环境中安装pip
  • 在单独的环境中安装结构
  • 运行virtualenv生成的“激活”脚本并从中调用stuff

  • 这种解决方案的缺点是什么?你还可以提出什么解决方案?

    我想你没有得到任何答复,因为你的问题太模糊了

    Fabric是一种简化ssh命令自动化的工具。基本上,您可以通过fabric中的
    run()
    从命令行执行列出的任何操作。这是一个伟大的工具

    例如,
    virtualenv new_env
    变成
    run('virtualenv new_env')
    。 就打包而言,您可以用打包任何python包(带有setup.py文件)的相同方式打包它


    如果您热衷于简化构建/部署,请开始使用fabric,如果遇到任何无法解决的问题,请返回此处。

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

    Fabric是一种简化ssh命令自动化的工具。基本上,您可以通过fabric中的
    run()
    从命令行执行列出的任何操作。这是一个伟大的工具

    例如,
    virtualenv new_env
    变成
    run('virtualenv new_env')
    。 就打包而言,您可以用打包任何python包(带有setup.py文件)的相同方式打包它

    如果您热衷于简化构建/部署,请开始使用fabric,如果遇到任何无法解决的问题,请回到这里