плагин hudson filesystem-scm Параметр 'directory' не является каталогом - PullRequest
3 голосов
/ 08 февраля 2011

Я пытаюсь переместить содержимое C:/devel/Hudson/urmsSettopControl в slave1 C:/devel/HudsonSlave/workspace/Power Cycle, и я получаю эту ошибку, я пытался / \ и даже оставляю \ в концеDIR путь безрезультатно.Что я тут не так делаю?

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

Ответы [ 2 ]

1 голос
/ 25 июля 2012

У меня была та же проблема в Linux, и я решил ее, установив надлежащие разрешения для всех каталогов в пути.

0 голосов
/ 28 июня 2019

Плагин Hudson filesystem-scm предназначен для локального тестирования на вашем компьютере.Лучшее решение - выполнить непосредственно Jenkins с вашей учетной записью Linux.Плагин Hudson filesystem-scm может без проблем работать с вашими правами на ваши файлы.

Извлечение: Как запустить Jenkins под другим пользователем в Linux (Redhat)

Чтобы изменить пользователя jenkins, откройте / etc / sysconfig / jenkins (в debian этот файл создается в / etc / default) и измените JENKINS_USER на любое другое.Убедитесь, что пользователь существует в системе (вы можете проверить его в файле / etc / passwd).

$JENKINS_USER="manula"

Затем измените владельца дома Jenkins, руткита Jenkins и журналов.

chown -R manula:manula /var/lib/jenkins 
chown -R manula:manula /var/cache/jenkins
chown -R manula:manula /var/log/jenkins
...