Search code examples
authenticationsshhudsoncvs

How to login to CVS with extssh


I'm trying to setup Hudson to pull from a CVS repo, and need a .cvspass file to do that, and to generate .cvspass, I need to first login manually to CVS (AFAIK).

CVS server in question only seems to support extssh, and I can't figure out how to login into it. I tried something like this:

robert@robert-laptop:~/temp$ cvs -d  :extssh:USERNAME:PASSWORD@cvs.server.com:/path/to/project login
cvs login: CVSROOT password specification is only valid for
cvs login: pserver connection method.
cvs [login aborted]: Bad CVSROOT: `:extssh:USERNAME:PASSWORD@cvs.server.com:/path/to/project'.

I tried with and without password, and all other permutations I could think of, but nothing helped. Does someone know a proper way to do it?

UPDATE:

I managed to login and checkout with:

robert@robert-laptop:~/temp$ cvs -d :extssh:USERNAME@cvs.server.com:/path/to/repo co PROJECT_NAME

but .cvspass was not generated, which was the whole point. :(


Solution

  • The error says

    cvs login: CVSROOT password specification is only valid for
    cvs login: pserver connection method.
    

    Since you do not use a pserver I would try

    cvs -d  :extssh:USERNAME@cvs.server.com:/path/to/project login
    

    It might be that you can't actually use CVS to store the password. Try to set up a password-less ssh connection. see http://ant.1045680.n5.nabble.com/Authenticating-cvs-extssh-w-o-getting-prompted-td1356537.html