TFS 実行シェルが機能しません: bash が見つかりません: null

TFS 実行シェルが機能しません: bash が見つかりません: null

TFS 2015 のリリースで bash スクリプトを実行しようとしています。そのために、「シェル スクリプト」ジョブを使用しています。

コンテンツ:

#!/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 でスクリプトを試しましたが、正常に動作しました。しかし、リリースを実行すると次のようになります:

2018-08-29T09:04:08.7988672Z タスクを開始: シェル スクリプト $(System.DefaultWorkingDirectory)/Build Magento/magento/scripts/build.sh 2018-08-29T09:04:08.7988672Z 作業フォルダーをデフォルトに設定: D:\AgentA\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 ##[デバッグ]リソース ファイルを次のように設定: D:\AgentA\tasks\ShellScript\1.0.17\task.json
2018-08-29T09:04:08.9863750Z ##[debug]system.culture=en-US
2018-08-29T09:04:08.9863750Z ##[debug]次の場所から文字列を読み込みます: 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 ##[デバッグ]文字列の読み込み元: D:\AgentA\tasks\ShellScript\1.0.17\node_modules\vsts-task-lib\lib.json 2018-08-29T09:04:08.9863750Z ##[デバッグ]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 ##[error]タスク ShellScript が失敗しました。これによりジョブが失敗しました。詳細については、タスクのログを参照してください。

結局、Bash は TFS 2015 には搭載されないのでしょうか?

答え1

そこで、回避策があります。CommandLine-Job で Plink を使用しています。ジョブは Plink を呼び出し、Plink はターゲットに接続して指定されたコマンドを実行します。Plink.exe は TFS 上にある必要があります。

関連情報