commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Phil Steitz" <phil.ste...@gmail.com>
Subject Re: [build] nightly build support for maven2?
Date Wed, 02 Aug 2006 19:33:25 GMT
On 8/1/06, Simon Kitching <skitching@apache.org> wrote:
> Hi,
>
> Currently the nightly build stuff supports either ant or maven1.x.
>
> I've just got logging building/testing successfully with maven2 (though
> building the dist bundles is still to do). Is there any chance someone
> could update the nightly build stuff to support maven2 as well? It would
> be a lot quicker/safer for someone already familiar with these scripts
> to add this than me..
>

Would be easy to do.  Here are the steps, for anyone who wants to play
with this before I get to it, which won't be until at least this
weekend.  I saw m2 set up already on vmbuild, so the following should
be all we need to do.

1. Create and commit text files named (for consistency)
nightly_proper_maven2_list.txt, nightly_sandbox_maven2_list.txt
containing lists of component names to be built using maven2.  Like
the other files, one name per line, only the (svn) component name,
e.g., "beanutils."   Component names should appear on at most one of
the lists _proper_maven, _proper_maven2, _proper_ant, etc.

2. Add necessary config to designate the maven2 deployment location.

3. Add a process_maven2_components() function like the one for m1.
Should be simpler, since m2 can do more deployment automatically.
Pipe the logs out to log_location like the m1 function does.

4. Add blocks like this after the maven1 build part at the end:
# Sandbox Maven2 components
list_file="$nightly_list_location/nightly_sandbox_maven2_list.txt"
components=`<$list_file`
current_root=$sandbox_root
echo
echo "=========================================="
echo " Building Sandbox Maven 2 Components        "
echo "=========================================="
process_maven2_components

5. Test locally by changing config parameters.  Make sure to check
permissions on deployed files.

6. Check changes to the script in to svn.  The crontab wrapper that
executes the nightlies will pick up the change in the script and start
executing the new version on the next run.

Extra credit: satisfy the burgeoning collective appetite for CI-spam
by accumulating a list of the builds that have failed (across build
types) and generate *one* email to commons-dev with the failed
component names in the subject line and links to the relevant build
logs in the body.

*Extra credit (* means double bonus points): Replace the whole mess
using Continuum, contributing patches as necessary to get it all to
work.

> Currently, logging is listed in the maven1.x list, but that only builds
> the site for logging, not the code so logging needs to move to either
> the ant list or a maven2 list...
>
> BTW, maven2 is a mile better than maven1. I'm planning on creating a
> maven2 buildfile for Digester soon, and maybe a few others.
>

+1 - I think it is time to start moving things.

Phil

---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


Mime
View raw message