Changes between Version 7 and Version 8 of BuildServerSetup
- Timestamp:
- Dec 20, 2008, 1:38:27 AM (15 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
BuildServerSetup
v7 v8 18 18 * Install [http://search.cpan.org/~jkim/Net-Amazon-EC2-0.09/ Net::Amazon::EC2]. 19 19 * Install the initial part of the build script (that does as little as possible, because it's hard to upgrade). 20 * Add that build script into `HKLM\Software\Microsoft\Windows\CurrentVersion\Run`.20 * Make that build script run on startup (before logon), using evil magic. 21 21 * ...anything else?... 22 22 * Bundle the machine into s3://...something.../...something... … … 39 39 * Call [http://docs.amazonwebservices.com/AWSEC2/2008-12-01/DeveloperGuide/index.html?ApiReference-Query-TerminateInstances.html TerminateInstances] to stop the machine. 40 40 41 Also need to run something external to call !TerminateInstances after a suitable timeout, in case the machine gets stuck, so it doesn't end up wasting lots of money.42 43 41 == Build runner == 44 42 45 43 * Runs on same server as SVN. 46 44 * Uses SVN auth info to only allow registered developers to trigger builds (because they cost money). 45 * The server also runs a cron job every 5 minutes, that checks if a build was started more than 50 minutes ago, and calls !TerminateInstances if so. (That should be enough time for a legitimate build to end, and prevents a runaway machine costing lots of money.) 46 * The web interface also provides an admin-only 'down for maintenance' mode that prevents any builds and pauses that cron job, so I can manually run the build server without interference. 47 47 48 48 == EC2 ==