#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
Вы даже можете запускать свой скрипт в событии после сборки, что гарантирует, что при каждой сборке сборки он будет возвращен в расположение пользовательских сборок сборки.