Дженкинс - заводной скрипт вернул код выхода 126 - PullRequest
1 голос
/ 26 марта 2019

Я получил очень простой Groovy-скрипт в Jenkins, работающий в конвейере

Для этого кода:

sh 'chmod +x gradlew'

sh './gradlew build --info'

Я получаю эту ошибку:

[Pipeline] sh
+ ./gradlew build --info
/var/jenkins_home/workspace/Pipeline with Gradle@tmp/durable-646d54ad/script.sh: line 1: ./gradlew: Permission denied
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
ERROR: script returned exit code 126
Finished: FAILURE

Что мне здесь не хватает?

1 Ответ

0 голосов
/ 27 марта 2019

Похоже, у вас нет прав на запуск gradlew из вашего сообщения об ошибке.

line 1: ./gradlew: Permission denied

Вы можете сделать следующее:

  1. SSH в машину Дженкинса
  2. Переключиться на пользователя jenkins sudo su jenkins -
  3. Проверьте права доступа к файлу gradlew с помощью команды ls -l /var/lib/jenkins/workspace/Pipeline with Gradle
  4. Запустите connand ./gradlew build --info из терминала и убедитесь, что он работает, прежде чем снова запустить задание

Я использую декларативные конвейеры с использованием groovy, и он работает нормально. На машине установлены Grails, и пользователь jenkins может запустить команду. Я использую:

sh './gradlew dependencies && ./gradlew assemble && find ./ -name "*.war"'

Пожалуйста, добавьте комментарий, если у вас есть еще вопросы ...

...