[ 
http://jira.codehaus.org/browse/CONTINUUM-1274?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_96369
 ] 

Sebastian Annies commented on CONTINUUM-1274:
---------------------------------------------

I fixed this issue for myself (works for me and I don't what it may break). In 
the PerforceCheckOutCommand I added code for generation of a .p4config file. if 
P4CONFIG is set to .p4config Perforce can and will take care of finding the 
client by itself.

  if (consumer.isSuccess()) {
        File p4config = new File(workingDirectory, ".p4config");
        if (!p4config.exists()) {
          try {
            FileWriter fw = new FileWriter(p4config);
            fw.write("P4CLIENT=" + specname);
            fw.close();
          } catch (IOException e) {
            throw new ScmException("could not create .p4config", e);
          }
        }
        return new CheckOutScmResult(cl.toString(), consumer.getCheckedout());

(But I found another flaw: Even though persistCheckout is turned on the main 
project's client will be changed up on release:perform.  The root will be 
changed to workingDirectory-<somestring> , so during release:perform the client 
is not persistent and subsequent continous builds will change it back)

> Release Project fails due to pom.xml not writable with perforce as SCM
> ----------------------------------------------------------------------
>
>                 Key: CONTINUUM-1274
>                 URL: http://jira.codehaus.org/browse/CONTINUUM-1274
>             Project: Continuum
>          Issue Type: Bug
>          Components: Integration - Maven 2, SCM
>    Affects Versions: 1.1-alpha-1
>         Environment: ubunto 7.04 java 6
>            Reporter: Sebastian Annies
>            Priority: Critical
>
> All release steps from update-working-copy to map-development-versions work 
> fine. The next phase '  rewrite-poms-for-release' fails because of read-only 
> pom.xml. 
> this could be an issue with the scmUseEdit flag since perforce file are 
> read-only by default.
> see log output:
> (I tried to fix alpha-2 by myself therfor log output is alpha2-SNAPSHOT, 
> error reproduces with alpha-1, too)
> [INFO] Updating local copy against the scm...
> [INFO] Verifying that there are no local modifications...
> [INFO] Checking dependencies and plugins for snapshots ...
> [ERROR] org.apache.maven.shared.release.ReleaseExecutionException: Error 
> writing POM: 
> /home/drmtest/continuum-1.1-alpha-2-SNAPSHOT/continuum-webapp/src/main/webapp/WEB-INF/working-directory/1/pom.xml
>  (Permission denied)
>       at 
> org.apache.maven.shared.release.phase.AbstractRewritePomsPhase.writePom(AbstractRewritePomsPhase.java:659)
>       at 
> org.apache.maven.shared.release.phase.AbstractRewritePomsPhase.writePom(AbstractRewritePomsPhase.java:604)
>       at 
> org.apache.maven.shared.release.phase.AbstractRewritePomsPhase.transformProject(AbstractRewritePomsPhase.java:190)
>       at 
> org.apache.maven.shared.release.phase.AbstractRewritePomsPhase.transform(AbstractRewritePomsPhase.java:115)
>       at 
> org.apache.maven.shared.release.phase.AbstractRewritePomsPhase.execute(AbstractRewritePomsPhase.java:98)
>       at 
> org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:194)
>       at 
> org.apache.maven.shared.release.DefaultReleaseManager.prepareWithResult(DefaultReleaseManager.java:107)
>       at 
> org.apache.maven.continuum.release.executors.PrepareReleaseTaskExecutor.execute(PrepareReleaseTaskExecutor.java:43)
>       at 
> org.apache.maven.continuum.release.executors.AbstractReleaseTaskExecutor.executeTask(AbstractReleaseTaskExecutor.java:67)
>       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:619)
> Caused by: java.io.FileNotFoundException: 
> /home/drmtest/continuum-1.1-alpha-2-SNAPSHOT/continuum-webapp/src/main/webapp/WEB-INF/working-directory/1/pom.xml
>  (Permission denied)
>       at java.io.FileOutputStream.open(Native Method)
>       at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
>       at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
>       at java.io.FileWriter.<init>(FileWriter.java:73)
>       at 
> org.apache.maven.shared.release.phase.AbstractRewritePomsPhase.writePom(AbstractRewritePomsPhase.java:640)
>       ... 14 more

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to