Batch-конфигурация¶
Batch-конфиги описывают группы связанных пакетов для совместной сборки — PHP-extensions, OCaml-библиотеки, привязанные к общей версии toolchain, и подобные случаи, где все пакеты делят настройки и должны попасть в одну задачу.
Используется командой zoryn task batch.
Расположение¶
Файлы конфигурации хранятся в ~/.config/zoryn/batch/ с расширением .conf. Ссылаться по имени (без расширения) или полным путём:
zoryn task batch php-8.4 # ~/.config/zoryn/batch/php-8.4.conf
zoryn task batch ~/configs/mypackages.conf # полный путь
Формат¶
TOML: таблица [batch] для глобальных настроек, отдельная таблица для каждого пакета.
[batch]
name = "PHP 8.4 extensions"
basedir = "~/packages/php8.4"
specsubst = "phpver=8.4"
main = "php"
main_branch = "8.4"
[php]
# Главный пакет, версия/тэг берутся отсюда
[php-memcached]
# Использует настройки по умолчанию
[pecl-imagick]
path = "~/packages/imagick"
# Свой путь, не basedir/pecl-imagick
[php-unit]
mode = "rebuild"
# Пересборка вместо сборки из исходников
[php-xdebug]
skip = true
# Временно отключён
[php-pgsql]
exclude = ["p10", "c10f2"]
# Не собирать для p10 и c10f2
[php-redis]
only = ["sisyphus", "p11"]
# Собирать только для sisyphus и p11
[php-sodium]
specsubst = "none"
# Отключить specsubst для этого пакета
Опции секции [batch]¶
| Опция | Описание |
|---|---|
name | Отображаемое имя batch (по умолчанию: имя файла конфига) |
basedir | Базовый каталог для пакетов, поддерживает ~ |
specsubst | specsubst по умолчанию для gear-create-tag (например, phpver=8.4) |
main | Имя главного пакета для получения версии/тэга |
main_branch | Git-ветка для чтения spec главного пакета |
tag_format | Шаблон имени тэга (по умолчанию: {main_name}-{main_version}-{main_release}) |
tag_message | Шаблон сообщения тэга (по умолчанию: такой же, как tag_format) |
Плейсхолдеры tag format¶
{main_name}— имя главного пакета (например,php8.4).{main_version}— версия главного пакета (8.4.17).{main_release}— release главного пакета (alt1).{name}— имя текущего пакета (php8.4-apcu).
Опции секции пакета¶
| Опция | Описание |
|---|---|
path | Свой путь (переопределяет basedir/name), поддерживает ~ |
mode | build (по умолчанию) или rebuild |
exclude | TOML-массив или строка через запятую — репозитории, где пакет исключён |
only | TOML-массив или строка через запятую — репозитории, где пакет включён (эксклюзивно) |
skip | true для временного отключения |
specsubst | Переопределить specsubst, или none для отключения |
Генерация из существующей задачи¶
Bootstrap batch-конфига из уже имеющейся задачи — zoryn task genbatch: