On Mon, Dec 31, 2012 at 1:48 PM, Z W <mpc8250_at_gmail.com> wrote:
> Hi All
>
> We are new to SVN.
> We are unsure where to configure in SVN, if needed, while using it
> with Jenkins/Hudson CI tool.
>
> We have a big chained job that runs for about an hour. Chained job
> meaning several jobs combined using downstream connections of jobs.
>
> We have the following problem, which is better explained in use case scenario:
>
> 3pm - User A checks in files into SVN directory X
> 315pm - Job B (has 4 subjobs) - and subjob 1 - checkouts files from
> SVN directory X, compiles and completes subjob run, then
> 320pm - subjob 2 - checksouts files from SVN directory Y and compiling
> 325pm - User C checks in files into SVN directory Z
> 335pm - subjob2 completes run and subjob 3 - checkouts files from SVN
> directory Z, compiles and completes subjob run, then
> 345pm - subjob4 checkouts files from SVN directory G, compiles and
> completes subjob run
> 4pm - subjob 4 completes run.
>
> Issue: For those files that User C checks in, we like to pick up the
> previous versions of those files, prior to User C's checkouts after
> the job B begins running and not pick up the files versions that User
> B checks in during the job B run.
>
> We like to know if there is anything needed to be done in SVN to make it work ?
>
> Thanks all for your contribution.
If there is a way to pass information among the build jobs, pick up
the revison number of the checkout for job B and specify it in peg
revison format (path_at_rev) for the subsequent jobs. For something
more human-readable you could also copy the project revision to a tag
at the start of job B and do all the builds from the tag snapshot.
The details of how to mesh that with jenkins would be a better
question for the jenkins list. You might need to use parametrized
builds with something external passing in the revision (easy to do
with the rest interface) to kick it off instead of polling the svn
repository for changes.
--
Les Mikesell
lesmikesell_at_gmail.com
Received on 2013-01-01 21:29:57 CET