Ant和Chef之间的部署/构建工具

Ale*_*nro 5 windows testing deployment build

所以我一直在为拥抱像Chef或Puppet这样的部署/配置管理工具而苦苦挣扎.不是因为我对他们总体上有任何犹豫,而是因为我认为它们不适合我们的具体情况.

据我所知,这些类型的工具针对频繁/大规模部署,您需要将软件推广到10s-1000s的系统.在我们的环境中,我们收集了大约25种不同的Web服务,这些服务分布在六个运行时中,目前每个生产中有1-8个部署.我们的大部署问题是每个服务都有不同的部署故事,并且它完全是手动的,因此它往往耗时且容易出错.另一个问题是生产中的不同实例可能是软件的不同版本,因此我们可能需要同时支持单个服务的多个部署故事.

所以我觉得我们需要更像Ant/Maven/Rake的东西,它是为每项服务定制的.但是,我对它们的体验是它们通常专注于本地操作,并且特定于给定的语言/运行时.

是否存在运行时无关的框架,用于以我感兴趣的方式描述和编排构建/测试/部署?

我敢肯定,如果我打得足够长,我可以让Rake或Puppet为我做这些,但我正在寻找为此目的而建造的东西.

(哦,更糟糕的是,一切都在Windows上运行)

谢谢!

mac*_*mac 2

这是您可能需要考虑的另一种选择:kwatee(我附属)是一个免费的轻量级部署工具,除了具有 Web 管理界面之外,还可以与 ant(或 maven 或其他带有 python CLI 的工具)集成,以自动构建和部署例如,开发/测试环境。

好处之一是 Web 配置界面,它可以非常轻松地快速配置您的部署故事,即哪个软件/版本运行在哪个服务器上。通常需要根据目标服务器在配置文件中设置不同的参数。为此,您可以使用 kwatee 变量(类似于环境变量)“模板化”您的包,该变量为每个服务器配置了不同的值。

软件必须以文件文件夹、存档(zip、tar、tar.gz、bzip2、war)或单个文件(例如exe)的形式在Kwatee 的存储库中注册。不支持 Msi。要在 Windows 上部署 kwatee 需要服务器具有 telnet/ftp 或 ssh/scp(有免费工具)。