Provided by: kiwi_9.25.22-1ubuntu1_amd64 

NAME
kiwi::system::build - Build image in combined prepare and create step
SYNOPSIS
kiwi-ng [global options] service <command> [<args>]
kiwi-ng system build -h | --help
kiwi-ng system build --description=<directory> --target-dir=<directory>
[--allow-existing-root]
[--clear-cache]
[--ignore-repos]
[--ignore-repos-used-for-build]
[--set-repo=<source,type,alias,priority,imageinclude,package_gpgcheck,{signing_keys},components,distribution,repo_gpgcheck>]
[--set-repo-credentials=<user:pass_or_filename>]
[--add-repo=<source,type,alias,priority,imageinclude,package_gpgcheck,{signing_keys},components,distribution,repo_gpgcheck>...]
[--add-repo-credentials=<user:pass_or_filename>...]
[--add-package=<name>...]
[--add-bootstrap-package=<name>...]
[--delete-package=<name>...]
[--set-container-derived-from=<uri>]
[--set-container-tag=<name>]
[--add-container-label=<label>...]
[--signing-key=<key-file>...]
kiwi-ng system build help
DESCRIPTION
build an image in one step. The build command combines kiwi's prepare and create steps in order to build
an image with just one command call. The build command creates the root directory of the image below
<target-dir>/build/image-root and if not specified differently writes a log file
<target-dir>/build/image-root.log. The result image files are created in the specified target-dir.
OPTIONS
--add-bootstrap-package=<name>
specify package to install as part of the early kiwi bootstrap phase. The option can be specified
multiple times
--add-container-label=<name=value>
add a container label in the container configuration metadata. It overwrites the label with the
provided key-value pair in case it was already defined in the XML description
--add-package=<name>
specify package to add(install). The option can be specified multiple times
--add-repo=<source,type,alias,priority,imageinclude,package_gpgcheck,{signing_keys},components,distribution,repo_gpgcheck>
Add a new repository to the existing repository setup in the XML description. This option can be
specified multiple times. For details about the provided option values see the --set-repo
information below
--add-repo-credentials=<user:pass_or_filename>
For uri://user:pass@location type repositories, set the user and password connected with an
add-repo specification. The first add-repo-credentials is connected with the first add-repo
specification and so on. If the provided value describes a filename in the filesystem, the first
line of that file is read and used as credentials information.
--allow-existing-root
Allow to use an existing root directory from an earlier build attempt. Use with caution this could
cause an inconsistent root tree if the existing contents does not fit to the former image type
setup
--clear-cache
delete repository cache for each of the used repositories before installing any package. This is
useful if an image build should take and validate the signature of the package from the original
repository source for any build. Some package managers unconditionally trust the contents of the
cache, which is ok for cache data dedicated to one build but in case of kiwi the cache is shared
between multiple image builds on that host for performance reasons.
--delete-package=<name>
specify package to delete. The option can be specified multiple times
--description=<directory>
Path to the XML description. This is a directory containing at least one _config.xml_ or _*.kiwi_
XML file.
--ignore-repos
Ignore all repository configurations from the XML description. Using that option is usually done
with a sequence of --add-repo options otherwise there are no repositories available for the image
build which would lead to an error.
--ignore-repos-used-for-build
Works the same way as --ignore-repos except that repository configurations which has the imageonly
attribute set to true will not be ignored.
--set-repo=<source,type,alias,priority,imageinclude,package_gpgcheck,{signing_keys},components,distribution,repo_gpgcheck>
Overwrite the first repository entry in the XML description with the provided information:
• source
source url, pointing to a package repository which must be in a format supported by the selected
package manager. See the URI_TYPES section for details about the supported source locators.
• type
repository type, could be one of rpm-md, rpm-dir or yast2.
• alias
An alias name for the repository. If not specified kiwi generate an alias name as result of hex
representation from uuid4. The hex is used to uniquely identify the repository, but not very
expressive. We recommend to set an expressive and uniq alias name.
• priority
A number indicating the repository priority. How the value is evaluated depends on the selected
package manager. Please refer to the package manager documentation for details about the
supported priority ranges and their meaning.
• imageinclude
Set to either true or false to specify if this repository should be part of the system image
repository setup or not.
• package_gpgcheck
Set to either true or false to specify if this repository should validate the package
signatures.
• {signing_keys}
List of signing_keys enclosed in curly brackets and delimited by semicolon. The reference to a
signing key must be provided as URI format
• components
Component list for debian based repos as string delimited by a space
• distribution
Main distribution name for debian based repos
• repo_gpgcheck
Set to either true or false to specify if this repository should validate the repository
signature.
--set-repo-credentials=<user:pass_or_filename>
For uri://user:pass@location type repositories, set the user and password connected to the
set-repo specification. If the provided value describes a filename in the filesystem, the first
line of that file is read and used as credentials information.
--set-container-derived-from=<uri>
Overwrite the source location of the base container for the selected image type. The setting is
only effective if the configured image type is setup with an initial derived_from reference
--set-container-tag=<name>
Overwrite the container tag in the container configuration. The setting is only effective if the
container configuraiton provides an initial tag value
--signing-key=<key-file>
set the key file to be trusted and imported into the package manager database before performing
any operation. This is useful if an image build should take and validate repository and package
signatures during build time. This option can be specified multiple times
--target-dir=<directory>
Path to store the build results.
URI_TYPES
• http:// | https:// | ftp://
remote repository delivered via http or ftp protocol.
• obs://
Open Buildservice repository. The source data is translated into an http url pointing to
http://download.opensuse.org.
• ibs://
Internal Open Buildservice repository. The source data is translated into an http url pointing to
download.suse.de.
• iso://
Local iso file. kiwi loop mounts the file and uses the mount point as temporary directory source type
• dir://
Local directory
AUTHOR
Marcus Schäfer
COPYRIGHT
2024, Marcus Schäfer
9.25.22 Feb 02, 2024 KIWI::SYSTEM::BUILD(8)