Щоб використовувати Team Foundation Build. команда повинна мати принаймні один агент збірки для виконання ресурсовитратності операцій в процесі складання.
Кожен агент побудови виділяється для окремого контролера побудов, який ним керує. Агенти збірки можна розмістити на тому ж сервері збірки, що і контролер збірки, але це необов'язково і в деяких випадках найбільш ефективно задовольнити потреби команди можна за допомогою одного сервера збірки, на якому розміщується контролер збірки, керуючий агентами збірки на декількох серверах збірки.
Агент збірки виконує операції процесу складання, що входять в дії AgentScope. До таких операцій відносяться отримання файлів з системи управління версіями, підготовка робочої області, компіляція коду, виконання тестів і злиття файлів назад в систему управління версіями.
Переконайтеся, що сервер збірки, на якому розміщені агенти збірки, має достатні ресурси пам'яті і можливості обробки, що відповідають розміру і складності бази коду і тестів в колекції командних проектів. Зазвичай не слід розміщувати більше одного агента збірки на кожне процесорний ядро сервера збірки. Можна також підвищити продуктивність, виділивши один фізичний жорсткий диск робочого каталогу кожного агента збірки.
Якщо колекція командних проектів розміщена в Visual Studio Online і потреби команди можна задовольнити одним стандартним агентом збірки, замість розгортання власного агента збірки можна використовувати розміщений контролер збірок.
Ви повинні бути членом групи "Адміністратори Windows" на сервері збірки і членом групи "Адміністратори збірок колекції проектів" в колекції командних проектів. Див. Розділ Довідник по дозволам Team Foundation Server.
Увійдіть в систему сервера збірки. який потрібно налаштувати.
З меню "Пуск" Windows запустіть Консоль адміністрування Team Foundation.
З'явиться вікно Консоль адміністрування Team Foundation.
В області дерева консолі адміністрування Team Foundation розгорніть ім'я сервера і виберіть вузол Конфігурація збірки.
В області вмісту з'являться відомості про сервер збірки.
Якщо відображається повідомлення Налаштування встановлених компонентів. зверніться до розділу Розгортання сервера збірки.
На сторінці "Конфігурація збірки":
Щоб створити новий агент збірки, виберіть команду Створити агент.
Щоб змінити існуючий агент збірки,
З'явиться діалогове вікно Властивості агента побудови.
Зміна агента збірки з Visual Studio
У Visual Studio в Team Explorer:
Якщо ви ще не підключені до командного проекту з колекції командних проектів, підключіться до командного проекту.
Виберіть Головна. а потім виберіть Складання.
На сторінці "Складання" виберіть Дії. а потім - Управління контролерами збірки.
На екрані з'явиться діалогове вікно Управління контролерами побудов.
Виберіть агент збірки, який потрібно змінити, і клацніть Властивості.
З'явиться діалогове вікно Властивості агента збірки.
Відображене ім'я. Опис. Введіть ім'я та опис, щоб члени команди могли легко визначити агент збірки.
Контролер. Виберіть контролер збірок. який повинен керувати цим агентом збірки. Контролер збірок може працювати на тому ж сервері збірки, що і цей агент збірки, або на іншому сервері збірки.
У розділах нижче містить додаткову інформацію про налаштування агента збірки.
На агента збірки необхідно встановити версію Visual Studio, яка використовується вашою командою на комп'ютерах розробки. Див. Розділ Установка Visual Studio. Встановіть також будь-яке інше програмне забезпечення та компоненти, які встановлені на комп'ютерах розробки і потрібні для збірки додатку.
Можна вказати робочий каталог, який використовується агентом збірки для читання з файлів або записи в файли. Наприклад, вихідні файли копіюються в підкаталоги цієї папки, а виконавчі файли створюються і зберігаються в інших підкаталогах цієї папки.
Можна підвищити продуктивність, призначивши один фізичний жорсткий диск робочого каталогу кожного агента збірки.
Хоча для властивості Робочий каталог шлях можна задати в буквеному поданні (наприклад, c: \ temp \ build \), більш простий і надійний підхід - завдання шляху за допомогою токенів. Можна використовувати два види токенов:
Змінні середовища містять відомості про середовище для системи і користувача, який увійшов в систему. Звичайнісінька змінна - SYSTEMDRIVE. проте в деяких випадках можуть також використовуватися такі змінні, як USERNAME або HOMEPATH.
Щоб вивести список змінних середовища на сервері збірки, відкрийте командний рядок і введіть set.
Змінні Team Foundation Build
У робочому каталозі агента збірки можна використовувати такі змінні:
$ (BuildAgentId) - автоматично генерується ціле число, яке є унікальним ідентифікатором агента побудови в колекції командного проекту.
$ (BuildAgentName) - Коротке ім'я агента побудови.
$ (BuildDefinitionId) - автоматично генерується ціле число, яке є унікальним ідентифікатором визначення побудови в колекції командного проекту.
$ (BuildDefinitionPath) - ім'я командного проекту і ім'я визначення побудови, розділені зворотною косою межею.
Наприклад, маємо агента побудови з ім'ям BuildBot3. У командному проекті CoolApp визначені два побудови з іменами NightlyBuild і WeeklyBuild. В поле Робоча папка вкажіть значення $ (SystemDrive) \ TeamBuilds \ $ (BuildAgentName) \ $ (BuildDefinitionPath). В результаті, агент побудови BuildBot3 створює і використовує дві робочі папки, а саме:
При виборі робочої папки необхідно враховувати, що шляхи до цієї папки, що формуються агентом побудови, не повинні перевищувати 259 символів. В іншому випадку можливий збій збірок з введенням в журнал таку помилку: TF10128: The path PhysicalPath contains more than the allowed 259 characters. Type or select a shorter path.
Щоб вирішити цю проблему, можна вказати робочий каталог, фізичний шлях до якого коротше. Наприклад, можна вказати $ (HOMEDRIVE) \ bld \ $ (BuildAgentID) \ $ (BuildDefinitionID), в результаті чого робочий каталог буде наступним: c: \ bld \ 3 \ 2 \.
Зі збільшенням масштабу системи збирання може знадобитися визначити спеціалізовані агенти збірки. Якщо у агента побудови є більш доступного режиму або він призначений для особливого використання, цього агенту слід призначити один або декілька тегів. В такому випадку, при створенні учасником команди визначення побудови, для якого потрібен певний вид агента побудови, він може вказати тег у визначенні побудови.
У наступній таблиці наведено приклади імен тегів і можливості агента побудови, які вони представляють.
Можна застосувати наступний тег.
Для ідентифікації агента збірки, який може виконувати наступні дії.
Компіляція 32-розрядних додатків
Компіляція 64-розрядних додатків
Компіляція веб-додатки ASP.NET з подальшим розміщенням на комп'ютері, на якому працює агент збірки.
Виконання завдань, що вимагають наявності агента на сервері збірки, який працює в інтерактивному режимі.
До агенту побудови можна застосувати більш одного тега. Наприклад, можна створити агента побудови з тегами x86 і випуск, щоб вказати агента, встановленого для компіляції зміни випуску 32-розрядного програми.
При запуску кількох агентів збірки на одному сервері збірки все вони, ймовірно, будуть мати однакові можливості. Тому може виникнути необхідність в застосуванні однакових тегів до всіх агентам збірки на одному сервері збірки.
У Visual Studio відкрийте діалогове вікно Керування контролерами збірки. як описано вище в розділі Створення або зміна агента збірки.
Виберіть агент збірки, який потрібно видалити, і натисніть кнопку Видалити.