2008-10-02 11 views
3

Я пытаюсь использовать проект Web-развертывания (VS 2008) в решении TFS для развертывания веб-сайта на сервере сборки (TFS 2008) для запуска веб-узла тесты. По какой-то причине, что я еще не могу понять, он не может создать виртуальный каталог:Доступ запрещен при создании виртуального каталога через проект веб-развертывания

Использование задачи «CreateVirtualDirectory» из сборки «C: \ Program Files \ MSBuild \ Microsoft \ WebDeployment \ v9.0 \ Microsoft.WebDeployment.Tasks.dll». Задача «CreateVirtualDirectory» Инициализация веб-сервера IIS ... C: \ Program Files \ MSBuild \ Microsoft \ WebDeployment \ v9.0 \ Microsoft.WebDeployment.targets (667,5): ошибка: доступ запрещен. C: \ Program Files \ MSBuild \ Microsoft \ WebDeployment \ v9.0 \ Microsoft.WebDeployment.targets (667,5): ошибка: Не удалось создать виртуальный каталог 'abc'. Выполнено выполнение задачи «CreateVirtualDirectory» - FAILED.

Пользователь TFSService, безусловно, находится в группе «Администраторы» на компьютере с построкой TFS (на котором работает Windows Server 2008). Я не знаю, что еще может быть неправильным. Я проверил журнал событий, там нет никаких подсказок. Я могу вручную создать виртуальный каталог на этом компьютере через консоль IIS без проблем.

Любые идеи, какими могут быть проблемы или предложения относительно того, как диагностировать это дальше?

ответ

1

у него должны быть разрешения ... вы пытались поставить TFSService в тех же группах, в которых находитесь?

1

Учетная запись TFS работает под теми же привилегиями, что и учетная запись, которую вы используете для подключения к IIS? Сделайте так, как предложил Крейг, и переместите учетную запись TFS в группы, в которых вы участвуете.

0

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

0

Я видел это, когда сервер IIS не работал на порту по умолчанию. Я бы рекомендовал проверять IIS, чтобы убедиться, что он работает на порту 80 в качестве шага для дальнейшей диагностики вашей проблемы.

0

В конечном итоге мне удалось запустить развертывание, вызвав цель сборки _CopyWebApplication для веб-приложения из моего сценария сборки TFS (после создания виртуального каталога IIS вручную). Я должен был добавить дополнительную цель, хотя бы связать файлы в проекте, которые нужно скопировать, так как встроенный объект _CopyWebApplication не включает в себя.