-
Bug
-
Resolution: Unresolved
-
Major
-
Master: Windows Server 2008, Slave: RHEL5. Jenkins 1.602, CVS Plugin 2.12
I've set up a Jenkins build job triggered by CVS polling. This is a linux build job, and thus is restricted to run on the linux slave. The CVS authentication type is SSH, and the keys are in '$SSH_KEY_DIR/id_rsa'. On the master, SSH_KEY_DIR is set to 'C:\jenkins_keys', on the slave SSH_KEY_DIR is set to '/root/.ssh'.
Checking the polling log, I see the following error:
java.lang.RuntimeException: CVS authentication failure while running rlog command
at hudson.scm.AbstractCvs.executeRlog(AbstractCvs.java:701)
at hudson.scm.AbstractCvs.getRemoteLogForModule(AbstractCvs.java:657)
at hudson.scm.AbstractCvs.calculateRepositoryState(AbstractCvs.java:608)
at hudson.scm.AbstractCvs.compareRemoteRevisionWith(AbstractCvs.java:512)
at hudson.scm.CVSSCM.compareRemoteRevisionWith(CVSSCM.java:224)
at hudson.scm.SCM.poll(SCM.java:397)
at hudson.model.AbstractProject._poll(AbstractProject.java:1446)
at hudson.model.AbstractProject.poll(AbstractProject.java:1349)
at hudson.triggers.SCMTrigger$Runner.runPolling(SCMTrigger.java:515)
at hudson.triggers.SCMTrigger$Runner.run(SCMTrigger.java:544)
at hudson.util.SequentialExecutionQueue$QueueEntry.run(SequentialExecutionQueue.java:118)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.netbeans.lib.cvsclient.connection.AuthenticationException: SSH connection failed.
at org.netbeans.lib.cvsclient.connection.SSHConnection.open(SSHConnection.java:141)
at org.netbeans.lib.cvsclient.Client$1.run(Client.java:374)
... 1 more
Caused by: com.jcraft.jsch.JSchException: java.io.FileNotFoundException: $SSH_KEY_DIR\id_rsa (The system cannot find the path specified)
at com.jcraft.jsch.KeyPair.load(KeyPair.java:524)
at com.jcraft.jsch.IdentityFile.newInstance(IdentityFile.java:40)
at com.jcraft.jsch.JSch.addIdentity(JSch.java:389)
at com.jcraft.jsch.JSch.addIdentity(JSch.java:370)
at org.netbeans.lib.cvsclient.connection.SSHConnection.open(SSHConnection.java:135)
... 2 more
Caused by: java.io.FileNotFoundException: $SSH_KEY_DIR\id_rsa (The system cannot find the path specified)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at com.jcraft.jsch.Util.fromFile(Util.java:492)
at com.jcraft.jsch.KeyPair.load(KeyPair.java:521)
... 6 more
Based on the backslash in 'java.io.FileNotFoundException: $SSH_KEY_DIR\id_rsa' - it would appear the polling is being run on the master, not the slave, but is not resolving the $SSH_KEY_DIR environment variable correctly.
- is related to
-
JENKINS-27538 SCM polling error due to CVS authentication failure while running rlog command ($HOME variable not expanded for private key paths)
- Open