[ http://jira.codehaus.org/browse/WAGON-50?page=all ]

Carlos Sanchez updated WAGON-50:
--------------------------------

       type: New Feature  (was: Bug)
    Summary: Add CVS support to Wagon SCM for site:deploy  (was: Wagon SCM 
can't be used for site:deploy to CVS repository)

You need to implement in the CVS provider those methods, like list and 
getRelativePath.
You can use SVN provider as reference and check the javadocs in the interface. 
That should make it work with CVS

> Add CVS support to Wagon SCM for site:deploy
> --------------------------------------------
>
>          Key: WAGON-50
>          URL: http://jira.codehaus.org/browse/WAGON-50
>      Project: wagon
>         Type: New Feature

>   Components: wagon-scm
>     Versions: 1.0-beta-1
>     Reporter: Kohsuke Kawaguchi

>
>
> wagon-scm + site:deploy + CVS repository combo doesn't work.
> The first problem is that it tries to execute ScmWagon.mkdirs(), in which it 
> runs:
>                 listScmResult = scmProvider.list( baseRepository, fileSet, 
> false, null );
> This is not supported in CVS, so it fails. I'm not sure what the proper fix 
> would be, but I worked around this by
> creating the module in the repository by manually doing "cvs add 
> <directory>", and then changed the above line to:
>             try {
>                     listScmResult = scmProvider.list( baseRepository, 
> fileSet, false, null );
>             } catch (NoSuchCommandScmException e) {
>                 break; // assume it's already there
>             }
> With this workaround, it then fails at the following line:
>                 relativePath = 
> repository.getProviderRepository().getRelativePath( baseProviderRepository );
> as this method is not implemented in CvsScmProviderRepository
> (I have no idea what this method does, but this method only seems to be 
> implemented in SvnScmProviderRepository.)
> Again I worked around this by changing this to:
>             String relativePath = null;
>             try {
>                 relativePath = 
> repository.getProviderRepository().getRelativePath( baseProviderRepository );
>             } catch (UnsupportedOperationException e) {
>                 // HACK
>             }
> which seems to make it work.

-- 
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