On 06/04/2011 8:04 PM, AnasMughal wrote:
We have a compliance/audit requirement that we need to be able to exactly
reproduce builds. (Current requirement does not allow the build machine
access to our internal nexus repository.)
All builds or just releases?
What stops you from doing that now? If you use releases properly in Maven and in your SVN, you should be able to rebuild any release. Everyone that has a system in production that is maintained has this need. It is not just an idea imposed from outside. If you can not rebuild every module that you have released into production or out to a customer base, how do you know that you can fix any bugs?

SVN has all the information required to find the source code and the Maven POMs have all the information required to rebuild any release from the sources with all of the correct third party software and correct internally generated artifacts.

Building a snapshot takes more effort.

How often do you need to demonstrate a complete rebuild?
Is it worth automating?
How many projects make up the complete application?
Ours has over 70 and I am sure that I can rebuild all 70 for any release but I have never thought of automating the process.

It would take a couple of hours to rebuild and I would have to set up a new Nexus if I did not want to delete the existing releases from Nexus.

I do not backup my Nexus data so I have to be sure that I can rebuild any release artifact from the sources. I know that I can build something close to the snapshots that existed on any given day using the history in SVN to identify the right sources. It will be more work and some modules may be out of synch if the developer did not check in every source that was deployed as a SNAPSHOT. We do not require that in our workflow nor do I particularly care about rebuilding SNAPSHOTS as they are transient by definition and are never released into the wild.

Ron


We have a few projects with typical maven dependency hierarchy. Is there a
way that I could setup a build script that would fetch all dependencies from
SVN and then trigger a complete build.

Of course, we start the build process by deleting everything from the local
maven repository.

Then, we build going down the dependency hierarchy. As we build a parent, we
install it in the local maven repository on the build machine.

This does seem to be something that CruiseControl and Hudson do. Should I
consider just setting up CruiseControl or Hudson to perform the builds for
us? Or, is there a better way to setup this checkout and build process.

Any advice much appreciated.
--
Anas Mughal

--
View this message in context: 
http://maven.40175.n5.nabble.com/Checkout-and-Build-all-dependencies-tp4287477p4287477.html
Sent from the Maven - Users mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org




---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org

Reply via email to