KAS-DUMP(1) | kas | KAS-DUMP(1) |
NAME¶
kas-dump - kas dump plugin
SYNOPSIS¶
kas dump [-h] [--skip STEP] [--force-checkout] [--update] [--indent INDENT]
[--sort] [--format {yaml,json}] [--resolve-refs] [--resolve-local]
[--resolve-env | --lock]
[config]
DESCRIPTION¶
Expand and dump the final config to stdout. when resolving branches, this is done before patches are applied.
This plugin implements the kas dump command.
When this command is executed in default mode, kas will parse all referenced config files, expand includes and print a flattened yaml version of the configuration to stdout. This config is semantically identical to the input, but does not include any references to other configuration files. The output of this command can be used to further analyze the build configuration.
When running with --lock, a locking spec is created which only contains the exact commit of each repository. This can be used to pin the commit of floating branches and tags, while still keeping an easy update path. For details on the locking support, see kas.plugins.lock.
NOTE:
When running with --resolve-local, VCS tracking information of the root repo (the one with the kas-project.yml) is added to the output. The generated file can be used as single input to kas to reproduce the build environment. If the root repo is not under version control or contains uncommitted changes, a warning is emitted.
Please note:
- the dumped config is semantically identical but not bit-by-bit identical
- all referenced repositories are checked out to resolve cross-repo configs
- all branches are resolved before patches are applied
- the ordering of the keys is kept unless --sort is used. If you intend to store the flattened configs for comparison, it is recommended to sort the keys.
For example, to get a single config representing the final build config of kas-project.yml:target-override.yml you could run:
kas dump kas-project.yml:target-override.yml > kas-project-expanded.yml
The generated config can be used as input for kas:
kas build kas-project-expanded.yml
OPTIONS¶
Positional Arguments
- config
- Config file(s), separated by colon. Using .config.yaml in KAS_WORK_DIR if none is specified.
Named Arguments
- --skip=[]
- Skip build steps. To skip more than one step, use this argument multiple
times.
Possible choices: setup_dir, setup_home, init_setup_repos, repo_setup_loop, finish_setup_repos, repos_checkout, repos_check_signatures, repos_apply_patches, setup_environ, write_bbconfig
- --force-checkout=False
- Always checkout the desired commit/branch/tag of each repository, discarding any local changes
- --update=False
- Pull new upstream changes to the desired branch even if it is already checked out locally
- --indent=4
- Line indent (# of spaces, default: 4)
- --sort=False
- Alphanumerically sort keys in output
- --format='yaml'
- Output format (default: yaml)
Possible choices: yaml, json
- --resolve-refs=False
- Replace floating refs with exact SHAs. Overrides are removed
- --resolve-local=False
- Add tracking information of root repo
- --resolve-env=False
- Set env defaults to captured env value
- --lock=False
- Create lockfile with exact SHAs
SEE ALSO¶
kas-project-config(1), kas-checkout(1), kas-lock(1), kas-build(1)
KAS¶
Part of the kas(1) suite.
AUTHOR¶
Daniel Wagner, Jan Kiszka, Claudius Heine
COPYRIGHT¶
Siemens and contributors, 2017-2025
August 18, 2025 | 4.8.2 |