2017-05-13 2 views
0

나는 appveyor를 사용하여 웹 사이트를 구축하고 배포하려고합니다. 생성 된 사이트는 Azure 웹 응용 프로그램의 gitrepo에 푸시 된 다음 해당 파일을 배포합니다.git push에 대한 원격 메시지로 인해 Appveyor 빌드가 실패합니다.

그러나 문제는 azure 서버가 어떤 git를 stderr로 반환하는 동안 피드백을 제공합니다. 도움이되지 않았다 --quiet--porcelain를 사용

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

.

PowerShell $ErrorActionPreference= 'silentlycontinue'에서이 값을 설정하면 오류가 하나만 남았습니다. 그리고 Build는 여전히 실패합니다. 내가 억제 할 수없는 마지막 오류가

Command executed with exception: remote: Deployment successful.   

이 사이트는 실제로 배포하고 모든 실패와 내가 메일을 수신으로 AppVeyor에서 빌드가 표시되어 제외하고 괜찮습니다.

실제 문제를 놓치기 쉽지 않습니다.

답변

0

-q 스위치 (조용함)를 git push 명령에 추가하면 도움이되는지 확인할 수 있습니다.

+0

'--quiet'를 사용하면 도움이되지 않았습니다. 완전한 명령은'git push -q --porcelain --force origin master'입니다. – lokimidgard

+0

OK, 어떻게 AppVeyor 측에서 정확하게 호출합니까? 빌드 (또는 appveyor.yml)에 대한 링크를 삭제할 수 있습니까? –

0

리모컨의 출력을 억제하는 방법을 찾지 못했습니다. 더 이상 인쇄 오류 얻을 것이다 메시지를 전송하지 않게 :(
는 하지만 서버를 구성 할 수 있습니다. 푸른에

을 배포 폴더 편집에서 배포 훅 (d:\home\site\reposetory\.git\hooks을).

원래 스크립트가 있었다 :

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

그때 null로 표준 스트림을 리디렉션 새로운 스크립트는 다음과 같습니다.

#!/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

원래 나는 PowerShell에서 git push (으)로 전화하고 있음을 이해합니다. CMD에서이 작업을 시도해보십시오. stdErr에 기록 된 출력에 민감하지 않습니다.