2016-04-29 2 views
4

Мне нравится концепция MultiConfiguration через вкладку «Параметры» в TFS 2015 TeamBuild. Но я не хочу, чтобы полученная «матричная сборка» применима к каждому шагу определения сборки.Как вы можете сделать несколько вариантов конфигурации TeamBuild 2015 не применимыми ко всем шагам?

Обычно мы хотим запускать пользовательские шаги «пост VS SLN» only once после каждой конфигурации. И мы хотим, чтобы артефакты, созданные с этих шагов, были «сброшены» only once после завершения шагов после компиляции.

Прямо сейчас, используя эту функцию MultiConfiguration, каждый повтор каждого рецепта сборки повторяется для каждой комбинации (как правило, BuildPlatform и BuildConfiguration).

Есть ли способ сделать MultiConfiguration применимым только к этапам Visual Studio Build? Я думаю, что в качестве резервной копии мы можем просто не использовать MultiConfiguration и добавить шаг сборки Visual Studio для каждой комбинации BuildPlatform и BuildConfiguration. Хотя это немного хромает.

ответ

4

Ну, как вы можете увидеть расширить описание под Multi-конфигурации: Построить несколько конфигураций с теми же шагами.

enter image description here

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

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

UserVoice: https://visualstudio.uservoice.com/forums/330519-team-services

+0

Сделка в том, что я хочу, чтобы матрица платформы построения/конфигурации применялась к некоторым этапам, например Visual Studio Build, но некоторые шаги, такие как сценарий PowerShell для запуска InstallShield, должны быть одноразовыми, которые происходят после * всех * всех комбинаций платформы/конфигурации были построены. Благодаря ссылке на uservoice. Я отправлю что-то там, а также через наш аккаунт. –

1

Это в настоящее время не представляется возможным. MultiConfiguration всегда строит все этапы.

Были разговоры о функции Build Chaining, из которой можно построить триггер для последующего определения сборки. Как только это будет доступно, ваша сборка запуска может инициировать сборку параллельных/многоконфигурированных.

Уже сегодня можно продолжить процесс сборки в определении выпуска. Обращаясь к первому этапу Release как к моменту завершения «завершения» шагов сборки, вы можете заставить его запускать дополнительные шаги, когда выполняются параллельные шаги.

Это не идеальный вариант, но это то, что доступно сегодня.

+0

Я был бы доволен флажком на каждом шаге, как у нас, для «Параметры управления», который говорит «Применить MultiConfiguration» или некоторые подобные формулировки. Предположим, что этот флажок, вероятно, может быть даже включен в «Параметры управления». –

+0

Нет такой опции. Помните, что при параллелизации эти сборки фактически выполняются на нескольких серверах в разных рабочих пространствах. Из результатов можно было бы получить только одно место. – jessehouwing

+0

Но это логически одна сборка. Я хочу, чтобы мои результаты тестирования/охват были связаны с этой сборкой. Шаблон построения XAML делает это тривиальным.Мне трудно поверить, что это не обычный сценарий пользователя, в котором вы хотите создать/протестировать свой код в различных комбинациях конфигурации платформы, но вам нужно выполнить шаги для упаковки всех этих двоичных файлов в файл ZIP или MSI. Я был бы очень доволен ограничениями, которые поддерживали бы параллельные сборки только на * той же машине *. Это не должно представлять проблемы. –

Смежные вопросы