zoryn-task-copy(1)
| ZORYN-TASK-COPY(1) | Zoryn Manual | ZORYN-TASK-COPY(1) |
NAME
zoryn-task-copy - Copy task to another repository.
SYNOPSIS
zoryn task copy [OPTION]… TASK_ID
DESCRIPTION
Copy all subtasks from an existing task to a new task in another repository. Uses package names (SRPM names) from the Tasks API for correct copy/rebuild operations.
The new task will depend on the source task if it's not yet completed.
By default, creates the task without running it. Use --run to start the task, and --commit to auto-commit after successful build.
For rebuild subtasks, the command compares package EVR (epoch:version-release) between source and target repositories. If EVR differs, it asks whether to copy from source or rebuild from target. Use --copy-rebuilds or --rebuild-only to skip the interactive prompt.
ARGUMENTS
- TASK_ID (required)
- Source task ID to copy.
OPTIONS
- -B REPO, --branch=REPO
- Target repository. Required unless --into is given, in which case it is ignored (target repo is derived from the existing task).
- -c, --commit
- Auto-commit task after successful test build. Only effective with --run. Without this flag, task runs in test-only mode.
- -C DIR
- Change to directory DIR before running.
- --copy-rebuilds
- For rebuild subtasks with different EVR (epoch:version-release), automatically copy from source repository instead of asking. Packages with the same EVR in source and target are still rebuilt.
- -d, --debug
- Enable debug output.
- --into=TASK_ID
- Add subtasks into an existing target task with the given ID instead of creating a new one. The target repository is derived from the existing task. Dependencies of the existing task are left untouched.
- -n, --dry-run
- Show what would be done without creating a task or running any commands. Useful for previewing which subtasks will be copied, rebuilt, or deleted.
- -r, --run
- Run the task after creating it. For stable branches, automatically determines build reason (new version, bugfix, etc.) from RDB.
- --rebuild-only
- For rebuild subtasks, always rebuild from the target repository, even if the source has a different EVR. Useful for mass rebuilds (e.g., OCaml compiler updates).
- --subtask=SUBTASK
- Copy only the matching subtask(s) from the source task. Repeatable and comma-separated (e.g. --subtask php,php-mbstring,200). Accepts the same argument forms as zoryn task delete: a numeric subtask ID (e.g. 200), a package name (e.g. php-mbstring), or pkg.git=tag for copy-paste from zoryn task ls. Without this flag, all subtasks are copied.
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 task copy 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
Copy sisyphus task 404765 to p11 (create only):
zoryn task copy -B p11 404765
Copy and run in test-only mode:
zoryn task copy -B p11 --run 404765
Copy, always rebuild from target (mass rebuild):
zoryn task copy -B p11 --rebuild-only 404765
Copy, always use source EVR when different:
zoryn task copy -B p11 --copy-rebuilds 404765
Preview what would be done (no changes):
zoryn task copy -B p11 --dry-run 404765
Merge subtasks into existing task #500000 (target repo derived from that task):
zoryn task copy --into 500000 404765
Copy only selected subtasks (by package name or subtask ID):
zoryn task copy -B p11 --subtask php --subtask 200 404765
Same, via comma-separated list:
zoryn task copy -B p11 --subtask php,php-mbstring,200 404765
Copy a specific subtask using copy-paste from 'task ls':
zoryn task copy -B p11 --subtask php-gd.git=php-8.2.31-alt1 404765
SEE ALSO
zoryn(1)
| Zoryn 0.46.0 |
