Ok, it is time to get Gump using artifacts from it's repository when a build fails, so
we get (over time, one hopes) far greater (if fuzzy) coverage. This means that if
project X is a dependency of Y, and X built yesterday, but not today, Y will be built
on yesterday's X. Is this perfect? No. Is this potentially benefitial? Yes ... (1) to
help Y find problems with Z or with itself (2) 'cos X breaking (due to itself or A)
might not affect Y, and when X is fixed, Y will still get tested. Basically, no harm
no foul ... and potential upside. That's the hope.
I've create 'live' and (with Leo's and Stefano's help) move trunk into it, so we get a
'more stable' version to run public Gump upon. Now I can happily work on trunk, break
the heck out of things (as I might, this seemed simple, but it has ramifications) and
only 'trunk' users will break, named 'test'. At least, that is the theory...
So, here are the steps:
1) Be able to get group X's artifacts from the repository, get the latest by date, and
map to jars (by id). Since we publish to the repository using {id}-gump-}DATE}.{extn}
that was trivial. Done.
2) Be able to clean the repo. Doing next 'cos easy, leaving only the newest dated
files.
3) If state is 'prerequisite failed' -- ignore it, and attempt to build a project
anyway. If the CLASSPATH fails to build ('cos stuff not in the repository yet) fail
this, and leave it as prerequisite failed. Daft but true, but this is the tricky part
... I've thought of too many permutations of state changes/propogations, and I'm going
to punt for now. We'll determine 'fuzziness' (i.e. built on stale contents) later, and
annotate somehow.
4) If the artifacts aren't found in the local repository use Depot to download them.
This will enable personal Gumps to cascade from upstream Gumps. This is pretty easy,
but (3) is the priority.
Input?
regards
Adam
--
Have you Gump'ed your code today?
http://gump.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]