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]

Reply via email to