2014-11-25 2 views
3

MS 차트를 사용하여 차트 이미지를 생성하는 웹 응용 프로그램이 있습니다.MS 차트 '파일'생성을 사용하면 TFS 자동화 빌드가 실패합니다.

MS 차트의 구성은 Storage=file을 사용하며 결과적으로 실행 중일 때 임시 이미지가 생성됩니다.

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets (4253): Web deployment task failed. (The file 'msc_cntr_0.txt' is in use. Learn more at: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_FILE_IN_USE.) 

내가 테스트 서버에 가서 응용 프로그램 풀을 다시 시작한 다음 작동 빌드를 다시 시도하는 경우 :

불행하게도 우리는 말을 실패 TFS 2013에서 자동화 된 빌드를 실행할 때.

이 것이 알려진 문제입니까? TFS/MSBuild에게 좀 더 적극적으로/나를 위해 AppPool을 다시 시작한다고 말하면 어떻게 든 돌아갈 수 있습니까?

+0

빌드하는 동안 물건을 직접 배포합니까? –

+0

우리는 IIS를 통해 웹 배포를 사용하여 사이트 파일을 배포합니다. – dougajmcdonald

+0

아. 따라서 : 빠른 해결책은 아니지만 WIX 또는 다른 설정 도구를 사용하여 소프트웨어를 자동으로 배포 할 수 있습니다. 최소한 WIX에는 배포 중에 응용 프로그램을 중지/시작할 수있는 기능이 있습니다. 또 다른 방법은 명령 줄 도구 (https://technet.microsoft.com/en-us/library/cc732742%28v=ws.10%29.aspx)를 통해 응용 프로그램 풀을 중지/시작하는 것입니다. 두 접근법 모두 관리자 권한이 필요합니다. –

답변

1

msc_cntr_0.txt 파일은 원격 IIS에서 차트 작성을 위해 생성되며 IIS가 실행되는 동안 잠긴 상태로 유지됩니다. 이 문제는 로컬 솔루션에 있지 않기 때문에 MSDeploy가 게시하는 동안 MSDeploy에서 삭제하려고하므로 발생합니다. VS2013에서는 게시 프로파일에 'SkipExtraFilesOnServer'설정이 있는데, 기본적으로 '거짓'입니다. 'True'로 설정하면 문제가 해결됩니다.