try maven-scm-plugin 1.5.1-SNAPSHOT still in svn. svn co https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk
then goto trunk/scm and do maven install -D On 8/18/05, Sanjay Choudhary <[EMAIL PROTECTED]> wrote: > Hi Dan, > This makes perfect sense. Thanks for your help. > In one of your steps you said "tag the entire source source". How do you > tag it? Do you use ant rtag or someother mechanism? > Thanks, > Sanjay > On 8/18/05, dan tran <[EMAIL PROTECTED]> wrote: > > > > Sanjay, you and I have the same build requirements ( tag daily build) > > but I dont use > > multiproejct:prepare-release. This is the different. > > > > In my case, I have a single version property defined at the root pom, and > > all > > subproject's version and dependency's version, except the thirdpary > > ones, reuse that property. For each build, i do: > > > > - fetch the root property file > > - increment the build > > - check it in > > - tag the entire source tree > > - fetch the entire source tree using the tag > > - build and deploy all built artifacts > > > > All those steps can be done by a bootstrap project that is not part of > > your source > > tree. > > > > In your CI, like a watch dog build, your can keep scm:update or > > scm:checkout > > the source and build WITHOUT deploy so that when it fails you can > > notify developer. > > > > hope it helps!!! > > > > -D > > > > > > > > > > On 8/18/05, Sanjay Choudhary <[EMAIL PROTECTED]> wrote: > > > Hi Dan, > > > thanks for your comments and I tried it but it fails > > > First Build > > > 1. Bootstrap code for release 1.0.1 > > > 2. multiproject:prepare-release will Tag in CVS and project.xml gets > > updated > > > with version 1.0.1 > > > 3. maven <goal-name> > > > Second build > > > 1. Bootstrap code. > > > 2. mulitproject:prepare-release will Tag in CVS and project.xml gets > > updated > > > with version 1.0.2 > > > 3. maven <goal-name> --- Build fails > > > Third build > > > 1. Bootstrap code > > > 2. multiproject:prepare-release - at time of tagging and updating POM's > > > maven will check for the dependecies. My local repository and remote > > > repository doesn't have dependencies for version 1.0.2. Hence, this > > fails. > > > 3. Even build fails for the same reason. > > > You said "If your have a night build fail. You should increment the > > build > > > number and tag it again for the next build." But how is this possible? > > > Please help me understand with details. > > > Appreciate your time. > > > -sanjay > > > On 8/18/05, dan tran <[EMAIL PROTECTED]> wrote: > > > > > > > > Sanjay, beside from CI as Thomas suggested. > > > > > > > > If your have a night build fail. You should increment the build > > > > number and tag it again for the next build. > > > > > > > > However even with simple cron job to do scm:update and build every > > > > hour would reduce your chance of failed nightly build big time. It > > > > works great for me. > > > > > > > > -Dan > > > > > > > > > > > > > > > > > > > > > > > > On 8/18/05, Thomas Van de Velde <[EMAIL PROTECTED]> wrote: > > > > > Sanjay, > > > > > > > > > > You might want to look at continuous integration engines like > > > > CruiseControl, > > > > > Anthill or Luntbuild, which take care of the tagging and are ideal > > for > > > > > nightly builds. Maven would then just be used for build and > > packaging. > > > > CVS > > > > > operations are handled by the build server. However, for application > > > > > releases (meaning a software release to production), I would use > > Maven > > > > to > > > > > tag and assign a version number. These type of releases are not part > > of > > > > a > > > > > continuous build and are often refered to as "push-button" > > operations. > > > > > > > > > > Maven could go a bit further with the automation of releases. Right > > now > > > > a > > > > > lot of it still manual (e.g. assigning a version number, etc.). I've > > > > written > > > > > a plugin that automates all of that by automatically incrementing > > the > > > > last > > > > > digit of an application's version upon release. > > > > > > > > > > Cheers, > > > > > Thomas > > > > > > > > > > On 8/18/05, Sanjay Choudhary <[EMAIL PROTECTED]> wrote: > > > > > > > > > > > > We currently use Maven 1.0.2 only for building a J2EE application. > > > > > > *Developers > > > > > > aren't using it as yet.* :-( Our current process is described > > below. > > > > We > > > > > > run > > > > > > this process everynight to create EAR and deploy them in Sandbox. > > I > > > > will > > > > > > appreciate everyone's suggestions and comments to improve the > > process. > > > > > > 1. Bootstrap all projects from CVS. Get latest from head or > > branch. > > > > (We > > > > > > have maven.xml in the our bootstrap project that does check outs > > for > > > > all > > > > > > the > > > > > > projects from CVS). > > > > > > 2. Perform release - We use multiproject:goal with > > > > -Dgoal=performrelease. > > > > > > In this task we tag our code in CVS and update project.xml's with > > the > > > > new > > > > > > version. > > > > > > 3. Use maven and build EAR. > > > > > > 4. Deploy EAR in sandbox - This is done using Jackal scripts. > > > > > > we have a unix shell script that runs(from cron job) the above > > > > mentioned > > > > > > process. Value of CVS tag and version numbers are determined using > > > > perl > > > > > > and > > > > > > passed to maven. > > > > > > Issues with this process. > > > > > > ================== > > > > > > For some reason, if step 3 fails to build the EAR file. (For > > reasons > > > > like > > > > > > compilation errors etc) Getting build process back in line is lot > > of > > > > work. > > > > > > For example, if my last successfull build was 1.0.1 and now I am > > > > trying to > > > > > > build 1.0.2. > > > > > > 1. Bootstrap works ok > > > > > > 2. Prepare release will tag the cvs and update the project.xml for > > > > current > > > > > > version to be 1.0.2 > > > > > > 3. BUILD FAILS. > > > > > > Developer fixes the bug and now when we will try to do release > > > > > > 1. Bootstrap new code. > > > > > > 2. Attempt Prepare Release - it fails when it tries to find the > > > > depencies > > > > > > for version 1.0.2. > > > > > > Since this is a J2EE application, there are dependencies of EJB's > > , > > > > WAR > > > > > > project on Java projects.Also some Java projects are dependent on > > > > other > > > > > > java > > > > > > projects. > > > > > > I am not sure if we are following the right process to build. Our > > goal > > > > is > > > > > > to tag code in CVS and build everynight ( and may be multiple > > times in > > > > a > > > > > > day > > > > > > in future). Also if build fails, email out the notifications. > > > > > > I will appreciate any comments, suggestions and any experience. > > > > > > Thanks, > > > > > > Sanjay > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]