Сбои сборки TFS из-за того, что CSPack не находит файлы - PullRequest
0 голосов
/ 17 июня 2011

Я использую TFS для создания проекта Azure, включая веб-роль ASP.NET MVC 3.

В настоящее время мои сборки завершаются с ошибкой: -

C: \ Program Files (x86) \ MSBuild \ Microsoft \ Cloud Service \ 1.0 \ Visual Studio 10.0 \ Microsoft.CloudService.targets (202): не удалось найти часть пути ...

За ним следует путь к файлу с именем «WaIISHost.exe.config» в папке «{AzureProject} \ role \ {WebRole} \ x64 \».

Я проверил на сервере сборки и, действительно, этот файлне существует.Фактически, весь каталог "{webRole} \ x64 \", по-видимому, не был создан.Каталог также не создается при сборке на моей собственной машине.Я создал новый проект Azure с помощью мастера (с веб-ролью MVC 2, также созданной мастером), и каталог для этого тоже не был создан.

Строка 202 в Microsoft.CloudService.targets выглядит так:вызов утилиты CSPack, которая, по-видимому, пытается упаковать WebRole для развертывания.Он ожидает файлы в каталоге "... \ x64" и не находит их - отсюда сбой сборки.

Несмотря на «отсутствующие» файлы, я могу создавать и публиковать файлы со своего компьютера.Я получаю ошибки только на сервере сборки.

  • Есть идеи, почему каталог "... \ x64" не создается для моей веб-роли?

  • Можно ли поручить CSPack не искать эти файлы?

  • Что зависит от того, как CSPack выполнил свою работу во время сборки?Если я удалю вызов CSPack из файла .targets, будут ли какие-либо последствия?

Редактировать

Часть журнала, которая не выполняетсяэто: -

ModelFile            is  (TaskId:310)
OutputDirectory      is C:\Builds\2\GBC\GBC - CI Build\Binaries\GBC.Web.Azure.csx\ (TaskId:311)
PackRoles            is C:\Builds\2\GBC\GBC - CI Build\Sources\GBC\GBC.Web.Azure\obj\Release\GBC.Web.Site\, Name=GBC.Web.Site, EntryPoint=GBC.Web.Site.dll, SourceDir=C:\Builds\2\GBC\GBC - CI Build\Sources\GBC\GBC.Web.Site\ (TaskId:312)
RoleProperties       is GBC.Web.Site, EntryPoint=GBC.Web.Site.dll, TargetFrameworkVersion=v4.0 (TaskId:313)
ServiceDefinitionCopy is ServiceDefinition.build.csdef (TaskId:314)
ServiceConfigurationCopy is C:\Builds\2\GBC\GBC - CI Build\Binaries\ServiceConfiguration.cscfg (TaskId:315)
Calling ServicePack (TaskId:316)
Using "CSPack" task from assembly "C:\Program Files (x86)\Windows Azure SDK\v1.4\bin\Microsoft.ServiceHosting.Tools.MSBuildTasks.dll".
Task "CSPack" (TaskId:317)
Searching for imported module Diagnostics at C:\Program Files (x86)\Windows Azure SDK\v1.4\bin\plugins\Diagnostics\Diagnostics.csplugin... (TaskId:317)
Copying 'C:\Builds\2\GBC\GBC - CI Build\Sources\GBC\GBC.Web.Azure\obj\Release\GBC.Web.Site\' to C:\Builds\2\GBC\GBC - CI Build\Binaries\GBC.Web.Azure.csx\roles\GBC.Web.Site\approot... (TaskId:317)
Copying 'C:\Program Files (x86)\Windows Azure SDK\v1.4\bin\runtimes\base\x86' to C:\Builds\2\GBC\GBC - CI Build\Binaries\GBC.Web.Azure.csx\roles\GBC.Web.Site\base\x86... (TaskId:317)
Copying 'C:\Program Files (x86)\Windows Azure SDK\v1.4\bin\runtimes\diagnostics\x86' to C:\Builds\2\GBC\GBC - CI Build\Binaries\GBC.Web.Azure.csx\roles\GBC.Web.Site\diagnostics\x86... (TaskId:317)
C:\Program Files (x86)\MSBuild\Microsoft\Cloud Service\1.0\Visual Studio 10.0\Microsoft.CloudService.targets(202,5): error : Could not find a part of the path 'C:\Builds\2\GBC\GBC - CI Build\Binaries\GBC.Web.Azure.csx\roles\GBC.Web.Site\base\x64\WaIISHost.exe.config'. [C:\Builds\2\GBC\GBC - CI Build\Sources\GBC\GBC.Web.Azure\GBC.Web.Azure.ccproj]
Done executing task "CSPack" -- FAILED. (TaskId:317)

Похоже, это проблема с CSPack - он копирует файлы из Program Files ... \ bin \ runtimes \ base \ x86, но не из ... \ x64, тогдаон ожидает что-то в целевой директории ... \ x64.Возможно, что-то делать с настройкой CSPack?Определенно, похоже, что MSBuild не создает эти файлы.

Ответы [ 2 ]

1 голос
/ 22 июня 2011

удалось исправить.

Если вы пытаетесь построить проекты Azure на сервере и выполняете инструкции по адресу: - http://bartwullems.blogspot.com/2011/05/building-azure-solutions-on-your-build.html - убедитесь, что если ваш сервер 64-битный, вы скопируете файлы с 64- бит машина. Если у вас есть 32-битный SDK на 64-битной машине, это не понравится!

Кроме того, вы можете использовать установщик веб-платформы для установки Azure SDK.

1 голос
/ 20 июня 2011

Можете ли вы предоставить подробный вывод MSBuild и опубликовать его (опция для вашего типа сборки)?

Обычно, когда папки не создаются, это связано с проблемой конфигурации или отсутствием разрешений.

MS делает хорошую работу, разбивая то, что делает CSPack здесь .

Не уверен, поможет ли что-нибудь из этого, но это, по крайней мере, отправная точка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...