MAN page from RedHat EL 8 centpkg-0.6.6-3.el8.noarch.rpm
centpkg
Section: rpm\-packager (1)
Updated: 2021-07-21
Index NAME
centpkg - RPM Packaging utility
SYNOPSIS
centpkg[
global_options]
command[
command_options][
command_arguments]
centpkghelpcentpkgcommand--help DESCRIPTION
centpkgis a script to interact with the RPM Packaging system.
Global Options
--config CONFIG, -C CONFIG
Specify a config file to use
--dry-run Perform a dry run.
--release RELEASE Override the discovered release from current
branch, which is used to determine the build
target and value of dist macro. Generally,
release is the name of a branch created in
your package repository. --release is an
alias of --dist, hence --release should be
used instead.
--dist DIST Deprecated. Use --release instead. You can
use --dist for a while for backward-
compatibility. It will be disabled in future
version.
--module-name MODULE_NAME
Deprecated. Use combination of --name and
--namespace. Override the module name.
Otherwise it is discovered from: Git push
URL or Git URL (last part of path with .git
extension removed) or from name macro in
spec file. In that order.
--name NAME Override repository name. Use --namespace
option to change namespace. If not
specified, name is discovered from Git push
URL or Git URL (last part of path with .git
extension removed) or from Name macro in
spec file, in that order.
--namespace NAMESPACE
The package repository namespace. If
omitted, default to rpms if namespace is
enabled.
--user USER Override the discovered user name
--password PASSWORD Password for Koji login
--runas RUNAS Run Koji commands as a different user
--path PATH Define the directory to work in (defaults to
cwd)
--verbose, -v Run with verbose debug output
--debug, -d Run with debug output
-q Run quietly only displaying errors
COMMAND OVERVIEW
- centpkg build [-h] [--arches [ARCHES [ARCHES ...]]] [--md5] [--nowait] [--target TARGET] [--background] [--fail-fast] [--skip-remote-rules-validation] [--skip-nvr-check] [--skip-tag] [--scratch] [--srpm [SRPM]]
- Request build
- centpkg chain-build [-h] [--arches [ARCHES [ARCHES ...]]] [--md5] [--nowait] [--target TARGET] [--background] [--fail-fast] [--skip-remote-rules-validation] [--skip-nvr-check] package [package ...]
- Build current package in order with other packages
- centpkg ci [-h] [-m MESSAGE] [--with-changelog] [-c] [--raw] [-t] [-F FILE] [-p] [-s] [files [files ...]]
- Alias for commit
- centpkg clean [-h] [--dry-run] [-x]
- Remove untracked files
- centpkg clog [-h] [--raw]
- Make a clog file containing top changelog entry
- centpkg clone [-h] [--branches] [--branch BRANCH] [--anonymous] [--depth DEPTH] repo [clone_target] ...
- Clone and checkout a repository
- centpkg co [-h] [--branches] [--branch BRANCH] [--anonymous] [--depth DEPTH] repo [clone_target] ...
- Alias for clone
- centpkg commit [-h] [-m MESSAGE] [--with-changelog] [-c] [--raw] [-t] [-F FILE] [-p] [-s] [files [files ...]]
- Commit changes
- centpkg compile [-h] [--builddir BUILDDIR] [--buildrootdir BUILDROOTDIR] [--arch ARCH] [--define DEFINE] [--short-circuit] [--nocheck] ...
- Local test rpmbuild compile
- centpkg container-build [-h] [--target TARGET] [--nowait] [--build-release BUILD_RELEASE] [--isolated] [--koji-parent-build KOJI_PARENT_BUILD] [--scratch] [--arches [ARCHES [ARCHES ...]]] [--repo-url URL [URL ...]] [--signing-intent SIGNING_INTENT] [--skip-remote-rules-validation] [--skip-build] [--compose-id COMPOSE_ID [COMPOSE_ID ...]] [--replace-dependency PKG_MANAGER:NAME:VERSION[:NEW_NAME] [PKG_MANAGER:NAME:VERSION[:NEW_NAME] ...]]
- Build a container
- centpkg container-build-setup [-h] (--get-autorebuild | --set-autorebuild {true,false})
- set options for container-build
- centpkg copr-build [-h] [--config CONFIG] [--nowait] project
- Build package in Copr
- centpkg diff [-h] [--cached] [files [files ...]]
- Show changes between commits, commit and working tree, etc
- centpkg flatpak-build [-h] [--target TARGET] [--nowait] [--build-release BUILD_RELEASE] [--isolated] [--koji-parent-build KOJI_PARENT_BUILD] [--scratch] [--arches [ARCHES [ARCHES ...]]] [--repo-url URL [URL ...]] [--signing-intent SIGNING_INTENT] [--skip-remote-rules-validation] [--skip-build]
- Build a Flatpak
- centpkg fork [-h]
- Create a new fork of the current repository
- centpkg gimmespec [-h]
- Print the spec file name
- centpkg gitbuildhash [-h] build
- Print the git hash used to build the provided n-v-r
- centpkg giturl [-h]
- Print the git url for building
- centpkg help [-h]
- Show usage
- centpkg import [-h] [--skip-diffs] [--offline] srpm
- Import srpm content into a module
- centpkg install [-h] [--builddir BUILDDIR] [--buildrootdir BUILDROOTDIR] [--arch ARCH] [--define DEFINE] [--short-circuit] [--nocheck] ...
- Local test rpmbuild install
- centpkg lint [-h] [--info] [--rpmlintconf RPMLINTCONF]
- Run rpmlint against local spec and build output if present.
- centpkg list-side-tags [-h] [--mine | --user TAG_OWNER | --base-tag BASE_TAG]
- List existing side-tags
- centpkg local [-h] [--builddir BUILDDIR] [--buildrootdir BUILDROOTDIR] [--arch ARCH] [--define DEFINE] [--md5] [--with BCOND_WITH] [--without BCOND_WITHOUT] ...
- Local test rpmbuild binary
- centpkg mock-config [-h] [--target TARGET] [--arch ARCH]
- Generate a mock config
- centpkg mockbuild [-h] [--root CONFIG] [--md5] [--no-clean] [--no-cleanup-after] [--no-clean-all] [--with BCOND_WITH] [--without BCOND_WITHOUT] [--shell] [--enablerepo ENABLEREPO] [--disablerepo DISABLEREPO] [--enable-network] ...
- Local test build using mock
- centpkg module-build [-h] [--watch] [--buildrequires name:stream] [--requires name:stream] [--optional key=value] [--file [FILE_PATH]] [--srpm SRPMS] [--scratch] [scm_url] [branch]
- Build a module using MBS
- centpkg module-build-cancel [-h] build_id
- Cancel an MBS module build
- centpkg module-build-info [-h] build_id
- Show information of an MBS module build
- centpkg module-build-local [-h] [--file [FILE_PATH]] [--srpm SRPMS] [--stream [STREAM]] [--skip-tests] [--add-local-build N:S:V] [-s N:S] [--offline] [-r PATH]
- Build a module locally using the mbs-manager command
- centpkg module-build-watch [-h] build_id [build_id ...]
- Watch an MBS build
- centpkg module-overview [-h] [--unfinished] [--limit LIMIT] [--owner FAS_ID | --mine]
- Shows an overview of MBS builds
- centpkg module-scratch-build [-h] [--watch] [--buildrequires name:stream] [--requires name:stream] [--optional key=value] [--file [FILE_PATH]] [--srpm SRPMS] [scm_url] [branch]
- Build a scratch module using MBS
- centpkg new [-h]
- Diff against last tag
- centpkg new-sources [-h] files [files ...]
- Upload source files
- centpkg patch [-h] [--rediff] suffix
- Create and add a gendiff patch file
- centpkg prep [-h] [--builddir BUILDDIR] [--buildrootdir BUILDROOTDIR] [--arch ARCH] [--define DEFINE] ...
- Local test rpmbuild prep
- centpkg pull [-h] [--rebase] [--no-rebase]
- Pull changes from the remote repository and update the working copy.
- centpkg push [-h] [--force]
- Push changes to remote repository
- centpkg remove-side-tag [-h] TAG
- Remove a side tag (without merging packages)
- centpkg request-gated-side-tag [-h] [--base-tag BASE_TAG]
- Create a new dynamic gated side tag
- centpkg request-side-tag [-h] [--base-tag BASE_TAG] [--suffix SUFFIX]
- Create a new side tag
- centpkg retire [-h] reason
- Retire a package/module
- centpkg scratch-build [-h] [--arches [ARCHES [ARCHES ...]]] [--md5] [--nowait] [--target TARGET] [--background] [--fail-fast] [--skip-remote-rules-validation] [--srpm [SRPM]]
- Request scratch build
- centpkg sources [-h] [--outdir OUTDIR]
- Download source files
- centpkg srpm [-h] [--builddir BUILDDIR] [--buildrootdir BUILDROOTDIR] [--arch ARCH] [--define DEFINE] [--md5] ...
- Create a source rpm
- centpkg switch-branch [-h] [-l] [--fetch] [branch]
- Work with branches
- centpkg tag [-h] [-f] [-m MESSAGE] [-c] [--raw] [-F FILE] [-l] [-d] [tag]
- Management of git tags
- centpkg unused-patches [-h]
- Print list of patches not referenced by name in the specfile
- centpkg upload [-h] files [files ...]
- Upload source files
- centpkg verify-files [-h] [--builddir BUILDDIR] [--buildrootdir BUILDROOTDIR] [--arch ARCH] [--define DEFINE] ...
- Locally verify %%files section
- centpkg verrel [-h]
- Print the name-version-release
COMMAND REFERENCE
centpkg build
usage: centpkg build [-h] [--arches [ARCHES [ARCHES ...]]] [--md5]
[--nowait] [--target TARGET] [--background]
[--fail-fast] [--skip-remote-rules-validation]
[--skip-nvr-check] [--skip-tag] [--scratch]
[--srpm [SRPM]]
This command requests a build of the package in the build system. By
default it discovers the target to build for based on branch data,
and uses the latest commit as the build source.
optional arguments:
-h, --help show this help message and exit
--arches [ARCHES [ARCHES ...]]
Build for specific arches
--md5 Use md5 checksums (for older rpm hosts)
--nowait Don't wait on build
--target TARGET Define build target to build into
--background Run the build at a low priority
--fail-fast Fail the build immediately if any arch fails
--skip-remote-rules-validation
Don't check if there's a valid gating.yaml
file in the repo, where you can define
additional policies for Greenwave gating.
--skip-nvr-check Submit build to buildsystem without check if
NVR was already built. NVR is constructed
locally and may be different from NVR
constructed during build on builder.
--skip-tag Do not attempt to tag package
--scratch Perform a scratch build
--srpm [SRPM] Build from an srpm. If no srpm is provided
with this option an srpm will be generated
from current module content.
centpkg chain-build
usage: centpkg chain-build [-h] [--arches [ARCHES [ARCHES ...]]]
[--md5] [--nowait] [--target TARGET]
[--background] [--fail-fast]
[--skip-remote-rules-validation]
[--skip-nvr-check]
package [package ...]
Build current package in order with other packages.
example: centpkg chain-build libwidget libgizmo
The current package is added to the end of the CHAIN list.
Colons (:) can be used in the CHAIN parameter to define groups of
packages. Packages in any single group will be built in parallel
and all packages in a group must build successfully and populate
the repository before the next group will begin building.
For example:
centpkg chain-build libwidget libaselib : libgizmo :
will cause libwidget and libaselib to be built in parallel, followed
by libgizmo and then the current directory package. If no groups are
defined, packages will be built sequentially.
positional arguments:
package List the packages and order you want to
build in
optional arguments:
-h, --help show this help message and exit
--arches [ARCHES [ARCHES ...]]
Build for specific arches
--md5 Use md5 checksums (for older rpm hosts)
--nowait Don't wait on build
--target TARGET Define build target to build into
--background Run the build at a low priority
--fail-fast Fail the build immediately if any arch fails
--skip-remote-rules-validation
Don't check if there's a valid gating.yaml
file in the repo, where you can define
additional policies for Greenwave gating.
--skip-nvr-check Submit build to buildsystem without check if
NVR was already built. NVR is constructed
locally and may be different from NVR
constructed during build on builder.
centpkg ci
usage: centpkg ci [-h] [-m MESSAGE] [--with-changelog] [-c] [--raw]
[-t] [-F FILE] [-p] [-s]
[files [files ...]]
Alias for commit.
positional arguments:
files Optional list of specific files to commit
optional arguments:
-h, --help show this help message and exit
-m MESSAGE, --message MESSAGE
Use the given <msg> as the commit message
summary
--with-changelog Get the last changelog from SPEC as commit
message content. This option must be used
with -m together.
-c, --clog Generate the commit message from the
Changelog section
--raw Make the clog raw
-t, --tag Create a tag for this commit
-F FILE, --file FILE Take the commit message from the given file
-p, --push Commit and push as one action
-s, --signoff Include a signed-off-by
centpkg clean
usage: centpkg clean [-h] [--dry-run] [-x]
This command can be used to clean up your working directory. By
default it will follow .gitignore rules.
optional arguments:
-h, --help show this help message and exit
--dry-run, -n Perform a dry-run
-x Do not follow .gitignore rules
centpkg clog
usage: centpkg clog [-h] [--raw]
This will create a file named "clog" that contains the latest rpm
changelog entry. The leading "- " text will be stripped.
optional arguments:
-h, --help show this help message and exit
--raw Generate a more "raw" clog without twiddling the
contents
centpkg clone
usage: centpkg clone [-h] [--branches] [--branch BRANCH]
[--anonymous] [--depth DEPTH]
repo [clone_target] ...
This command will clone the named repository from the configured
repository base URL. By default it will also checkout the master
branch for your working copy.
positional arguments:
repo Name of the repository to clone
clone_target Directory in which to clone the repository
extra_args Custom arguments that are passed to the 'git
clone'. Use '--' to separate them from other
arguments.
optional arguments:
-h, --help show this help message and exit
--branches, -B Do an old style checkout with subdirs for
branches
--branch BRANCH, -b BRANCH
Check out a specific branch
--anonymous, -a Check out a module anonymously
--depth DEPTH Create a shallow clone with a history
truncated to the specified number of commits
centpkg co
usage: centpkg co [-h] [--branches] [--branch BRANCH] [--anonymous]
[--depth DEPTH]
repo [clone_target] ...
Alias for clone.
positional arguments:
repo Name of the repository to clone
clone_target Directory in which to clone the repository
extra_args Custom arguments that are passed to the 'git
clone'. Use '--' to separate them from other
arguments.
optional arguments:
-h, --help show this help message and exit
--branches, -B Do an old style checkout with subdirs for
branches
--branch BRANCH, -b BRANCH
Check out a specific branch
--anonymous, -a Check out a module anonymously
--depth DEPTH Create a shallow clone with a history
truncated to the specified number of commits
centpkg commit
usage: centpkg commit [-h] [-m MESSAGE] [--with-changelog] [-c]
[--raw] [-t] [-F FILE] [-p] [-s]
[files [files ...]]
This invokes a git commit. All tracked files with changes will be
committed unless a specific file list is provided. $EDITOR will be
used to generate a changelog message unless one is given to the
command. A push can be done at the same time.
positional arguments:
files Optional list of specific files to commit
optional arguments:
-h, --help show this help message and exit
-m MESSAGE, --message MESSAGE
Use the given <msg> as the commit message
summary
--with-changelog Get the last changelog from SPEC as commit
message content. This option must be used
with -m together.
-c, --clog Generate the commit message from the
Changelog section
--raw Make the clog raw
-t, --tag Create a tag for this commit
-F FILE, --file FILE Take the commit message from the given file
-p, --push Commit and push as one action
-s, --signoff Include a signed-off-by
centpkg compile
usage: centpkg compile [-h] [--builddir BUILDDIR]
[--buildrootdir BUILDROOTDIR] [--arch ARCH]
[--define DEFINE] [--short-circuit]
[--nocheck]
...
This command calls rpmbuild to compile the source. By default the
prep and configure stages will be done as well, unless the short-
circuit option is used.
positional arguments:
extra_args Custom arguments that are passed to the
'rpmbuild'. Use '--' to separate them from
other arguments.
optional arguments:
-h, --help show this help message and exit
--builddir BUILDDIR Define an alternate builddir
--buildrootdir BUILDROOTDIR
Define an alternate buildrootdir
--arch ARCH Prep for a specific arch
--define DEFINE Pass custom macros to rpmbuild, may specify
multiple times
--short-circuit short-circuit compile
--nocheck nocheck compile
centpkg container-build
usage: centpkg container-build [-h] [--target TARGET] [--nowait]
[--build-release BUILD_RELEASE]
[--isolated]
[--koji-parent-build KOJI_PARENT_BUILD]
[--scratch]
[--arches [ARCHES [ARCHES ...]]]
[--repo-url URL [URL ...]]
[--signing-intent SIGNING_INTENT]
[--skip-remote-rules-validation]
[--skip-build]
[--compose-id COMPOSE_ID [COMPOSE_ID ...]]
[--replace-dependency PKG_MANAGER:NAME:VERSION[:NEW_NAME]
[PKG_MANAGER:NAME:VERSION[:NEW_NAME]
...]]
Build a container
optional arguments:
-h, --help show this help message and exit
--target TARGET Override the default target
--nowait Don't wait on build
--build-release BUILD_RELEASE
Specify a release value for this build's NVR
--isolated Do not update floating tags in the registry.
You must use the --build-release argument
--koji-parent-build KOJI_PARENT_BUILD
Specify a Koji NVR for the parent container
image. This will override the "FROM" value
in your Dockerfile.
--scratch Scratch build
--arches [ARCHES [ARCHES ...]]
Limit a scratch or a isolated build to an
arch. May have multiple arches.
--repo-url URL [URL ...]
URLs of yum repo files
--signing-intent SIGNING_INTENT
Signing intent of the ODCS composes.
--skip-remote-rules-validation
Don't check if there's a valid gating.yaml
file in the repo
--skip-build Don't create build, but just modify settings
for autorebuilds
--compose-id COMPOSE_ID [COMPOSE_ID ...]
ODCS composes used. Cannot be used with
--signing-intent
--replace-dependency PKG_MANAGER:NAME:VERSION[:NEW_NAME] [PKG_MANAGER:NAME:VERSION[:NEW_NAME] ...]
Cachito dependency replacement
centpkg container-build-setup
usage: centpkg container-build-setup [-h]
(--get-autorebuild | --set-autorebuild {true,false})
set options for container-build.
optional arguments:
-h, --help show this help message and exit
--get-autorebuild Get autorebuild value
--set-autorebuild {true,false}
Turn autorebuilds on/off
centpkg copr-build
usage: centpkg copr-build [-h] [--config CONFIG] [--nowait] project
Build package in Copr.
Note: you need to have set up correct api key. For more information
see API KEY section of
copr-cli(1) man page.
positional arguments:
project Name of the project in format USER/PROJECT
optional arguments:
-h, --help show this help message and exit
--config CONFIG Path to an alternative Copr configuration file
--nowait Don't wait on build
centpkg diff
usage: centpkg diff [-h] [--cached] [files [files ...]]
Use git diff to show changes that have been made to tracked files.
By default cached changes (changes that have been git added) will
not be shown.
positional arguments:
files Optionally diff specific files
optional arguments:
-h, --help show this help message and exit
--cached View staged changes
centpkg flatpak-build
usage: centpkg flatpak-build [-h] [--target TARGET] [--nowait]
[--build-release BUILD_RELEASE]
[--isolated]
[--koji-parent-build KOJI_PARENT_BUILD]
[--scratch]
[--arches [ARCHES [ARCHES ...]]]
[--repo-url URL [URL ...]]
[--signing-intent SIGNING_INTENT]
[--skip-remote-rules-validation]
[--skip-build]
Build a Flatpak
optional arguments:
-h, --help show this help message and exit
--target TARGET Override the default target
--nowait Don't wait on build
--build-release BUILD_RELEASE
Specify a release value for this build's NVR
--isolated Do not update floating tags in the registry.
You must use the --build-release argument
--koji-parent-build KOJI_PARENT_BUILD
Specify a Koji NVR for the parent container
image. This will override the "FROM" value
in your Dockerfile.
--scratch Scratch build
--arches [ARCHES [ARCHES ...]]
Limit a scratch or a isolated build to an
arch. May have multiple arches.
--repo-url URL [URL ...]
URLs of yum repo files
--signing-intent SIGNING_INTENT
Signing intent of the ODCS composes.
--skip-remote-rules-validation
Don't check if there's a valid gating.yaml
file in the repo
--skip-build Don't create build, but just modify settings
for autorebuilds
centpkg fork
usage: centpkg fork [-h]
Create a new fork of the current repository
Before the operation, you need to generate an API token at
https://gitlab.com/-/profile/personal_access_tokens, select the "api"
scope and save it in your local user configuration located
at ~/.config/rpkg/centpkg.conf. For example:
[centpkg.distgit]
token = <api_key_here>
Below is a basic example of the command to fork a current repository:
centpkg fork
optional arguments:
-h, --help show this help message and exit
centpkg gimmespec
usage: centpkg gimmespec [-h]
Print the spec file name.
optional arguments:
-h, --help show this help message and exit
centpkg gitbuildhash
usage: centpkg gitbuildhash [-h] build
This will show you the commit hash string used to build the provided
build n-v-r
positional arguments:
build name-version-release of the build to query.
optional arguments:
-h, --help show this help message and exit
centpkg giturl
usage: centpkg giturl [-h]
This will show you which git URL would be used in a build command.
It uses the git hashsum of the HEAD of the current branch (which may
not be pushed).
optional arguments:
-h, --help show this help message and exit
centpkg help
usage: centpkg help [-h]
Show usage.
&nbs