Я запускаю сценарий MSBuild для компиляции моего проекта и iv устанавливаю путь к артефакту в общих настройках TeamCity. Мои сценарии MSBuild сначала создают, а затем создают zip-файл. Я хотел бы добавить этот zip-файл в качестве артефакта, но когда я запускаю сборку на TeamCity, я получаю эту ошибку:
[17:44:56]: [CreateNightlyZip] Zip
[17:44:56]: [Zip] C:\BuildAgent\Build\Build.proj(55, 5): The process cannot access the file 'C:\BuildAgent\work\c13cf8f192b25cd1\bin\Debug\20120109_Foo.PE.zip' because it is being used by another process.
Похоже, что TeamCity пытается получить zip-файл сразу после его создания, а затем мой сценарий MSBuild не может поместить файлы в него.
Вот цель MSBuild:
<Target Name="CreateNightlyZip">
<PropertyGroup>
<StringDate>$([System.DateTime]::Now.ToString('yyyyMMdd'))</StringDate>
</PropertyGroup>
<ItemGroup>
<DebugApplicationFiles Include="$(DebugPath)\**\*.*" Exclude="$(DebugPath)\*vshost.exe*" />
</ItemGroup>
<MakeDir Directories="$(NightlyBuildPath)"/>
<Zip Files="@(DebugApplicationFiles)"
WorkingDirectory="$(DebugPath)"
ZipFileName="$(NightlyBuildPath)\$(StringDate)_$(NightlyZipName).zip"
ZipLevel="9" />
</Target>
Кто-нибудь сталкивался с такой проблемой или как ее решить?
РЕДАКТИРОВАТЬ: Странно то, что когда я создаю zip-файл в корне папки извлечения, все работает, но когда я создаю его в папке Debug, я получаю эту ошибку.