Skip to content
zoryn/ maintainer-assistant

zoryn submit

Full build cycle: commit, tag, push, and submit for build — all in one command.

Synopsis

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

By default, creates a task but does not run it (test-only mode). Use --run to start the build, and --commit to publish instead of test-only. Default behaviour can be configured in ~/.zoryn under [submit]:

[submit]
run = true
test_only = false

If the previous commit has the same version-release subject (e.g. after re-running submit), the commits are automatically squashed into one.

With -B, submits to the specified repository and automatically adds dependencies on tasks from fresher repositories. Multiple repositories can be specified as a comma-separated list (e.g. sisyphus,p11) — each subsequent submit depends on the previous task.

Options

  • -B, --branch <repo> — target repository (default: sisyphus), supports TAB completion.
  • --with <spec> — add to existing task with subtask positioning. Syntax:
    • PKG — find task, append to end.
    • ^PKG — find task, place before PKG.
    • PKG: — find task, place after PKG.
    • TASK_ID — append to task.
    • TASK_ID:REF — after REF.
    • TASK_ID^REF — before REF.
    • REF is a package name, subtask number, or pkg.git=tag.
    • If the same tag already exists in the task, auto-replaces. If the package exists with a different tag, prompts for action.
  • --replace[=TASK_ID[:N]] — replace subtask in an existing task. Without argument: auto-finds the task and subtask by current package (with interactive confirmation). With TASK_ID: replaces in specified task. With TASK_ID:N: also specifies the subtask number.
  • --run — run the task after creating/modifying.
  • -n, --no-run — don't run the task (override config).
  • --test-only — mark the task as test-only (don't publish).
  • --commit — mark the task for publishing (opposite of --test-only).
  • --dry-run — preview all actions without executing.
  • --skip-check — skip spec file validation (see zoryn check spec).
  • --batch-pkgs=PKGS — submit only specified batch values (comma-separated) instead of all values from [batch].

Examples

zoryn submit                     # create task (default: don't run, test-only)
zoryn submit --run               # create and run test build
zoryn submit --run --commit      # create and run for publishing
zoryn submit -B p11              # submit to p11, --deps on sisyphus tasks
zoryn submit -B sisyphus,p11     # submit to sisyphus first, then p11 with --deps
zoryn submit --with libva        # add to task containing libva (append to end)
zoryn submit --with ^libva       # add before libva in task
zoryn submit --with libva:       # add after libva in task
zoryn submit --with 12345        # append to task 12345
zoryn submit --with 12345^libva  # before libva in task 12345
zoryn submit --with 12345:libva  # after libva in task 12345
zoryn submit --replace           # replace subtask (auto-find with confirmation)
zoryn submit --replace --run     # replace and run
zoryn submit --replace=12345     # replace in specific task
zoryn submit --replace=12345:3   # replace specific subtask
zoryn submit --no-run            # explicitly don't run (override config)
zoryn submit --dry-run           # preview all actions

When submitting to stable branches, the build reason is detected automatically (new version, bugfix release, new package). If CVEs are found in the spec changelog between versions, the reason is marked "with security fixes".