hudson filesystem-scm plugin Parameter 'directory' is not a directory
What I am trying to do is move the contents of C:/devel/Hudson/urmsSettopControl
to slave1 C:/devel/HudsonSlave/workspace/Power Cycle
and I keep getting this error, I have tried /
\
and even leaving a \
at the end of the dir path to no avail. What am I doing wrong here?
Building remotely on slave1
FSSCM.checkout C:/devel/Hudson/urmsSettopControl to C:/devel/HudsonSlave/workspace/Power Cycle
FATAL: Parameter 'directory' is not a directory
java.lang.IllegalArgumentException: Parameter 'directory' is not a directory
at org.apache.commons.io.FileUtils.listFiles(FileUtils.java:293)
at org.apache.commons.io.FileUtils.iterateFiles(FileUtils.java:339)
at hudson.plugins.filesystem_scm.FolderDiff.getNewOrModifiedFiles(FolderDiff.java:104)
at hudson.plugins.filesystem_scm.RemoteFolderDiff$CheckOut.invoke(RemoteFolderDiff.java:94)
开发者_如何学JAVA at hudson.plugins.filesystem_scm.RemoteFolderDiff$CheckOut.invoke(RemoteFolderDiff.java:88)
at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1931)
at hudson.remoting.UserRequest.perform(UserRequest.java:114)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:270)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at hudson.remoting.Engine$1$1.run(Engine.java:58)
at java.lang.Thread.run(Thread.java:619)
I had the same problem on Linux and solved it by setting proper permissions to all directories in the path.
Hudson filesystem-scm plugin is for local test in your computer. The best solution is to execute directly Jenkins with your linux account. Hudson filesystem-scm plugin can so work without problem with your rights with your files.
Extract : How to run Jenkins under a different user in Linux (Redhat)
To change the jenkins user, open the /etc/sysconfig/jenkins (in debian this file is created in /etc/default) and change the JENKINS_USER to whatever you want. Make sure that user exists in the system (you can check the user in the /etc/passwd file ).
$JENKINS_USER="manula"
Then change the ownership of the Jenkins home, Jenkins webroot and logs.
chown -R manula:manula /var/lib/jenkins
chown -R manula:manula /var/cache/jenkins
chown -R manula:manula /var/log/jenkins
精彩评论