maven-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thiessen, Todd (Todd)" <tthies...@avaya.com>
Subject RE: Can't specify distributionManagement in settings.xml
Date Wed, 06 Oct 2010 22:19:47 GMT
What you are asking for definitely is not recommended. The release plugin already has a "staging"
feature but it is not the recommended way to do.

Putting a "staging" build into the release repo is not recommended from my perspective either.
That isn't what a snapshot is for.  They are meant to hold only the latest version of your
build. Old artifacts are usually nuked.

Besides, to do what you want you don't HAVE to have a staging repository anyway. You can still
release artifacts just fine and not have to copy anything. You just don't announce that a
release is ready until it has passed testing.

It is rather simple....

1. Work with SNAPSHOTS until you start approaching a release. Example version 1.0-01-SNAPSHOT.
2. Cut a release milestone build to send to alpha trials or extended QA. 1.0-01.
3. Continue to do work on your SNAPSHOT version and fix any bugs found. All fixes go into
1.0-02-SNAPSHOT.
4. Release 1.0-02 at an appropriate time.
5. Repeat.

You'll eventually release 1.0-xy. Hopefully, if your release is not that buggy, xy never gets
to two digits ;-). And if you are agile and doing a lot of QA during each iteration, you'll
have a final release of 02 or 03.

So if you released with version 1.0-05 for example, it is a bit annoying that everyone can
see and download 1.0-01 to 1.0-05.  1.0-01 to 1.0-04 are all basically dead releases and you
really don't want anyone to use them. Staging keeps this from happening.  You can also of
course do this by simply saying to your QA and/or release team "don't use releases 01 to 04"
;-).

Staging is a nice to have, but hardly a show stopper.  Which is likely why is does not exist
freely. At least not yet.

You seem to be passionate about it though so by all means volunteer some of your time to create
such a plugin. I am sure the Nexus community would be happy for your contribution. Nothing
helps ones understand like actually doing.

> -----Original Message-----
> From: Phillip Hellewell [mailto:sshock@gmail.com]
> Sent: Wednesday, October 06, 2010 5:51 PM
> To: Maven Users List
> Subject: Re: Can't specify distributionManagement in settings.xml
> 
> On Wed, Oct 6, 2010 at 2:04 PM, Ron Wheeler
> <rwheeler@artifact-software.com> wrote:
> >  On 06/10/2010 3:42 PM, Phillip Hellewell wrote:
> >>
> >> If I deploy non-snapshot builds to the snapshot repository first
> >
> > How. I do not think that this can be done.
> 
> I asked earlier if non-snapshot builds can be deployed to a snapshot
> repository, and no one answered so I've been assuming/hoping it is
> possible.
> 
> >> (because I don't consider them released until QA approval), then I
> >> want to move those to the release repo after QA approval, why would I
> >> want the hassle with finding where I checked out the project (or
> >> worse, check it out again and rebuild it), just so I can deploy it to
> >> another repo when it's going to be identical, even the version number?
> >
> > Different version number   2.4.1-SNAPSHOT would be rebuilt as 2.4.1
> when it
> > is ready for release.
> 
> No, there are basically there types of builds I want to do.  Most
> people don't have a stage between snapshot and release, so I'm
> guessing that is why I am not getting any clear direction about the
> best way to do this.
> 1. A snapshot build made by a developer that can be deployed to a
> snapshot repo.  Ver = "1.0-SNAPSHOT".
> 2. A "staging" build made by a build machine.  Can this go into the
> snapshot repo?  Ver = "1.0-tag-TAGNAME".
> 3. A release build.  Will be deployed to a release repo. Ver =
> "1.0-tag-TAGNAME".
> 
> The artifact will not change at all between #2 and #3.  So no, it is
> not a different version number, and no I do not want to go hunt down
> where I created the build or have to check it out and build it again
> so I can redeploy it.
> 
> So the questions are:
> * Can I not put it a "staging" build into the a snapshot repository
> because it does not have SNAPSHOT in the name?
> * If a "staging" build goes into the snapshot repository, how can I
> easily move it to the release repo.  I believe Anders has already
> answered that Nexus Pro can provide this functionality, but I do find
> it odd that copying artifacts between repositories has to be so hard.
> 
> Phillip
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org

Mime
View raw message