我想将一个应用程序移动到beanstalk。我希望有一种简单的自动方式来推广新版本。 beanstalk中的控制台界面很好:我可以获取war文件并上传它。但是,如果我可以运行Jenkins作业并在完成构建war文件时进行部署,那就太好了。
我在这里找到了一个关于对beanstalk实例执行ssh的线程。但是可能还有更多内容,因为Beanstalk可能是一个拥有想要成为部署经理的主服务器的集群。
值得做或者我应该接受上传页面吗?
答案 0 :(得分:6)
如果您正在使用Maven进行构建,我编写了一个插件来自动化beanstalk和Elastic MapReduce部署:
http://beanstalker.ingenieux.com.br/
我正在寻找测试人员! :)
答案 1 :(得分:1)
Afaik beanstalk有一个Web界面,因此您可以创建一个selenium脚本来为您上传它。但这有点像黑客。
通过ssh左右上传它可能是一个不错的选择。 beanstalk还有一个API(http://aws.typepad.com/aws/2011/01/aws-beanstalk-apis-and-command-line-tools.html),您可以从脚本中轻松使用它,然后从哈德森。
如果你使用maven构建,你可以让构建部署调用作为例如成功构建后的maven部署阶段包括单元测试..
答案 2 :(得分:1)
我也没有设法找到Jenkins插件。
一个很好的第一步是Luca的Beanstalk上传脚本来构建一个Jenkins插件: https://github.com/blanq/beanstalk-upload
答案 3 :(得分:0)
您可以尝试使用jcabi-beanstalk-maven-plugin自动部署的CNAME swap。这是一个实验插件,特别关注这个特定的部署策略。
答案 4 :(得分:0)
仅供参考:我为此发布了一个插件:
https://wiki.jenkins-ci.org/display/JENKINS/AWSEB+Deployment+Plugin
答案 5 :(得分:0)
你可以使用Khan Academy的开源jenkins ec-2插件。 https://github.com/Khan?page=2