Не могу сесть на грабли на раба Дженкинса - PullRequest
3 голосов
/ 21 февраля 2012

Я настроил jenkins Ubuntu Slave и хочу запустить на нем свою сборку Gradle (с плагином Gradle).Проблема в том, что при запуске задания сборки jenkins я получаю:

 $ gradle --no-daemon --info clean build
 FATAL: command execution failed
 java.io.IOException: Cannot run program "gradle" (in directory "/var/jenkins/workspace/dadi"): java.io.IOException: error=2, No such file or directory
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)
    at hudson.Proc$LocalProc.<init>(Proc.java:244)
    at hudson.Proc$LocalProc.<init>(Proc.java:216)

При запуске той же команды gradle в командной строке ведомого (того же пользователя), она выполняется успешно.

1 Ответ

4 голосов
/ 22 февраля 2012

Нашли обходное решение!Я начал использовать упаковщик gradle для запуска сборки gradle.Я сделал 2 вещи:

  1. следовал инструкциям на этой странице , чтобы создать gradlew (и другие файлы), и проверил их в моем хранилище
  2. в jenkinsПлагин gradle отметил шаг сборки для использования оболочки gradle.

    task wrapper(type: Wrapper) { gradleVersion = '2.0' }

Эта строка выше создаст папку .gradle и для загрузки потребуется gradle версия (упомянутая)в задаче) каждый раз, когда запускается сборка gradle, это означает, что больше не нужно регистрировать папку .gradle в вашем хранилище.

Также пришлось переименовать gradlew в gradle.batпоскольку плагин jenkins gradle попытается запустить gradle.bat даже в Linux.Вот и все.рабочий.

...