2017-05-13 15 views
0

私は、appveyorを使ってWebサイトを構築し、展開しようとしています。 作成したサイトは、Azure Webアプリケーションのgitrepoにプッシュされ、ファイルが展開されます。git pushのリモートメッセージがAppveyorのビルドに失敗する

ただし、azureサーバーはgitが標準エラー出力に戻ってくる間にフィードバックを返します。 --quiet--porcelainを使用して

remote: Omitting next output lines...   
remote: Finished successfully.   
remote: Running post deployment command(s)...   
remote: Deployment successful. 

は助けにはなりませんでした。

これをPowerShell $ErrorActionPreference= 'silentlycontinue'に設定すると、1つのエラーを除いてすべてが抑制されます。ビルドはまだ失敗します。私は抑えることができない最後のエラーは

Command executed with exception: remote: Deployment successful.   

サイトが実際に配備され、すべてが失敗したと私はメールを受信ようAppVeyorでビルドがマークされている以外、結構です。

実際の問題を紛失するのは面倒で簡単です。

答えて

0

switch(quiet)をgit pushコマンドに追加してみてください。

+0

'--quiet'を使っても役に立ちませんでした。完全なコマンドは 'git push -q --porcelain --force origin master'です。 – lokimidgard

+0

これはAppVeyor側でどうやって呼びますか?ビルド(またはappveyor.yml)へのリンクを削除してください。 –

0

私はリモコンの出力を抑制する方法を見出していません。 :(展開フォルダの編集の下のAzure上で
しかし、それはもはやエラーに印刷されますメッセージを送信しませんので、私は、サーバーを設定することができます。

展開フック(d:\home\site\reposetory\.git\hooks)。

元のスクリプトにして:

#!/bin/sh 
read i 
echo $i > pushinfo 
"$KUDU_EXE" "$KUDU_APPPATH" "$KUDU_MSBUILD" "$KUDU_DEPLOYER" 

私は、nullにSTDストリームをリダイレクト新しいスクリプトは次のようになります。

#!/bin/sh 
read i 
echo $i > pushinfo 
if ! "$KUDU_EXE" "$KUDU_APPPATH" "$KUDU_MSBUILD" "$KUDU_DEPLOYER" > /dev/null ; then 
    echo 'Build on Azure Faild' 
fi 

enエラーが発生しても、クライアントにエラー出力が送信されるとは思いますが、わかりません。だから私は小切手を追加しました。ちょうど何かが間違っていたことをクライアントにエコーします。 AppVeyorビルドに失敗します。

0

元来私はgit pushをPowerShellから呼び出していることを理解しています。 CMDからこれを行うようにしてください。これはstdErrに書き込まれた出力に敏感ではありません。

関連する問題