Python:跟踪部署的工具

Kla*_*ven 5 python deployment web-deployment

我正在寻找一种工具来跟踪"什么在哪里运行".我们有一堆服务器,每个服务器都有很多项目.这些项目可能在特定版本(hg tag/commit nr)上运行,并且在特定版本中也有它们的要求.

通过自动化ssh部分,Fabric看起来像是开始实际部署的良好开端.但是,一旦部署完成,就不会对已完成的操作进行概述.

在重新发明轮子之前,我也想在这里检查一下(我尽我所能,但可能会找到错误的关键词).有没有这样的工具?

(实际上我正在部署Django项目,但我不确定这个问题是否相关;跟踪pip/virtualenv安装或服务器状态的任何事情都应该没问题)

非常感谢,

克拉斯

==========

编辑TEMP.解

==========

目前,我们选择将这些信息简单地存储在一个简单的键值存储(在我们的例子中:文件系统)中,我们非常注意备份(在我们的例子中:使用DCVS).我们使用与实际部署相同的部署工具跟踪此商店(在我们的示例中:fabric)

密码存储在TrueCrypt卷中,该卷存储在我们的键值存储区中.

==========

当某种开源解决方案出现在某个地方时,我仍然乐意接受任何答案.我可能会在不久的将来自己分享(部分)我们的解决方案.

Ori*_*Ori 1

pip freeze为您提供所有已安装软件包的列表。额外好处:如果将输出重定向到文件,则可以将其用作部署过程的一部分来安装所有这些包(pip 可以以编程方式安装文件中的所有包)。

我发现您已经在使用 virtualenv 了。好的。您可以运行pip freeze -E myvirtualenv > myproject.reqs生成一个依赖文件,该文件兼作Python环境的状态报告。