ReleaseManagementBuild.exe для развертывания сборок с помощью CMD (командная строка)

Я пытаюсь выполнить ReleaseManagementBuild.exe, используя код С # (используя cmd).

Я получил следующую помощь: -

ReleaseManagementBuild release {[-tfs teamFoundationServerUrl -tp teamProjectName -bd buildDefinitionName -bn buildNumber] | [-rt ReleaseTemplateName -pl PackageLocation [-an AppendComponentName] [-ff FireAndForget]]} [-ts TargetStage]

Где:

-tfs [Режим TFS] URL-адрес Team Foundation Server. URL-адрес должен включать коллекцию, если не по умолчанию. -tp [Режим TFS] Имя командного проекта, для которого была запущена сборка. -bd [Режим TFS] Имя определения сборки, используемого для сборки. -bn [Режим TFS] Номер сборки, представляющий конкретный экземпляр сборки, который сгенерировал компоненты приложения для выпуска.

-rt [Package Location Mode] Имя шаблона выпуска, используемого для создания нового выпуска. -pl [Package Location Mode] Местоположение пакета компонентов -ts [Необязательно] Имя целевой стадии, на которой выпуск должен быть остановлен. -ff [Package Location Mode] [Необязательно] Если установлено значение True, команда вернется, не дожидаясь развертывания на первом этапе. По умолчанию False: дождитесь результата. -an [Package Location Mode] [Необязательно] В случае, если в шаблоне выпуска есть компонент, который 'Builds External', если задано значение true, имя компонента будет добавлено в конце местоположения пакета.

Примеры:

ReleaseManagementBuild release -tfs http://localhost:8080/tfs/DefaultCollection -tp «Мой проект» - bd "QA_Dev_MyApp_Manual" -bn "QA_Dev_MyApp_Manual_20101119.8"

ReleaseManagementBuild release -tfs http://localhost:8080/tfs/DefaultCollection -tp «Мой проект» - bd "QA_Dev_MyApp_Manual" -bn "QA_Dev_MyApp_Manual_20101119.8" -ts "DEV"

ReleaseManagementBuild release -rt "Мой шаблон выпуска" -pl "// share / drop / version"

ReleaseManagementBuild release -rt "Мой шаблон выпуска" -pl "// share / drop / version" -ts "DEV" -ff False -an True

Я хочу передать эти три параметра в сборку: -

1) Имя шаблона выпуска, использованного для создания нового выпуска. 2) Место размещения сборки 3) Номер сборки - я обычно развертываю сборку, которая не является последней.

Итак, мой вопрос в том, как я могу освободить, передав все три параметра.

Примечание: - Мне удалось развернуть следующее: -

release -rt MY_ReleaseTemplate_RT -pl \\Server\BuildDrop\Dev1\BuildDefinitionName\BuildNumber

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


person Vikas Goyal    schedule 06.04.2018    source источник
comment
Какую версию TFS и управления выпусками вы используете?   -  person Cece Dong - MSFT    schedule 16.04.2018
comment
Клиент управления выпусками для Visual Studio 2015 и Сервер управления выпусками для TFS 2015   -  person Vikas Goyal    schedule 19.04.2018
comment
Поскольку вы используете TFS 2015, рекомендуется использовать службу выпуска. Функции управления выпусками были интегрированы в концентратор сборки и выпуска в TFS 2015 с обновлением 2 и более поздних версий, а также в VSTS. Более новая веб-версия является рекомендуемой альтернативой серверной и клиентской версии: docs.microsoft.com/en-us/vsts/build-release/overview?view=vsts   -  person Cece Dong - MSFT    schedule 20.04.2018


Ответы (1)


Место размещения сборки будет автоматически определено, если вы укажете номер сборки; вам не нужно указывать место перетаскивания. Вы можете указать любой желаемый номер сборки, это не обязательно должна быть последняя сборка.

Просто следуйте шаблону, заданному в первом примере, ReleaseManagementBuild release -tfs http://localhost:8080/tfs/DefaultCollection -tp "My Project" -bd "QA_Dev_MyApp_Manual" -bn "QA_Dev_MyApp_Manual_20101119.8".

Другого способа получить номер сборки в выпуске нет; либо выпуск привязан к определенному определению сборки и номеру, либо к расположению UNC. Не может быть и того, и другого.

Также стоит отметить, что RM Server устарел. Пришло время начать планировать путь миграции на современную версию TFS и современные возможности сборки / развертывания, которые присутствуют.

person Daniel Mann    schedule 06.04.2018
comment
Я действительно использовал схему, которую вы сказали, и сделал релиз с использованием местоположения UNC. Но если после развертывания кто-то захочет проверить, был ли развернут правильный номер сборки или нет. Тогда КАК я могу проверить развернутый номер сборки - person Vikas Goyal; 09.04.2018
comment
Как я уже сказал, вы не можете сделать и то, и другое. Релиз происходит либо из указанного пользователем местоположения UNC, либо из конкретной сборки, но не из обоих сразу. Если вы укажете сборку, у вас будет номер сборки. Если вы укажете путь UNC, вы этого не сделаете и не сможете. - person Daniel Mann; 09.04.2018
comment
Хорошо, тогда если я использую UNC для развертывания кода, и кто-то сообщает, что я развернул неправильный номер сборки, то как я могу сообщить ему исходный UNC для моего выпуска. Есть ли способ для регистрации или проверки местоположения UNC, откуда делается выпуск? - person Vikas Goyal; 10.04.2018
comment
@VikasGoyal Вы можете рассмотреть возможность использования службы выпуска вместо командной строки для создания определения выпуска. Таким образом, каждый выпуск будет иметь журнал для отслеживания процесса выпуска: docs.microsoft.com/en-us/vsts/build-release/concepts/ - person Cece Dong - MSFT; 20.04.2018