Пользовательский рабочий процесс сборки TFS 2010 - PullRequest
1 голос
/ 17 августа 2011

Я программист PHP, я обычно не работаю в Visual Studio, особенно с Team Foundation Server, но моя текущая работа требует от меня его использования.

Моя проблема заключается в том, что мне нужно создать пользовательский рабочий процесс сборки (файл .xaml), который будет копировать (в идеале zip) мои последние исходники из dev-версии (управление исходными кодами в TFS) проекта в сетевой ресурс (\ myserver \) myshare \ myproject), когда я попадаю в очередь новой сборки.

Я пробовал через бит визуального редактора, у меня не было положительных результатов (все, что я понял, это как сделать переменную), я пытался редактировать файл .xaml вручную (текстовый редактор), но это не получилось уведи меня очень далеко ...

Ему не нужно разбираться в решениях или проектах, ему нужно только скопировать файлы из папки проектов в системе управления версиями TFS на общий сетевой ресурс ....

Мне нужен шаг за шагом, руководство по щелчку, как это сделать, Заранее спасибо

Используемое программное обеспечение: Visual Studio 2010 Pro, Team Foundation Server 2010, VS.PHP 2.10.3

Ответы [ 5 ]

2 голосов
/ 17 августа 2011

Чтобы выполнить копирование, добавьте действие CopyDirectory после действия SyncWorkspace (которое называется «Получить рабочее пространство» и находится в разделе «Процесс / Последовательность / Запуск агента / Инициализация рабочего пространства»),затем установите для свойства Source значение SourcesDirectory, а для свойства Destination укажите общий сетевой ресурс или переменную с этим значением, если вы предпочитаете.

Для архивирования файловвверх, вы, вероятно, захотите использовать действие InvokeProcess, вызывая какой-либо сценарий и передавая переменную SourcesDirectory в: например, это как архивировать файлы с powershell .

Редактировать:

Чтобы выполнить командный файл, возьмите действие InvokeProcess из набора инструментов Visual Studio, в частности вкладку «Действия по сборке Team Foundation», и перетащите его в рабочий процесс.Щелкните по действию, нажмите F4, чтобы увидеть окно свойств, и введите путь к вашему пакетному файлу и любые аргументы, которые вы хотите передать ему.Следуйте этим инструкциям , если действия не отображаются в вашем наборе инструментов.

1 голос
/ 31 августа 2011

Простой вариант - просто запустить со стандартным шаблоном сборки и настроить определение сборки с требуемым UNC-путем для папки удаления. Это вытолкнет весь источник из рабочей области в это место после завершения сборки. Затем вы можете вручную застегнуть молнию. Если вы хотите автоматически сжать его, тогда вы начинаете настраивать шаблон сборки, как предлагали другие.

0 голосов
/ 13 апреля 2012

Если вы хотите выполнить скрипт на сервере TFS, есть разные способы сделать это:

  1. Перейти к машине, на которой работает сервер TFS
  2. Получить доступ к командной строке.
  3. Запустите ваш скрипт.

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

Если вы хотите автоматизировать запуск сценария на TFS-сервере, есть также несколько вариантов. Например, вы можете использовать AT для планирования пакетного задания (* .BAT или * .CMD) для запуска в определенное время.

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

Зайдите в раздел Сборки в записи TFS для вашего проекта в TFS (или веб-сайт, я полагаю?). Клонируйте одну из существующих сборок и сделайте новую. Создайте новый файл XAML для вашего процесса развертывания PHP, иначе вы уничтожите обычную сборку, если другие люди используют вашу TFS для других целей. В процессе сборки XAML внесите изменения, как описано в ответах выше. В диалоговом окне свойств для вашей сборки (два отдельных слова здесь, «сборка», у вас может быть много таких, которые следуют одному и тому же «процессу сборки». Вы можете использовать один и тот же процесс для развертывания множества различных сайтов PHP, где такие вещи, как целевая папка будет предоставлена ​​на вкладке «Процесс» на страницах свойств для ваших различных сборок), в разделе «Триггер» установите ее как «Непрерывная интеграция», что означает, что эта ваша новая сборка с этим вашим новым процессом сборки будет выполняться каждый раз, когда вы регистрация.

БАМ, вот и ты.

0 голосов
/ 17 августа 2011

В Visual Studio 2010 используйте Вид> Панель инструментов, чтобы просмотреть все действия, а затем перетащите их. Некоторые из них также имеют свойства для настройки.

0 голосов
/ 17 августа 2011

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

http://lajak.wordpress.com/2011/05/07/customize-binaries-folder-in-tfs-team-build/

Спасибо

М.Радван

...