【发布时间】:2014-04-04 07:28:15
【问题描述】:
我们正在 AWS VPC 的公共子网中运行持续集成服务器 (jenkins),我们希望在向 master 提交时触发升级作为构建后任务...
最简单的方法是让 ansible ssh-in 机器,拉取最新的master 并重新启动服务,然后继续下一个;但由于 CI 主机在不同的子网中运行,我们无法访问服务器。
我们的自动扩缩配置用户数据脚本在启动时自动获取存储库的HEAD,因此我们需要做的就是终止 ELB 中的所有现有实例,让自动扩缩功能启动新实例。
问题是我不知道如何在 playbook 中指定它应该等到新实例启动并运行后再终止下一个实例。
另一个可行的选择是立即启动所有新实例,当它们启动并运行时,从 ELB 中分离并终止所有旧实例(但我也找不到有关如何执行此操作的示例!)。
【问题讨论】:
-
您想让这一切完全自动化吗?
-
是的,我们希望在提交被推送到某个分支时自动在 CI 服务器中实现
标签: amazon-web-services ansible continuous-deployment