2015-09-02 7 views
0

Существует несколько процессов сборки, которые должны запускаться на одной и той же базе кода.
не в случайном порядке, но в специально расположенных последовательности, один за другим:Как вызвать определение сборки после завершения определения другой сборки?

┌──────────────┐ ┌────────────────────┐ ┌──────────────────────┐ 
│ compile code │ -> │ check the binaries │ -> │ Do something else... │ 
└──────────────┘ └────────────────────┘ └──────────────────────┘ 

Как ты это делаешь?

+0

Какую версию TFS вы используете? –

+0

Должно ли это быть отдельное определение сборки? Или вы могли бы просто решить это, выполнив powershell после того, как шаг «код компиляции» будет успешным? – jessehouwing

+0

@amit: v12.0.21106.0 – Pixar

ответ

0

необходимо отредактировать файл defaulttemplate.xml.

Создайте новое действие в файле defaulttemplate.xaml и добавьте аргумент для вызова powershell или пакетного скрипта. В тех сценариях вы можете запустить команду для вызова другого определения сборки следующим образом:

TFSBuild начать HTTP: \ myserv: 8080/TFS MYPROJ MyBuild/msBuildArguments: "/ р: RestoreSQLServer = Lamdev10"

+0

Можем ли мы сделать это без создания дополнительных файлов? Возможно, эту команду TFSBuild можно добавить в процессе сборки WWF-файла ... – Pixar

+0

WWF-файл .. Не знаю об этом. Но с tfs 2010 года появилась концепция рабочего процесса. По умолчанию любое определение сборки указывает на файл defaulttemplate.xaml, который содержит рабочий процесс для этого определения сборки (как будет работать определение вашей сборки). Если вам нужна дополнительная функциональность, вам придется отредактировать этот файл. –

0

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

Для получения дополнительной информации о том, как создать WCF проекта подписаться TFS событие, пожалуйста, проверьте: http://www.ewaldhofman.nl/post/2010/08/02/How-to-use-WCF-to-subscribe-to-the-TFS-2010-Event-Service-rolling-up-hours.aspx

Для очереди сборки в программе, вы можете использовать метод IBuildServer.QueueBuild.