Как создавать пакет в одиночку развертывания, используя TFS

StackOverflow https://stackoverflow.com//questions/9617767

  •  09-12-2019
  •  | 
  •  

Вопрос

Мне просто нужно создать пакет веб-развертывания, используя сборку TFS и не хочу автоматически развертывать его в IIS.

Я добавил ниже два параметра в определении сборки -> MSBuild Arguments

/ p: createpackageonpublish= true / p: deployonbuild= true

PROBELM Я не получаю запись ZIP в локате Drop и получения ошибки ниже.

C: \ Программа Файлы \ msbuild \ Microsoft \ Visualstudio \ v10.0 \ web \ microsoft.web.publishing.targets (1657): задача «Mapuritoiiswebserver» неожиданно ошибалась. System.runtime.interopservices.Comexception (0x80005000): неизвестен Ошибка (0x80005000) в System.directoryservices.directoryentry.bind (Boolean Rapififail)

в System.directoryservices.directoryentry.bind () в System.directoryservices.directoryentry.get_iscontainer () в System.directoryservices.directoryentries.Checkiscontainer () в System.directoryservices.directoryentries.find (строковое имя, строка Schemaclassname) на Microsoft.Web.publishing.tasks.mapuritoiiswebserver.get_iismajorversion () в Microsoft.Web.publishing.tasks.mapuritoiiswebserver.execute () в Microsoft.build.backend.taskexecuventhost.microsoft.build.backend.itaskexecutionhost.execute () в Microsoft.build.backend.taskbuilder.executeInstantTateTask (itaskexecutionhost. TaskeExuctionHost, TaskLoggingContext TaskLoggingContContext, Taskhost TaskHost, Attembucket Bucket, TaskexecutionMode Howtoexecutisk, Boolean & taskresult)

Что может быть проблемой?


Теперь я получаю разную ошибку

Ошибка: Задача веб развертывания не удалась. (Объект типа «Манифест» и PATH 'E: \ TFS \ DEV \ PATHION' E: \ TFS \ DEV \ phationsname \ Binaries \ Release_publishedWebsites \ applicationname_package \ prienteName.sourCemanifest.xml 'не может быть создан.)

Ошибка: Объект типа «Манифест» и PATH 'E: \ TFS \ DEV \ PATHION' E: \ TFS \ DEV \ applicationname \ Binaries \ Release_publishedwebsites \ applicationname_package \ applicationname.sourcemanifest.xml не может быть создан.

Ошибка: одна или несколько записей в манифесте «SiteMifest» недействительны.

Ошибка: Приложение '/ ApplicationName' не существует в сайте «Веб-сайт по умолчанию».

Это было полезно?

Решение

Я считаю, что вам просто нужно добавить цель «пакет» на вашу сборку для веб-проекта.

 /t:Build;Package
.

Я использую эту цель в моем TFS, чтобы создать папку _PubliseWeachWebsite с пакетом ZIP на Zip, теперь с успехом.

Редактировать: Объяснение цели пакета Если вы посмотрите на файл CSPROJ для своего веб-приложения в качестве файла XML, вы увидите, что он включает в себя следующее

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
.

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

 <Import Project="..\Web\Microsoft.Web.Publishing.targets" Condition="Exists('..\Web\Microsoft.Web.Publishing.targets')" />
.

Этот файл содержит определение процесса веб-развертывания для MSBUILD. Вы увидите, что он объявляет переменную для обозначения «цели» для вызова в развертывании как «пакет»

 <DeployDefaultTarget Condition="'$(DeployDefaultTarget)'==''">Package</DeployDefaultTarget>
.

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

Долгая история, хотя, если вы звоните

 msbuild yourwebapplication.csproj /t:Package /p:Configuration=Release 
.

Он должен построить вам пакет веб-развертывания для конфигурации выпуска вашего приложения.

Другие советы

У меня была такая же проблема, и единственное, что решило, что это было:

  1. Откройте вашу консоль управления IIS
  2. Перейти к вашему веб-сайту по умолчанию
  3. Добавить новое приложение с именем «ApplicationName»
  4. Запускайте msbuild снова.Это будет работать.

Возможный дубликат msbuild deployonbuild= true не публикация

У меня была такая же проблема с Atlassian Bamboo, и это исправлено для меня: с машины с визуальной студией Копировать содержимое «C: \ Program Files (x86) \ msbuild \ Microsoft \ Visualstududio \ v10.0 \ web«На сервер сборки TFS.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top