On Dec 15, 2012, at 9:13 AM, JR Cary <[email protected]> wrote: > I can easily script pulling those in at their current states, but > but with my several build machines, what I would like is to pull > in all repos at the same version/state. So that would mean that > that master gets the sub-hg-repo at some id, then all slave builds > update to the same id. > > Any general tools for doing this?
One method you can use to do this sort of thing is to pull in all the repos you need on the master, then archive the workspace to be used as an SCM by the slaves. I was doing this successfully at a previous client. I think the plugin for this is at <https://wiki.jenkins-ci.org/display/JENKINS/archive-files-scm-plugin>. Note that when you archive the workspace (typically into a .tar.gz file), that doesn't include the .git and other source SCM subdirectories, so if there is anything that the slaves would need to extract from the repos themselves, you should do that before archiving the workspace and store that data into files that will be archived, which the slaves can then just read directly from the archive. E.g., if the slave job needed to do something like a "git describe" in order to get the exact correct version information for the code being built, that should be done on the master and stored into a filename like "${WORKSPACE}/${BUILD_ID}.git-describe" or somesuch. -- Brad Knowles <[email protected]> LinkedIn Profile: <http://tinyurl.com/y8kpxu>
