В чем разница между компонентом, инструментом и действием в Release Management 2015?

Я пытаюсь использовать Управление релизами в качестве инструмента для создания релизов, но мне трудно понять, в чем на самом деле разница между компонентом, инструментом и действием. Может ли кто-нибудь объяснить различия между этими тремя концепциями и то, как они взаимодействуют друг с другом?


person michael    schedule 04.08.2015    source источник


Ответы (2)


Что касается выпусков на основе агентов:

Инструменты предназначены для предоставления пользовательскому ресурсу (исполняемому файлу, сценарию PowerShell, пакетному файлу и т. д.) командной строки для выполнения указанного пользовательского ресурса и набора параметров командной строки по умолчанию. На примере встроенных ресурсов: Диспетчер IIS. Диспетчер IIS — это инструмент, который может выполнять множество различных действий IIS, в зависимости от того, как он вызывается.

Действия — это детализированные действия, зависящие от версии. Они могут быть построены поверх инструмента, чтобы обеспечить конкретное действие, использующее этот инструмент. Создать веб-сайт — это действие, построенное на основе инструмента IIS Manager. Действия отображаются на панели инструментов шаблона выпуска.

Компоненты — это развертываемые фрагменты программного обеспечения. Вы указываете относительный источник двоичных файлов из папки сборки и выбираете инструмент для запуска для установки программного обеспечения. Наиболее распространенным является инструмент «XCopy Deployer», который просто копирует двоичные файлы из папки сборки в место на целевой машине. Компоненты можно добавить в шаблон выпуска, щелкнув правой кнопкой мыши «Компоненты» и выбрав опцию «Добавить».

Вы можете использовать действия или компоненты непосредственно в шаблоне выпуска, но не инструменты.

Итак, отношения таковы:

      /-> Action -> Target server
Tool -|
      \-> Component -> Build drop and target server 

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

person Daniel Mann    schedule 05.08.2015

Я не уверен, что существует универсальное определение, не имеющее исключений, но я вижу его как:

Действия — функциональные возможности, которые не взаимодействуют со сборкой, например запуск или остановка службы (за исключением действий «Развертывание с помощью Chef» или «PS/DSC»). Используется только в шаблонах на основе агента.

Инструменты — функциональные возможности, которые взаимодействуют со сборкой и/или имеют сложную командную строку, например развертывание веб-сайта. Используется только компонентами — на основе агента.

Компоненты — на основе агента — пользователи инструментов, а также место, где указывается расположение сборки и где определяется любая замена токена. Когда компонент используется в шаблоне, инструмент обычно что-то делает со сборкой, например, XCopy Deployer копирует содержимое «Путь к пакету» в указанный путь установки.

Компоненты — vNext — позволяют указать только место сборки и любую замену токена, так как любая работа выполняется через скрипт. Компонент «используется» действиями Развертывание с помощью Chef или PS/DSC и является способом сообщить этим действиям, где получить сборку.

Теперь, когда я попытался объяснить это, я вижу, какая это путаница. В какой-то момент вы сможете обойти всю эту путаницу, поскольку совершенно новая веб-версия Release Management будет доступна с TFS 2015 Update 1 (и ранее с Visual Studio Online). Если есть возможность, стоит отложить выпуск этой версии, но это может произойти в конце этого года или в начале следующего, поскольку RTM-версия TFS 2015 еще не вышла. Если вы не можете ждать и вам нужно приступить к работе сейчас, воспользуйтесь маршрутом vNext PowerShell, чтобы упростить переход на веб-версию.

person Graham Smith    schedule 04.08.2015