Перейти к содержанию
zoryn/ maintainer-assistant

zoryn submit

Полный цикл сборки: commit, tag, push и отправка на сборку — одной командой.

Использование

zoryn submit [-B repo] [--with spec] [--replace[=TASK_ID[:N]]]
             [--run] [--no-run] [--test-only] [--commit]
             [--dry-run] [--skip-check] [--batch-pkgs=PKGS] [-d]

По умолчанию создаёт задание, но не запускает его (режим test-only). --run запускает сборку, --commit — публикация вместо test-only. Поведение по умолчанию настраивается в ~/.zoryn:

[submit]
run = true
test_only = false

Если предыдущий коммит имеет тот же version-release subject (например, при повторе submit), коммиты автоматически объединяются.

С -B отправляет в указанный репозиторий и автоматически добавляет зависимости от задач в более свежих репозиториях. Несколько репозиториев через запятую (sisyphus,p11) — каждая последующая отправка зависит от предыдущей задачи.

Опции

  • -B, --branch <repo> — целевой репозиторий (по умолчанию: sisyphus), поддерживает TAB-дополнение.
  • --with <spec> — добавить в существующее задание с позиционированием. Синтаксис:
    • PKG — найти задание, добавить в конец.
    • ^PKG — перед PKG.
    • PKG: — после PKG.
    • TASK_ID — в конец задания.
    • TASK_ID:REF — после REF.
    • TASK_ID^REF — перед REF.
    • REF — имя пакета, номер сабтаска или pkg.git=tag.
    • Если такой же тэг уже есть, автоматически заменяет. Если пакет есть с другим тэгом, запрашивает действие.
  • --replace[=TASK_ID[:N]] — заменить сабтаск. Без аргумента: автоматический поиск по текущему пакету (с подтверждением). С TASK_ID — в указанном задании. С TASK_ID:N — указанный сабтаск.
  • --run — запустить задание после создания/изменения.
  • -n, --no-run — не запускать (переопределяет конфиг).
  • --test-only — пометить как тестовое (без публикации).
  • --commit — пометить для публикации (противоположно --test-only).
  • --dry-run — предпросмотр действий без выполнения.
  • --skip-check — пропустить валидацию spec-файла (см. zoryn check spec).
  • --batch-pkgs=PKGS — отправить только указанные batch-значения.

Примеры

zoryn submit                     # создать (не запускать, test-only)
zoryn submit --run               # создать и запустить тест
zoryn submit --run --commit      # создать и запустить на публикацию
zoryn submit -B p11              # в p11 с --deps от sisyphus
zoryn submit -B sisyphus,p11     # сначала в sisyphus, потом p11 с --deps
zoryn submit --with libva        # в задание с libva (в конец)
zoryn submit --with ^libva       # перед libva
zoryn submit --with libva:       # после libva
zoryn submit --with 12345        # в конец задания 12345
zoryn submit --with 12345^libva  # перед libva в 12345
zoryn submit --with 12345:libva  # после libva в 12345
zoryn submit --replace           # заменить сабтаск (с подтверждением)
zoryn submit --replace --run     # заменить и запустить
zoryn submit --replace=12345     # в конкретном задании
zoryn submit --replace=12345:3   # конкретный сабтаск
zoryn submit --no-run            # явно не запускать
zoryn submit --dry-run           # предпросмотр

При отправке в стабильные ветки причина сборки определяется автоматически (new version, bugfix release, new package). Если в changelog найдены CVE между версиями, причина дополняется пометкой «with security fixes».