(Related to ticket #224.) The current plan (subject to change based on any new information or experience): * The server runs on [http://aws.amazon.com/ec2/ Amazon EC2]. * The server has Windows Server 2003, VC++ 2008, SVN, Perl, and nothing else installed. * The server has a persistent disk with the SVN checkout. * On startup, the server runs a script. The script updates SVN, builds, saves the log output somewhere, and if it was successful then it commits the new binaries. * Some other server runs some kind of script that provides an authenticated web interface to (re)start the build server, and terminates it after some period of time when it's done. == Virtual machine image installation == * Start with basic Win2003 image (ami-e3698d8a, Server2003r2-i386-Win-v1.02.manifest.xml), on a Small Instance. * Attach a 2GB [http://aws.amazon.com/ebs/ EBS] disk. * Install [http://www.microsoft.com/express/download/ VC++ 2008 Express SP1]. * Install [http://www.sliksvn.com/en/download command-line SVN] 1.5.4. * `svn co http://svn.wildfiregames.com/svn/ps/trunk/ e:\svn` * Add some script or something into `HKLM\Software\Microsoft\Windows\CurrentVersion\Run`. * ... * Bundle the machine into s3://...something.../...something... == Build script == Needs to do something like: * `premake --target vs2008 --outpath e:\build` * `vcbuild /time /showenv /useenv /M4 /r /logfile:buildlog.txt pyrogenesis.sln "Release|Win32"` * ... == EC2 == Currently (December 2008) the only suitable alternatives to EC2 seem to be [http://www.flexiscale.com/ FlexiScale] and [http://www.gogrid.com/ GoGrid], but they are a bit more expensive. Since all the services provide a plain Windows environment, it should be fairly easy to transition between the services if it becomes necessary.