red knight Posted December 12, 2005 Report Share Posted December 12, 2005 I asked permission in my company to get a Virtual Machine running Windows 2003 to do the compilation of the nightly build for Xenocide; and they gladly accepted to provide me with an isolated server to do so. Now for that to be done I need several volunteers to have it running as soon as posible. The task list to accomplish it is: 1) We need to research build systems like NAnt, Cruise Control or whatever is there to do Continuous integration that support SVN.2) Modification of the updater application coded in C# to do the instalation of the dependencies package only when things change and in an automated way (in a fixed directory).3) From the build systems selected, code the required tasks script.3.1) Get the source from SVN (afresh)3.2) Get the dependencies package if there is a new one and install it if required (delete the ones that are there if needed).3.3) Compile using the commandline tools for both debug and release.3.4) Zip it3.5) Upload to the xenocide server.3.6) Send a positive or negative mail to [email protected]3.7) Delete the Xenocide source to leave everything ready for the next build. Task 1 and 2 can be done in parallel, while 3 needs one to be done. I need volunteers to do this as soon as posible. This is an excelent oportunity for recruits to work along with their respective mentors to accomplish a very important task. GreetingsRed Knight Link to comment Share on other sites More sharing options...
[stewart] Posted December 13, 2005 Report Share Posted December 13, 2005 Cant you access SVN form DOS scripting? Link to comment Share on other sites More sharing options...
red knight Posted December 13, 2005 Author Report Share Posted December 13, 2005 Nope it requires special support to do so. GreetingsRed Knight Link to comment Share on other sites More sharing options...
red knight Posted December 13, 2005 Author Report Share Posted December 13, 2005 Ok, I am almost done writing the script for CruiseControl.Net . Currently it downloads the source from SVN and compiles it; for now it is usable, but the dependency automatic update is something that has to be done for complete integration. Tomorrow morning I will tell the IT specialist at work if he can start the instalation of the new server. What it is still missing is a small application to do the FTP upload and a task to create the zip file to upload. GreetingsRed Knight Link to comment Share on other sites More sharing options...
[dteviot] Posted December 13, 2005 Report Share Posted December 13, 2005 I asked permission in my company to get a Virtual Machine running Windows 2003 to do the compilation of the nightly build for Xenocide; and they gladly accepted to provide me with an isolated server to do so. Now for that to be done I need several volunteers to have it running as soon as posible. The task list to accomplish it is: 1) We need to research build systems like NAnt, Cruise Control or whatever is there to do Continuous integration that support SVN.2) Modification of the updater application coded in C# to do the instalation of the dependencies package only when things change and in an automated way (in a fixed directory).3) From the build systems selected, code the required tasks script.3.1) Get the source from SVN (afresh)3.2) Get the dependencies package if there is a new one and install it if required (delete the ones that are there if needed).3.3) Compile using the commandline tools for both debug and release.3.4) Zip it3.5) Upload to the xenocide server.3.6) Send a positive or negative mail to [email protected]3.7) Delete the Xenocide source to leave everything ready for the next build. Task 1 and 2 can be done in parallel, while 3 needs one to be done. I need volunteers to do this as soon as posible. This is an excelent oportunity for recruits to work along with their respective mentors to accomplish a very important task. GreetingsRed KnightMight I suggest that task 3.7 should really be done as the first task of any build.You will want to keep the source around because if the build fails, you want to inspect the source to find out what went wrong. Link to comment Share on other sites More sharing options...
[dteviot] Posted December 13, 2005 Report Share Posted December 13, 2005 What it is still missing is a small application to do the FTP upload and a task to create the zip file to upload. GreetingsRed KnightWindows comes with a command line FTP program. http://www.microsoft.com/resources/documen.../en-us/ftp.mspx As regards the zip file, you could use 7-zip, which provides a command line interface. Or am I not understanding your request. Link to comment Share on other sites More sharing options...
red knight Posted December 13, 2005 Author Report Share Posted December 13, 2005 (edited) You are right at 3.7, but it turned out that the build system do updates instead of checkouts. About the ZIP I want to do 2 different ones, an incremental one (things that changed) and a complete one. At first we will do a complete one, but I want to check the posibility of doing incremental ones too (but for that I need a custom tool). Didnt know that FTP can be used as a command line tool too, excelent will have everything ready (except the modification for the commandline version of the package updater) in 2 to 3 days. GreetingsRed Knight Edited December 13, 2005 by red knight Link to comment Share on other sites More sharing options...
rincewind Posted December 13, 2005 Report Share Posted December 13, 2005 About the commandline tool, there's a command-line switch to the windows-ftp that allows you to specify a file that contains ftp-commands. That should do the trick. "ftp -?" gives you a help screen. Kind of weird as with win32 progs it's usually /? Rincewind Link to comment Share on other sites More sharing options...
Darkhomb Posted December 13, 2005 Report Share Posted December 13, 2005 You don't just have to use windows ftp to use commands most ftp programs have commands built in or have the option to type your own raw commands Link to comment Share on other sites More sharing options...
reist Posted December 14, 2005 Report Share Posted December 14, 2005 "ftp -?" gives you a help screen. Kind of weird as with win32 progs it's usually /?Well, microsoft copied more then just the whole tcp stack from bsd. They modified it all since, but it seems no one thought of changing some things...like say, *nix syntax Link to comment Share on other sites More sharing options...
[mindstormmaster] Posted December 17, 2005 Report Share Posted December 17, 2005 Can I also suggest emailing the complete build log as part of the end email? And perhaps looking into optionally testing previous revisions if the latest doesn't compile. Like go back one revision if the current fails, this could help us track down the offending commit (and committer). As for the uploading the latest, what do you think about using the date as part of the filename, so we can keep several days of build around? Do we want to use the installer for the nightly builds, or is a simple zip good enough? Link to comment Share on other sites More sharing options...
red knight Posted December 20, 2005 Author Report Share Posted December 20, 2005 This is nightly build, I want to have some sort of patching (file granularity) but if you can make the patch system work automated, be my guest ... I can do most of that, and yes the email is in the works and the multiple builds thing too. GreetingsRed Knight Link to comment Share on other sites More sharing options...
Beetle Posted January 5, 2006 Report Share Posted January 5, 2006 Maybe we can also build documentation at that nighly builds? Link to comment Share on other sites More sharing options...
red knight Posted January 6, 2006 Author Report Share Posted January 6, 2006 Yes, that can be done too. Just add it to the script . BTW I had been on vacations with lots of things to do, plus my girlfriend in house so it has been pretty difficult to follow the progress on Xenocide these days. I will try to get a couple hours to get up to speed on what has been going on. GreetingsRed Knight Link to comment Share on other sites More sharing options...
Recommended Posts