Hi Stephen, Sure no problem. What I came up with was another set of posts, and was essentially following the advice you gave me a few days ago and some help from Dan Tran. That is, I use mvn deploy but output to a empty directory, then use a maven plugin to merge that to my primary repository.
Here are some details (note I am using Maven 2.1.0 on Windows machines). So essentially I build like this: mvn -DaltDeploymentRepository=repo::default::file://E:\staging-repo deploy I then use the wagon-maven-plugin to merge this sparse area up to my corporate repository like this: mvn org.codehaus.mojo:wagon-maven-plugin:1.0-beta-1:merge-maven-repos -Dwagon.source=file://E:\staging-repo -Dwagon.target=file://\\server\share\mavenrepo -Djava.io.tmpdir=deploytemp Note that deploytemp is a directory that is created in the local directory. I can't seem to point it to a C:\temp for some reason, and really don't care. I just create the directory and use it. It's empty when it gets done. If you don't create that directory (or forget the java.io.tmpdir), you get a rather cryptic message about volume labels. I'm able to chain these two commands together after appropriate error checking in my automation server (IBM Rational Build Forge FWIW). So what I was after originally was a step for me to build, then another step to deploy only that I could use later on after everything was done. This accomplishes that goal, with a little help from the wagon-maven-plugin, and Dan Tran. Needless to say this methodology was not documented anywhere that I could find, so I am guessing that not many folks are interested in it. Frankly without the nudges in the right direction from this list, I would not have been able to figure it out. So thanks to everyone. -Jim -----Original Message----- From: Stephen Connolly [mailto:stephen.alan.conno...@gmail.com] Sent: Friday, March 27, 2009 12:45 PM To: Maven Users List Subject: Re: How to perform a deploy only Any chance you could post your solution? 2009/3/27 Jim McCaskey <jim.mccas...@pervasive.com> > I have found a solution that is working nicely. Having said that, I don't > think the request is that farfetched. When doing a deploy, you would > definitely want to make sure that all the components that made up the run > built successfully before deploying. Not doing so leaves your repository in > a corrupt state. Perhaps having the ability to delay the deploy phase until > all components are built/tested is what is needed, not necessarily a "Deploy > only" ability. In other words, run all other phases for all components, > then swing back through on a deploy run once all components are verified to > build/test. > > My guess would be that as more and more projects use Maven to glue > everything together, these sorts of things will come up more often. > > Anyway just a suggestion. Like I say, I have a solution that I'm happy > with. > > -Jim > > -----Original Message----- > From: Brian E. Fox [mailto:bri...@reply.infinity.nu] > Sent: Thursday, March 26, 2009 9:43 PM > To: Maven Users List > Subject: RE: How to perform a deploy only > > Running the full lifecycle is a fundamental of Maven, so this type of > feature request is unlikely to gain traction. You should rather look at > your build configuration to solve the problem, or as mentioned use a > repo man that can help you out. > > -----Original Message----- > From: Jim McCaskey [mailto:jim.mccas...@pervasive.com] > Sent: Wednesday, March 25, 2009 11:26 PM > To: 'Maven Users List' > Subject: RE: How to perform a deploy only > > Thanks for the suggestion. I have been trying to avoid using repository > managers for a number of reasons that are beyond the scope of this > thread. I may have to break down eventually... > > I'm surprised no one has needed this sort of feature, or maybe they have > and that's why Nexus has the features that it does. I was hoping to > find a Maven native (whatever native means in a highly pluggable > architecture) way to do this that would not take much additional work. > > mvn -DdoNothingButDeploy=true deploy > > That would be about perfect. :) > > Would this even be consider for an enhancement request if I opened it? > Perhaps I am the only one interested in such a thing. > > Thanks! > > -Jim > > -----Original Message----- > From: Edelson, Justin [mailto:justin.edel...@mtvstaff.com] > Sent: Wednesday, March 25, 2009 9:55 PM > To: Maven Users List > Subject: RE: How to perform a deploy only > > Brian can pitch his own stuff far better than I can, but this kind of > transactional deployment can be done with Nexus' Staging feature. > > I realized after I sent my deploy:deploy suggestion that it probably > wouldn't work without running at least the package phase, sorry to give > you bad info. I'm reasonably confident with some light hacking you could > write a plugin that essentially faked the build, but if the below is > your use case and you can afford Nexus Pro, it's probably a better > solution. > > Justin > > > ________________________________ > > From: Jim McCaskey [mailto:jim.mccas...@pervasive.com] > Sent: Wed 3/25/2009 10:37 PM > To: 'Maven Users List' > Subject: RE: How to perform a deploy only > > > > I have a whole bunch of components that are mostly interrelated but > consumable individually by downstream builds. If I run deploy it > basically starts deploying as it goes, so if a downstream component > breaks for some reason then I am left with half of the components > updated in the maven repo and half not. That's not really what we want. > > So ideally, we would run a build/test, make sure it all gets through > completely, then deploy the resulting artifacts. > > -Jim > > -----Original Message----- > From: Brian E. Fox [mailto:bri...@reply.infinity.nu] > Sent: Wednesday, March 25, 2009 9:20 PM > To: Maven Users List > Subject: RE: How to perform a deploy only > > This really isn't a supported use case. Deploy is a phase and by > definition all earlier phases run before the one you've asked for. Why > would you not want to build before you deploy? > > -----Original Message----- > From: Jim McCaskey [mailto:jim.mccas...@pervasive.com] > Sent: Wednesday, March 25, 2009 10:17 PM > To: 'users@maven.apache.org' > Subject: How to perform a deploy only > > Hello all, > > I have several components all built from a top level pom. This works > great for accelerating users to be able to build a lot of stuff quickly > but is giving me some fits when trying to deploy. Up to this point I > have been using deploy:deploy-file to get built components into our > local repository after a full build is successful, but this is labor > intensive. > > I would like to be able to run some variation of "mvn deploy" from the > top level. I have figured out how to skip things using the FAQ here: > > http://maven.apache.org/plugins/maven-deploy-plugin/faq.html#skip > > But I do NOT want it to do anything other than deploy. I have googled > for this but have not turned up anything useful. I was surprised that > the documentation does not suggest how to do this. This is the correct > deploy documentation I think. > > http://maven.apache.org/plugins/maven-deploy-plugin/ > > Anyway, any help would be appreciated. > > Thanks! > > -Jim > > > --------------------------------------------------------------------- > 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 > > > > > --------------------------------------------------------------------- > 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 > > > --------------------------------------------------------------------- > 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 > > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org