Python web项目的剖析:开发、打包、部署

Python web项目的剖析:开发、打包、部署,python,deployment,virtualenv,fabric,Python,Deployment,Virtualenv,Fabric,我是Python新手(来自Java+Ant),想知道是否有人可以详细介绍如何最好地使用Fabric+Pip+Virtualenv来设置Python web应用程序包框架 最终目标是能够使用单个命令执行以下任一操作: 在新的开发盒上设置开发环境(安装所有DEP) 运行所有测试 打包并部署到staging 将暂存部署到生产环境 其他典型的开发流程任务:迁移模式等 我使用的是Debian+git+Tornado,但如果可能的话,我希望这个OS/SCM/framework不可知 我做了一些搜索,但我

我是Python新手(来自Java+Ant),想知道是否有人可以详细介绍如何最好地使用Fabric+Pip+Virtualenv来设置Python web应用程序包框架

最终目标是能够使用单个命令执行以下任一操作:

  • 在新的开发盒上设置开发环境(安装所有DEP)
  • 运行所有测试
  • 打包并部署到staging
  • 将暂存部署到生产环境
  • 其他典型的开发流程任务:迁移模式等
我使用的是Debian+git+Tornado,但如果可能的话,我希望这个OS/SCM/framework不可知

我做了一些搜索,但我还没有找到一个明确的东西,涵盖这从上到下。我会发现这很有帮助,我想还有其他一些前Java/PHP/的家伙也会这么做


谢谢

看看我的答案。它并没有解决你所有的问题(事实上主要是第一个要点),但希望它能让你开始。

保持It框架的不可知性可能会相当困难

但是,您可能会发现以下粘贴器模板(尽管对于Django项目)也非常有用


虽然Paster有一个很好的学习曲线(至少从我的角度来看),但它可以很好地满足您对“项目框架”的需求。事实上,使用粘贴器模板,您可以实现与Maven原型为您所做的类似的功能。

我不想用一个命令从开发到生产:)我认为@enterpriserehab需要为每个要点使用一个命令。