zoryn-submit(1)
| ZORYN-SUBMIT(1) | Zoryn Manual | ZORYN-SUBMIT(1) |
NAME
zoryn-submit - Commit, tag, push and submit package for build.
SYNOPSIS
zoryn submit [OPTION]…
DESCRIPTION
Full build cycle for the package in current directory: commit, tag, push to gitery, and submit for build on gyle.
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 behavior can be configured in ~/.zoryn [submit] section.
With -b submits to specified repository and automatically adds --deps on tasks from fresher repositories. Multiple repositories can be specified as comma-separated list (e.g., -b sisyphus,p11), each subsequent submit depends on the previous task. Use --no-deps to skip setting dependencies on tasks found in fresher repositories, e.g. for a test-only build in a stable branch before the package reaches sisyphus.
WORKFLOW
This command performs the following steps:
- 1.
- Detect project name from gitery remote or spec file
- 1.5
- Resolve replace target (when --replace is used, before any mutations)
- 2.
- Commit uncommitted changes with gear-commit
- 3.
- Create gear tag
- 4.
- Ensure gitery remote exists (init-db if needed)
- 5.
- Push branch to gitery
- 6.
- Push tags to gitery
- 7.
- Find upstream dependencies for stable branches
- 8.
- Determine build reason for stable branches
- 9.
- Start build on gyle
BUILD REASON
When submitting to stable branches (p11, p10, etc.), build reason is detected automatically: new version, bugfix release, or new package. If CVEs are found in spec changelog between versions, reason is marked 'with security fixes'.
OPTIONS
- --allow-overwrite-tag
- Force-recreate an existing local tag, bypassing the gears/ancestor checks. Use when you know the stale tag does not share lineage with HEAD.
- -B REPO, --branch=REPO
- Target repository or comma-separated list of repositories (e.g., sisyphus,p11). Default: sisyphus.
- --batch-pkgs=PKGS
- Build/submit only specified batch values (comma-separated). Values must exist in [batch] section of .gear/version-up.
- -C DIR
- Change to directory DIR before running.
- --commit
- Mark task for publishing (opposite of --test-only).
- -d, --debug
- Enable debug output.
- --dry-run
- Show what would be done without making any changes.
- -m MESSAGE, --message=MESSAGE
- Build reason passed to gyle when running the task (overrides the auto-detected reason for stable branches). Use -m - to read from stdin. Supports multi-word messages in quotes.
- -n, --no-run
- Don't run the task (override config).
- --no-deps
- Don't set dependencies on tasks found in fresher repositories. Upstream tasks are still searched and shown, but the new task is created without --deps, so a test-only build in a stable branch is not blocked by a pending sisyphus task.
- --no-edit-commit
- Do not open editor when committing (for automation).
- --replace[=TASK_ID[:N]] (default=)
- Replace subtask in existing task. Without argument, auto-finds task and subtask by current package. With TASK_ID, replaces in specified task. With TASK_ID:N, also specifies subtask number.
- --run
- Run the task after creating/modifying it.
- --skip-check
- Skip spec validation checks before submit.
- --test-only
- Mark task as test-only (don't publish).
- -V
- Show version information.
- --with=SPEC
- Add to existing task. SPEC syntax: PKG (find task, append), ^PKG (find task, before PKG), PKG: (find task, after PKG), TASK_ID (append to task), TASK_ID:REF (after REF), TASK_ID^REF (before REF). PKG is a package name or pkg.git=tag. REF is a package name, subtask number, or pkg.git=tag.
COMMON OPTIONS
- --help[=FMT] (default=auto)
- Show this help in format FMT. The value FMT must be one of auto, pager, groff or plain. With auto, the format is pager or plain whenever the TERM env var is dumb or undefined.
- --version
- Show version information.
EXIT STATUS
zoryn submit exits with:
- 0
- on success.
- 123
- on indiscriminate errors reported on standard error.
- 124
- on command line parsing errors.
- 125
- on unexpected internal errors (bugs).
EXAMPLES
Create task (default: don't run, test-only mode):
zoryn submit
Create and run test build:
zoryn submit --run
Create and run for publishing:
zoryn submit --run --commit
Submit to p11 (auto-adds --deps on sisyphus tasks):
zoryn submit -B p11
Test build in p11 without a dependency on the sisyphus task:
zoryn submit -B p11 --run --no-deps
Submit to multiple repos with dependency chain:
zoryn submit -B sisyphus,p11
Add to existing task containing another package (append to end):
zoryn submit --with libva
Add before a specific package in task:
zoryn submit --with ^libva
Add after a specific package in task:
zoryn submit --with libva:
Add to specific task by ID:
zoryn submit --with 12345
Add before a subtask in specific task:
zoryn submit --with 12345^libva
Add after a subtask in specific task:
zoryn submit --with 12345:libva
Replace subtask in existing task:
zoryn submit --replace
Replace subtask and run:
zoryn submit --replace --run
Replace subtask in specific task:
zoryn submit --replace=12345
Replace specific subtask in task:
zoryn submit --replace=12345:3
Run with an explicit build reason for a stable branch:
zoryn submit -B p11 --run -m "fix CVE-2026-0001"
Read the build reason from stdin:
echo "long reason" | zoryn submit -B p11 --run -m -
Explicitly don't run (override config):
zoryn submit --no-run
Preview all actions without executing:
zoryn submit --dry-run
SEE ALSO
zoryn-up(1), zoryn-task(1)
zoryn(1)
| Zoryn 0.46.0 |
