我有一个 Lift 应用程序,它被打包为 WAR 存档,并且必须部署在 Jetty 下。但是,我希望能够自动执行一些任务:
- 指定目标服务器(或服务器集合)。我有多个服务器,从开发服务器到测试服务器和生产服务器,我希望能够轻松控制部署的目的地。
- 目的地(例如 DEVELOPMENT)可能意味着服务器的集合,用于负载平衡目的。
- 测试阶段。基本上,在每次部署中,如果应用程序无法编译或者一个或多个测试失败,我都希望运行整个测试集并阻止部署。
- WAR 档案必须部署在 Jetty 下,同样在一台或多台运行 Linux 的 Amazon EC2 机器上。(Ubuntu 12.10)
我正在使用 SBT,但我不知道这对 Puppet 或类似的东西会有多好。你会怎么做?