我正在开发一个版本为mercurial并部署到Amazon Web Servies的Web应用程序。我们正在规划我们的存储库结构,我想知道其他人是如何处理这个问题的。
我们需要单独的stable
和dev
存储库,分别用于错误修复和新功能。在Amazon-land中,我们有独立的实时,测试和开发环境,用于运行代码,即将上线的代码以及我们刚尝试的内容。开发环境很可能在我们需要时构建,然后再次关闭,因此其IP可能会发生变化。
理想情况下,我们希望hg push
来自我们当地的开发人员,直到生活。但是,出于服务器安全性的原因以及服务器的IP(特别是瞬态开发环境)可能会发生变化,我们可能会发现自己需要服务器在创建时拉动。我们还会遇到自动扩展会生成新服务器的情况,我们需要从某处获取最新的,经过测试的代码。
我很想知道你是如何解决这个/这些问题的,或者你对我们如何解决这个问题有任何建议。
答案 0 :(得分:1)
我们为一个EC2服务器分配一个弹性IP地址,并将其作为我们的中央存储库。开发人员从此实例推送/拉取。所有生产/测试服务器都从此存储库中提取。这在过去几年中运作良好,开发人员分布在不同的时区。
我们还使用ZoneEdit.com来处理此IP地址的DNS,如果我们决定使用不同的弹性IP地址或将存储库完全移出EC2,这将非常方便。