continuum-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Louis Smith <dr.louis.sm...@gmail.com>
Subject Re: Project prepare / perform
Date Tue, 26 Jul 2011 00:17:42 GMT
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 <anthyon@novyon.org>

> 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<anthyon@novyon.org>
>>
>>  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<anthyon@novyon.org>
>>>>
>>>>  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<anthyon@novyon.org>
>>>>>>
>>>>>>  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

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message