No, the Cvs plugin shouldn't remove the branch info. Please file a Jira
issue and I'll look at fixing this.

Thanks
Michael

On 11 Jan 2013, at 09:12, Xiaoming DU <[email protected]> wrote:

Hello everyone,

I have a problem when I use maven to generate a release from a cvs branch
on jenkins.

Here is the my environment :

OS windows 2003 server
jenkins 1.482
jenkins cvs plugin 2.5
maven 3
maven-release-plugin 2.1
cvs.exe native windows client 1.11.22 from http://cvs.nongnu.org (quite
old, I know)

The project is a maven project, in jenkins I configured it to use a cvs
branch as the code source location. The project can be compiled without any
issue on jenkins, but when I try to perform a maven release, the
compilation crashes. More exactly, it stops when it tries to commit the
modified pom.xml to cvs server.

Here is the error message :

[INFO] [INFO]
------------------------------------------------------------------------

[INFO] [INFO] BUILD SUCCESS

[INFO] [INFO]
------------------------------------------------------------------------

[INFO] [INFO] Total time: 1:40.298s

[INFO] [INFO] Finished at: Thu Jan 10 15:58:36 CET 2013

[INFO] [INFO] Final Memory: 38M/247M

[INFO] [INFO]
------------------------------------------------------------------------

[INFO] Checking in modified POMs...

[INFO] Executing: cmd.exe /X /C "cvs -z3 -f -q commit -R -F
C:\DOCUME~1\lsa_web\LOCALS~1\Temp\scm-commit-message2086459184030940886.txt
pom.xml"

[INFO] Working directory: D:\xxxxx

mojoFailed org.apache.maven.plugins:maven-release-plugin:2.1(default-cli)

projectFailed lu.iwi:optibatch:1.0.4-SNAPSHOT

sessionEnded

...

message : Failed to execute goal
org.apache.maven.plugins:maven-release-plugin:2.1:prepare (default-cli) on
project xxx: Unable to commit files

Provider message:

The cvs command failed.

Command output:

cvs commit: Up-to-date check failed for `pom.xml'

cvs [commit aborted]: correct above errors first!


cause : Unable to commit files

Provider message:

The cvs command failed.

Command output:

cvs commit: Up-to-date check failed for `pom.xml'

cvs [commit aborted]: correct above errors first!
Then I looked into the code of the cvs plugin and found that it strips out
the sticky date tags after cvs check out.
https://github.com/jenkinsci/cvs-plugin/blob/master/src/main/java/hudson/scm/AbstractCvs.java#L694

Without the sticky tag (branch), the cvs.exe launched by maven during
release tries to commit the modified pom.xml to HEAD which can obviously
not work.

C:\TEMP\workspace>cvs.exe status pom.xml

===================================================================

File: pom.xml           Status: Needs Merge

   Working revision:    1.18.4.12

   Repository revision: 1.35
/APPLICATIONS/CVS01D/xxxx/cvsrepository/xxx/pom.xml,v

   Commit Identifier:   JtFwavfT373XqEzw

   Sticky Tag:          (none)

   Sticky Date:         (none)

   Sticky Options:      (none)
I understand well the code, the maven release plugin can never work with
the jenkins checkout. It sounds extremely strange to me however.

My question is : why the plugin removes the sticky tag, Should it do it
when the code is checked out from a branch ?

Thanks in advance,

xdu

Reply via email to