Дженкинс не запускает команды sh на windows - PullRequest
1 голос
/ 07 марта 2020

При запуске sh -команды внутри конвейера jenkins, сами команды не выполняются.

Оболочка является частью моей переменной PATH, поэтому команда cmd-запрос выполняется, но это не команды.

Код внутри конвейера:

sh "echo Hello World"
bat "echo Hello World"

Результат:

[Pipeline] sh
Microsoft Windows [Version 10.0.18362.657]
(c) 2019 Microsoft Corporation. Alle rechten voorbehouden.

C:\Program Files (x86)\Jenkins\workspace\testCI>
[Pipeline] bat

C:\Program Files (x86)\Jenkins\workspace\testCI>echo Hello World 
Hello World

Как заставить работать команды sh? Я бы предпочел не полагаться на bat, так как этот конвейер (и jenkins-workspace) будут перемещены в среду UNIX

Ответы [ 2 ]

0 голосов
/ 08 марта 2020

Поскольку это агент Windows 10, я рекомендую установить подсистему Linux, поскольку в будущем вы планируете перейти в аналогичную среду. Однако для этого потребуется переустановить Jenkins в этой подсистеме, но он будет вести себя так же, как и в любой другой системе UNIX вне шлюза, без необходимости конфигурировать и управлять сторонним программным обеспечением, которое не гарантированно будет работать на * 1018. * (с Jenkins), как это происходит в UNIX системах.

Вы можете установить новый мастер Jenkins в подсистему Linux, не затрагивая мастер Windows, а затем перенести пользователей, когда он настроен так, как вы хотите.

Установка WSL

0 голосов
/ 07 марта 2020

Попробуйте установить git bash или cygwin. Исполняемые файлы Sh и Bash поставляются по умолчанию вместе с ними.

Вы можете использовать путь к этому файлу sh здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...