Как эффективно разработать пользовательские действия для Team Build 2010?

#tfs #tfsbuild #custom-activity

#tfs #tfsbuild #пользовательская активность

Вопрос:

Чтобы создать пользовательское действие рабочего процесса для Team Build 2010, я должен создать библиотеку классов, которая будет содержать мои пользовательские действия, и еще одну для настройки процесса сборки (workflow).

Мой рабочий поток разработки таков :

  • напишите код для пользовательских действий
  • создайте пользовательские действия
  • удалите сборку пользовательских действий из системы управления версиями
  • проверка эффективного удаления файла в системе управления версиями
  • добавьте новую версию сборки в систему управления версиями
  • проверка эффективного добавления сборки в систему управления версиями
  • и, наконец, протестируйте обновленное определение сборки!

и затем повторяйте все эти шаги каждый раз, когда я хочу протестировать модификацию своих пользовательских действий…

Есть ли способ выполнить эти шаги эффективным способом, чтобы получить гораздо лучший опыт разработки?

Ответ №1:

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

Вот пример такого файла сценария:

 cd c:YourLocalPathForYourCustomBinariesTFS2010CustomBuildBinaries 
"C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDEtf.exe" checkout /lock:none /recursive *.dll
copy C:YourBuildOutputLocationYourBuildOutput.dll c:YourLocalPathForYourCustomBinariesYourBuildOutput.dll
"C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDEtf.exe" checkin 
  

Обратите внимание на «Изменить каталог» в первой строке. Это должна быть папка на вашем локальном компьютере, для которой у вас уже есть сопоставление с рабочей папкой, в противном случае вам нужно будет внести изменения в сценарий, чтобы включить создание рабочей области и т.д. Если у вас уже есть эта папка, отображенная в TFS, она будет разрешена автоматически.

Затем вы можете запустить этот скрипт через командное окно Visual Studio, когда захотите протестировать в контексте сборки с помощью команды shell:

 shell /c c:YourScriptLocationYourBatchFileName.cmd
  

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