re-releasing is a different animal. remember - the process is "copy snapshot of code to NEW svn tag", "Modify trunk", "build from new tag". Since 0.0.3 already exists, and was created from the code in /trunk as of 0.0.3-SNAPSHOT - you have to do something different.
You will wind up doing a "point" or "fix" release.. like 0.0.3.1 Ignore all the directories that it creates while it is screwing over your code... all that matters is what winds up finally being deployed to the maven installation/release directory. All the "working files" should remain un-touched by human hands. We run continuum jobs at night to clean out all those temporary copies. We'll worry about that after you get a build/release done cleanly first. Better half just got home... and I'm on cooking duty... gotta go. I will be happy to write up a full demo if you still have problems. I can get to that tomorrow night. Louis 2011/7/25 Csepregi Gábor <[email protected]> > I get the concept of the working directory. I got one last question before > giving it up: > > Why does it check out the release into a folder > (working-directory/releases-**1311634791879) and does the mvn deploy from > another one (working-directory/1)? (This completly explains why I get > nullpointerexception when trying to re-release eg. 0.0.3, which has been > prepeared long time ago, but re-releasing it is a valid maven action) I'll > try one last thing, giving the working directory argument as a command line > argument on the interface, and see if it will solve it. > > 2011.07.26. 1:30 keltezéssel, Louis Smith írta: > >> The directories are controlled from the configuration screen. >> >> Also check the<distributionmanagement> section for where you are >> publishing >> your releases... you should see a new file there. >> >> The "working directory" is where continuum always does its work.. it will >> be >> <configured working directory path>/<continuum project #>/ .. looks like >> you >> are doing your first project since yours is data/working-directory/1 >> >> It just checks out what it wants into that directory, does its thing, and >> cleans up (sometimes). >> >> 2011/7/25 Csepregi Gábor<[email protected]> >> >> Thanks for the details, I have compared my pom settings to the continuum >>> pom, so now I guess it should not be a problem. The svn also looks good >>> and >>> so is the prepare form. But I get a strange log in the continuum.log >>> regarding the perform step: >>> >>> 2011-07-26 00:59:52,026 [pool-4-thread-1] INFO >>> org.apache.continuum.scm.* >>> *manager.Slf4jScmLogger - Executing: /bin/sh -c cd >>> /opt/www/local/continuum/****apache-continuum-1.4.0/data/**** >>> working-directory >>> && svn --username anthyon --password '*****' --non-interactive checkout >>> http://svn.<server>/<****artifactId>/tags/<artifactId>-****0.0.6 >>> *<path>/data/working-****directory/releases-****1311634791879* >>> 2011-07-26 00:59:52,027 [pool-4-thread-1] INFO >>> org.apache.continuum.scm.* >>> *manager.Slf4jScmLogger - Working directory: >>> <path>/data/working-directory >>> 2011-07-26 00:59:59,024 [pool-4-thread-1] INFO >>> org.apache.continuum.utils. >>> **shell.****DefaultShellCommandHelper - Executing: /bin/sh -c cd >>> *<path>/data/working-****directory/1*&& /opt/www/local/continuum/**** >>> maven/bin/mvn >>> clean deploy --no-plugin-updates --batch-mode >>> >>> The release is done from the wrong directory as far as I can tell. All I >>> did was following your steps, and doing the perform step from the offered >>> 0.0.6 version. Do I have control over these directories somewhere? >>> >>> If I create a build by hand from the project, the version number is >>> updated >>> as expected. So the build itself is working fine. I just wished to do the >>> release from the same place, though if it's not working, I can do it from >>> command line or eclipse. >>> >>> 2011.07.26. 0:46 keltezéssel, Louis Smith írta: >>> >>> There are a LOT of moving parts to get in synch for it to work... it can >>>> be >>>> a lot of effort to set it up the first time. >>>> >>>> 1) you have to have the correct structure in SVN >>>> project (we use the artifactId) >>>> project/trunk >>>> project/tags >>>> project/branches >>>> project/releases >>>> >>>> 2) you have to have the correct entries in<SCM> in the pom.xml >>>> >>>> 3) You have to be sure the prepare goes against the correct new tag >>>> base... >>>> make sure the prepare screen is correct: >>>> >>>> SCM Username : correct userid for the project to access SVN >>>> SCM Password : correct password for SVN Access >>>> SCM Tag :<artifactId>-<release RVL> - like sdi-maven-skin-1.0.1 >>>> SCM Tag Base : svn://<your host url/groupid/artifactid/tags >>>> SCM Comment Prefix<empty> >>>> Preparation Goals: clean integration-test >>>> Arguments: Noramlly empty >>>> Build Environment : Your maven as defined in the TOOLS >>>> >>>> It will show release version (the root of the current -SNAPSHOT) >>>> Next Dev version (0.0.1 up from current snapshot) >>>> >>>> If the screen isn't mostly correct without changes - then see #1 and >>>> #2... >>>> get it right first. >>>> >>>> The perform should then create the new /tags/ version - just look at >>>> your >>>> svn repo with tortoise or other tool to confirm. >>>> >>>> Click the perform radio button, and the right release number should >>>> appear >>>> in the box... if so, go for it. If not, go back to #1 >>>> >>>> 2011/7/25 Csepregi Gábor<[email protected]> >>>> >>>> Hello, >>>> >>>>> thanks, I took a closer look and found more problems. I can use maven >>>>> release plugin from within eclipse so I'm familiar with it. The problem >>>>> still exists though with Continuum. >>>>> >>>>> 1. If I use choose from the dropdown the previously prepared release >>>>> version, it simply creates a deploy from trunk. >>>>> 2. If I choose to fill in the parameters myself, the scm tagbase gets >>>>> filled with a wrong url (it starts with scm:svn:http://... instead of >>>>> http://...), but fixing it by hand is not a great deal. But when I hit >>>>> the >>>>> button to go with the release, the correct tag is checked out from the >>>>> svn, >>>>> and then I get a NullPointerException stacktrace in the continuum.log >>>>> >>>>> 2011-07-26 00:14:31,487 [pool-4-thread-1] INFO >>>>> org.apache.continuum.scm.* >>>>> *manager.Slf4jScmLogger - Working directory: >>>>> /opt/www/local/continuum/** >>>>> apache-continuum-1.4.0/data/******working-directory >>>>> 2011-07-26 00:14:37,025 [Thread-19] ERROR >>>>> taskQueueExecutor#perform-**** >>>>> release >>>>> - Error executing task >>>>> edu.emory.mathcs.backport.******java.util.concurrent.**** >>>>> ExecutionException: >>>>> java.lang.NullPointerException >>>>> at edu.emory.mathcs.backport.******java.util.concurrent.** >>>>> FutureTask.getResult(******FutureTask.java:299) >>>>> at edu.emory.mathcs.backport.******java.util.concurrent.** >>>>> FutureTask.get(FutureTask.******java:118) >>>>> at org.codehaus.plexus.taskqueue.******execution.** >>>>> ThreadedTaskQueueExecutor$******ExecutorRunnable.waitForTask(****** >>>>> ThreadedTaskQueueExecutor.******java:159) >>>>> at org.codehaus.plexus.taskqueue.******execution.** >>>>> ThreadedTaskQueueExecutor$******ExecutorRunnable.run(** >>>>> ThreadedTaskQueueExecutor.******java:127) >>>>> Caused by: java.lang.NullPointerException >>>>> at java.io.File.<init>(File.java:******222) >>>>> at org.apache.continuum.release.******phase.** >>>>> AbstractContinuumRunGoalsPhase******.execute(**** >>>>> AbstractContinuumRunGoalsPhase***** >>>>> *.java:104) >>>>> at org.apache.maven.shared.******release.DefaultReleaseManager. >>>>> ****** >>>>> perform(DefaultReleaseManager.******java:336) >>>>> at org.apache.maven.shared.******release.DefaultReleaseManager. >>>>> ****** >>>>> performWithResult(******DefaultReleaseManager.java:******294) >>>>> at org.apache.maven.shared.******release.DefaultReleaseManager. >>>>> ****** >>>>> performWithResult(******DefaultReleaseManager.java:******579) >>>>> at org.apache.maven.continuum.******release.executors.** >>>>> PerformReleaseTaskExecutor.******execute(****** >>>>> PerformReleaseTaskExecutor.** >>>>> java:88) >>>>> at org.apache.maven.continuum.******release.executors.** >>>>> AbstractReleaseTaskExecutor.******executeTask(**** >>>>> AbstractReleaseTaskExecutor.** >>>>> java:68) >>>>> at org.codehaus.plexus.taskqueue.******execution.** >>>>> ThreadedTaskQueueExecutor$******ExecutorRunnable$1.run(** >>>>> ThreadedTaskQueueExecutor.******java:116) >>>>> at edu.emory.mathcs.backport.******java.util.concurrent.** >>>>> Executors$RunnableAdapter.******call(Executors.java:442) >>>>> at edu.emory.mathcs.backport.******java.util.concurrent.** >>>>> FutureTask.run(FutureTask.******java:176) >>>>> at edu.emory.mathcs.backport.******java.util.concurrent.** >>>>> ThreadPoolExecutor.runWorker(******ThreadPoolExecutor.java:**987) >>>>> at edu.emory.mathcs.backport.******java.util.concurrent.** >>>>> ThreadPoolExecutor$Worker.run(******ThreadPoolExecutor.java:**528) >>>>> at java.lang.Thread.run(Thread.******java:662) >>>>> >>>>> The working directory in question is there, but I could not find the >>>>> line >>>>> 104 of the AbstractContinuumRunGoalsPhase class, yet. I'll try to build >>>>> a >>>>> version from the continuum svn and see, it the problem still exists. >>>>> (currently I'm using the 1.4.0 beta) >>>>> >>>>> Thanks for the fast reply, >>>>> >>>>> Gabor Csepregi >>>>> >>>>> 2011.07.25. 22:52 keltezéssel, Brent Atkinson írta: >>>>> >>>>> Hello, >>>>> >>>>> This is a question the maven release plugin. Continuum supports >>>>>> releasing >>>>>> Maven projects using the normal release plugin semantics. For >>>>>> information >>>>>> about what prepare and perform goals are doing, refer to the >>>>>> corresponding >>>>>> documentation: >>>>>> >>>>>> http://maven.apache.org/******plugins/maven-release-plugin/<http://maven.apache.org/****plugins/maven-release-plugin/> >>>>>> <**http://maven.apache.org/****plugins/maven-release-plugin/<http://maven.apache.org/**plugins/maven-release-plugin/> >>>>>> > >>>>>> <**http://maven.apache.org/****plugins/maven-release-plugin/<http://maven.apache.org/**plugins/maven-release-plugin/> >>>>>> <**http://maven.apache.org/**plugins/maven-release-plugin/<http://maven.apache.org/plugins/maven-release-plugin/> >>>>>> > >>>>>> >>>>>> >>>>>> Brent >>>>>> >>>>>> 2011/7/25 Csepregi Gábor<[email protected]> >>>>>> >>>>>> Hi there, >>>>>> >>>>>> I'm a new user to this list, and browsed the latest mails to find a >>>>>>> solution to my problem, but my question remained unanswered. So >>>>>>> please >>>>>>> direct me to the link if it has been solved before. >>>>>>> >>>>>>> I'm trying to use continuum, and it works quite well so far except >>>>>>> for >>>>>>> one >>>>>>> thing: I cannot make a release with it. I'm following the user guide, >>>>>>> but >>>>>>> the problem I'm facing is strange: >>>>>>> >>>>>>> 1. the prepare step creates the tag in my svn as supposed and >>>>>>> modifies >>>>>>> the >>>>>>> pom in the trunk to reflect the next developer version. >>>>>>> 2. the perform step makes a new deployment from the new developer >>>>>>> version >>>>>>> (eg. the prepare created the tag 0.0.5 and modified the pom to >>>>>>> 0.0.6-SNAPSHOT, then the perform will create the jar for the new >>>>>>> SNAPSHOT) >>>>>>> >>>>>>> Am I missing something there? >>>>>>> >>>>>>> Thanks in advance for the answers. >>>>>>> >>>>>>> Gabor Csepregi >>>>>>> >>>>>>> >>>>>>> >>>>>>> >> -- Dr. Louis Smith, ThD Chief Technology Officer, Kyra InfoTech Colonel, Commemorative Air Force
