вторник, 10 июня 2014 г.

Мета-раннеры в TeamCity

Как известно, основными понятиями TeamCity являются: проекты (подпроекты), билд-конфигурации и шаблоны. Проекты используются для организации иерархии, билд-конфигурации описывают действия (программные шаги), а шаблоны хранят описания часто используемых билд-конфигураций. Однако, на практике иногда возникает необходимость подняться на более высокий уровень абстракции и включить в шаги билд-конфигурации действия из других билд-конфигураций. Для этого используются мета-раннеры.

Мета-раннер (TeamCity Meta-Runners) - это "раннер в раннере", это инструмент, который позволяет выделить из отдельных билд-конфигураций общие повторяющиеся действия и перенести их на уровень выше. Мета-раннеры позволяют использовать шаги одной билд-конфигурации в других билд-конфигурациях целиком, как отдельный параметризуемый шаг. Если шаблон конфигурации можно сравнить с параметризованной функцией в программировании, то мета-раннер - это класс, в понятиях ООП.