Назад | Перейти на главную страницу

TFS Run Shell не работает: не найдено bash: null

Я пытаюсь запустить сценарий bash в выпуске в TFS 2015. Для этого я использую «сценарий оболочки» - задание.

Содержание:

#!/bin/bash
echo "Start SSH"

ssh user@ip << EOF
    echo "Unzip"
    unzip -o -d A B.zip
    rm B.zip
    cp -r A/. B
    rm -rf A
    echo "Finished"
EOF

Я пробовал сценарий на моем bash, и ist работает правильно, но при запуске выпуска у меня есть:

2018-08-29T09: 04: 08.7988672Z Запуск задачи: Shell Script $ (System.DefaultWorkingDirectory) / Build Magento / magento / scripts / build.sh 2018-08-29T09: 04: 08.7988672Z Установить для workingFolder значение по умолчанию: D: \ АгентA \ tasks \ ShellScript \ 1.0.17
2018-08-29T09: 04: 08.9863750Z ## [отладка] путь проверки: D: \ AgentA \ tasks \ ShellScript \ 1.0.17 \ task.json
2018-08-29T09: 04: 08.9863750Z ## [debug] установить файл ресурсов в: D: \ AgentA \ tasks \ ShellScript \ 1.0.17 \ task.json
2018-08-29T09: 04: 08.9863750Z ## [отладка] system.culture = en-US
2018-08-29T09: 04: 08.9863750Z ## [отладка] загрузить строки из: D: \ AgentA \ tasks \ ShellScript \ 1.0.17 \ task.json
2018-08-29T09: 04: 08.9863750Z ## [debug] загрузить строки loc из: D: \ AgentA \ tasks \ ShellScript \ 1.0.17 \ Strings \ resources.resjson \ en-US \ resources.resjson 2018-08- 29T09: 04: 08.9863750Z ## [отладка] путь проверки: null
2018-08-29T09: 04: 08.9863750Z ## [debug] загрузить строки из: D: \ AgentA \ tasks \ ShellScript \ 1.0.17 \ node_modules \ vsts-task-lib \ lib.json 2018-08-29T09: 04 : 08.9863750Z ## [debug] загрузить строки loc из: D: \ AgentA \ tasks \ ShellScript \ 1.0.17 \ node_modules \ vsts-task-lib \ Strings \ resources.resjson \ en-US \ resources.resjson 2018-08 -29T09: 04: 08.9863750Z ## [отладка] результат задачи: сбой
2018-08-29T09: 04: 08.9863750Z Не найдено bash: null
2018-08-29T09: 04: 09.0019981Z Завершающая задача: ShellScript
2018-08-29T09: 04: 09.0176245Z ## [ошибка] Ошибка сценария оболочки задачи. Это привело к сбою работы. Подробности смотрите в журналах задачи.

В конце концов, Bash не на TFS 2015?

Итак, у меня есть обходной путь. Я использую Plink в CommandLine-Job. Работа вызывает Plink, и Plink подключается к цели и выполняет указанные команды. Plink.exe должен находиться в TFS.