我们拥抱持续集成和交付,尽可能快地推动绿色(部署)。Jenkins 管理所有这些过程。
过去我们在使用中建立我们的系统,因此我们不会为一个新工程迁移而到 Pants。
我们有一个组合单元测试和 HTTP 级功能测试。所有的提交必须要经过测试才可以合并。我们工作的团队在盒子内使用 Cluster Runner 分配测试,并让其更快。还能很好地与GitHub 集成。
我们尽可能快地部署过渡环境——目前大约 15 分钟——然后给候选的产品使用。主要的 app 服务正常部署在一天五次左右,但是有时候可能多达 10 次。
我们做蓝色/绿色部署。在生产环境中我们发送流量给 canary 实例,并在发布与部署之前发布过程监控错误率。Rollbacks 已经内置了 DNS 转换。