PDA

View Full Version : Nightly Builds/Snapshot strategy/tools



BastiBense
12th March 2009, 08:08
Hey guys,

not sure if this should go to "General Programming" or here, but I think the topic can be very Qt-specific and should probably be discussed here.

For a few of my projects (open source and company ones), I'd like to provide nightly builds or snapshots from SVN of my applications. I saw that Nokia/Trolltech provides nightly builds, and I was wondering which strategy you guys are following, and which tools you are using to do it.

These are the most important points that came to my mind:
- Snapshots/Nightlies for Mac OS X, Linux, Windows
- Having a report created for the compilation process, possibly with benchmarks and tests that are run afterwards
- Provide a SVN hook to start compilation after a commit (which doesn't happen too often a day in this case)
- Automatically generate installer packages or DMGs on Mac OS X
- Automatically re-configure the linking on OS X or copy the required DLLs on Windows

Any thoughts on this?

Thanks in advance! :)
Basti

wysota
12th March 2009, 13:35
Snapshot builds are usually done using a script ran from cron. The script should check if anything new was commited to the repository since last build then it should checkout a fresh copy (or reuse a previous one), run qmake && make (or whatever else needs to be done) and then based on the result either create the package and put it on the server or issue an alert to the operator that something went wrong.

Creating a snapshot after every commit might not be a good idea, creating a working copy after all commits have been made for a day is a safer idea.