Skip to content

ОписаниеЗадачи

Модель джобы пайплайна. Все поля экспортные, пустые значения не попадают в YAML.

Создание — только через фабрику:

bsl
Задача = Фабрика.Новая();

Поля

ПолеТипYAML-ключ
НаименованиеСтрокаимя джобы
СтадияСтрокаstage
СкриптыМассив из Строкаscript
ПередСкриптыМассив из Строкаbefore_script
ПослеСкриптыМассив из Строкаafter_script
КогдаСтрокаwhen
ТегиРаннераМассив из Строкаtags
ТаймаутСтрокаtimeout
ПрерываемыйБулевоinterruptible
РазрешитьПадениеБулевоallow_failure
СтартоватьСразуБулевоneeds: []
ГруппаРесурсовСтрокаresource_group
НуждаетсяМассив из Строкаneeds
ЗависимостиМассив из Строкаdependencies
ПеременныеСоответствиеvariables

Под-объекты

Создаются лениво при первом обращении:

ПолеТипYAML-ключ
ОбразОписаниеОбразаimage
Сервисы + НовыйСервис()Массив из ОписаниеСервисаservices
КэшОписаниеКэшаcache
АртефактыОписаниеАртефактовartifacts
ПовторОписаниеПовтораretry
ПараллельностьОписаниеПараллельностиparallel
ОкружениеОписаниеОкруженияenvironment
РелизОписаниеРелизаrelease
СтраницыОписаниеСтраницpages (для джобы с именем pages)

Методы

ДобавитьПеременную(Имя, Значение)

Переменная окружения джобы.

ДобавитьПравило(Условие = "", Когда = "", Изменения = Неопределено)

Правило rules. Используйте НовыйПравило() для расширенного заполнения.

ДоВсех()

Стадия .pre — джоба выполнится до всех стадий пайплайна.

ПослеВсех()

Стадия .post — после всех стадий.

Пример

bsl
Задача = Фабрика.Новая();
Задача.Наименование = "deploy-prod";
Задача.Стадия = "deploy";
Задача.ТегиРаннера.Добавить("prod");
Задача.Таймаут = "1h";
Задача.Прерываемый = Истина;
Задача.ГруппаРесурсов = "production";
Задача.ДобавитьПеременную("TARGET", "prod");
Задача.Нуждается.Добавить("build");
Задача.Скрипты.Добавить("make deploy");