开发者

mercurial — pushing to new EC2 instance

I'm working on a web application that's versioned in mercurial and deployed to Amazon Web Servies. We're in the process of planning our repository structure and I'd like to know how other people have handled this.

We'll need separate stable and dev repositories, for bug fixes and new features respectively. In Amazon-land, we have separate live, test and dev environments for running code, code about to go live, and things we're just trying out. The dev environment is likely to be built when we need it, and then shut down again, so its IPs are likely to change.

Ideally, we'd like to hg push from our local dev repos up the chain, all the way to live. However, for reasons of server security and because the IP of servers (especially the transient dev environment) might change, we may find ourselves needing the servers to pull 开发者_Go百科when they're created. We'll also have cases where autoscaling will spawn new servers and we need to get the most recent, tested, code from somewhere.

I'm interested to know how you've solved this/these problem(s) or if you have any suggestions for how we might go about it.


We assign one EC2 server with an elastic IP address and make it our central repository. Developers push/pull from this instance. All production/testing servers pull from this repository. This has worked pretty well over the past couple of years, with developers spread out across different time zones.

We also use ZoneEdit.com to handle the DNS to this IP address, which makes it convenient if we ever decide to use a different elastic IP address or move the repository off EC2 altogether.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜