Запустите сценарий развертывания из рабочего процесса сборки TFS на удаленной системе, используя только агент MSTest - PullRequest
6 голосов
/ 19 октября 2011

Мой вопрос: Как запустить сценарий развертывания из шаблона сборки TFS 2010 в удаленной системе, где работает только агент MSTest?

Я знаю, что это можно сделать, активировав раздел Развертывание в файле конфигурации параметров теста, но это недостаточно гибко. Ночью идет сборка. Когда сборка завершается успешно, сценарий развертывания помещается в место размещения. Место удаления - это дата, конкретное определение проекта и сборки. Эти параметры доступны в используемом нами шаблоне сборки TFS.

У меня нет управления лабораторией, только физический сервер. Я бы не стал портить физический сервер дополнительным агентом сборки, чтобы он выполнял только развертывание. Агент MSTest, очевидно, способен запускать сценарии развертывания, но как мне использовать эту функциональность из рабочего процесса сборки TFS. Например, можно ли использовать действие RunDeploymentScript без Lab Management?

1 Ответ

5 голосов
/ 19 октября 2011

PSExec - отличный инструмент для запуска скриптов на удаленных компьютерах.Я использую это в Team Deploy , которая позволяет устанавливать MSI на удаленные компьютеры из Team Build.Вы также можете запустить PowerShell на удаленных компьютерах, но настроить его немного сложнее.Другой вариант - использовать MSDeploy.Существует опция команды, которая позволяет запускать любую команду на удаленном компьютере.Я обычно использую действие InvokeProcess для вызова скрипта PowerShell на сервере сборки.Из сценария PowerShell я назвал MSDeploy для запуска удаленного сценария PowerShell на целевом сервере.Звучит плохо, но хорошо работает.

Вы не можете запустить RunDeploymentScript на целевом компьютере.Вы можете использовать измененный шаблон для развертывания в физической среде. Вот хороший пост об этом. .Опции, которые я упомянул выше, не нуждаются в каком-либо агенте.Вы можете использовать операцию управления лабораторией ExecuteRemoteTestRun без Lab Management для запуска тестов MTM с помощью Test Agent с помощью Controller Controller, зарегистрированного в коллекции проектов (Test Manager).

Сообщите мне, если у вас есть какие-либо вопросына любой из этих вариантов.

...