Как настроить сервер сборки TFS2010 для создания справки с использованием SHFB

Я много гуглил, чтобы попытаться найти решение, но, похоже, я что-то упускаю.

Большинство статей говорят мне, что я должен изменить файл сборки (TfsBuild.proj). Но нигде не могу найти этот файл. Поиск в Google немного больше говорит мне, что он был заменен новой моделью сборки в TFS2010?

И официальная документация для ШФБ просто написано:

Измените файл сборки. В этом примере используется ежедневная сборка для создания документации:

Не указано, какой файл и как.

Может ли кто-нибудь быть добрым и пролить свет на то, как я могу настроить наш сервер сборки TFS для создания документации с помощью Sandcastle Helpfile Builder?


person jgauffin    schedule 14.12.2011    source источник


Ответы (4)


Самый простой способ сделать это — просто включить файл проекта SHFB в конфигурацию сборки. Файлы проекта SHFB работают так же, как и любой файл проекта в Visual Studio.

person jgauffin    schedule 21.12.2011
comment
Работает, просто убедитесь, что на вашем TFS установлен SHFB. - person mbx; 28.10.2013

Ты прав. Team Build 2010 основан на Workflow Foundation, и для этого вам потребуется создать собственный шаблон процесса сборки.

Несмотря на то, что основной проект устарел, вы можете найти то, что ищете, здесь: http://tfs2010extendedbuild.codeplex.com/

Информацию о том, как настроить шаблон процесса сборки, можно найти здесь: http://rabcg.codeplex.com/

Если вы увлекаетесь книгами, это фантастика: https://rads.stackoverflow.com/amzn/click/com/0735645248

person syneptody    schedule 14.12.2011

Во-первых, я надеюсь, что вы говорите о TFS2010, иначе этот ответ выходит за рамки.

Мы настроили наш шаблон процесса сборки с дополнительным вызовом MSBuild в следующей последовательности:

введите здесь описание изображения

Параметры выглядят следующим образом:

введите здесь описание изображения

Чтобы все работало, мы добавили еще один аргумент с именем SandcastleProject, в котором мы указываем в нашем определении сборки путь системы управления версиями к файлу .shfbproj ($/.../.shfbproj).

Непосредственно перед началом этой последовательности мы преобразуем этот путь в локальный с помощью действия ConvertWorkspaceItem, которое заполняет переменную с именем localSandcastleProject локальной записью:

введите здесь описание изображения

person pantelif    schedule 14.12.2011

Недавно я написал об этом сообщение в блоге: http://www.22bugs.co/post/sandcastle-help-file-builder-tfs-build/. Вот необходимые шаги:

1. Загрузите и установите SHFB на свой сервер сборки.

Получите последнюю версию с [https://github.com/EWSoftware/SHFB][shfb] и установите его на свой сервер сборки. После завершения установки может потребоваться перезагрузка.

2. Определите место сброса (необязательно)

Отредактируйте файл **.shfbproj*, добавив следующее:

<!-- Put this code under inside <Project><PropertyGroup>...</PropertyGroup></Project> -->
<OutDir Condition=" '$(OutDir)' == ''">.</OutDir>
<OutputPath>$(OutDir)\Help</OutputPath>

Это даст указание TFS скопировать выходные данные SHFB в папку размещения сборки.

3. Определите место развертывания (необязательно)

Если после каждой успешной сборки вы хотите автоматически развернуть выходные данные еще в одном месте (кроме папки перетаскивания), вы можете определить следующую задачу после сборки:

if NOT "$(DeployDocsTo)" == "" (
  powershell "\"$(DeployDocsTo)\" -split \";\" | foreach { Copy-Item \"$(OutputPath)\" \"$_\" -Force -Recurse }"
)

Теперь вы можете определить аргумент MSBuild $(DeployDocsTo), чтобы указать TFS, где развернуть ваши документы. Например, установите его

/p:DeployDocsTo="\\app-server\c$\docs"

Удачи.

person niaher    schedule 25.04.2015