Man page - kas(1)

Packages contains this manual

Manual

KAS

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
SUB-COMMANDS
PROJECT CONFIGURATION
BUILD ATTESTATION
CREDENTIAL HANDLING
ENVIRONMENT VARIABLES
Variable Scope
Variables Glossary
SEE ALSO
KAS
AUTHOR
COPYRIGHT

NAME

kas - a setup tool for bitbake based projects

SYNOPSIS

kas [-h] [--version] [-l {debug,info,warning,error,critical}]
{build,checkout,clean,cleansstate,cleanall,purge,diff,dump,for-all-repos,lock,menu,shell} ...

DESCRIPTION

kas - setup tool for bitbake based project

This tool provides an easy mechanism to setup bitbake based projects.

The OpenEmbedded tooling support starts at step 2 with bitbake. The downloading of sources and then configuration has to be done by hand. Usually, this is explained in a README. Instead kas is using a project configuration file and does the download and configuration phase.

Key features provided by the build tool:

clone and checkout bitbake layers

create default bitbake settings (machine, arch, ...)

launch minimal build environment, reducing risk of host contamination

initiate bitbake build process

OPTIONS

Positional Arguments

cmd

sub command help

Possible choices: build, checkout, clean, cleansstate, cleanall, purge, diff, dump, for-all-repos, lock, menu, shell

Named Arguments
--version

show program's version number and exit

-l='info' , --log-level='info'

Set log level (default: info)

Possible choices: debug, info, warning, error, critical

SUB-COMMANDS

kas build [-h] [--skip STEP] [--force-checkout] [--update] [-k]

[--target TARGET] [-c TASK] [--provenance {true,mode=min,mode=max}]
[config] [extra_bitbake_args ...] Checks out all necessary repositories and builds using bitbake as specified in the configuration file.

kas checkout [-h] [--skip STEP] [--force-checkout] [--update] [config]

Checks out all necessary repositories and sets up the build directory as specified in the configuration file.

kas clean [-h] [--dry-run] [--isar] [config]

Clean build artifacts, keep sstate cache and downloads.

kas cleansstate [-h] [--dry-run] [--isar] [config]

Clean build artifacts and sstate cache.

kas cleanall [-h] [--dry-run] [--isar] [config]

Clean build artifacts, sstate-cache and downloads.

kas purge [-h] [--dry-run] [--isar] [--preserve-repo-refs] [config]

Purge all data managed by kas, including managed repos.

kas diff [-h] [--skip STEP] [--force-checkout] [--update]

[--format {json,text}] [--oneline] [--no-color] [--commit-only]
[--content-only]
config1 config2 Compare two KAS configurations.

kas dump [-h] [--skip STEP] [--force-checkout] [--update] [--indent
INDENT]

[--sort] [--format {yaml,json}] [--resolve-refs] [--resolve-local]
[--resolve-env | --lock]
[config] Expand and dump the final config to stdout. When resolving branches, this is done before patches are applied.

kas for-all-repos [-h] [--skip STEP] [--force-checkout] [--update] [-E]
[-k]

[config] command Runs a specified command in all checked out repositories.

kas lock [-h] [--skip STEP] [--force-checkout] [--update] [--indent
INDENT]

[--sort]
[config] Create and update kas project lockfiles.

kas menu [-h] [kconfig]

Provides a configuration menu and triggers the build of the choices.

kas shell [-h] [--skip STEP] [--force-checkout] [--update] [-E] [-k]

[-c COMMAND]
[config] Run a shell in the build environment.

PROJECT CONFIGURATION

The project configuration file describes the build environment and the layers to be used. It is the main input to kas. For details, see kas-project-config(1)

BUILD ATTESTATION

Kas supports to generate build attestation. For details, see kas-build-attestation(1) .

CREDENTIAL HANDLING

kas provides various mechanisms to inject credentials into the build. For details, see kas-credentials(1) .

ENVIRONMENT VARIABLES

kas uses a number of environment variables to configure its behavior. The Variables Glossary provides an overview, wherein the tuple (C,K,E) denotes the scope of the variable.

All directories that are passed to kas by setting the corresponding environment variables (e.g. KAS_WORK_DIR , KAS_BUILD_DIR , ...) must not overlap with each other, except for overlapping with KAS_WORK_DIR (i.e. the build|sstate|downloads|repo-ref dirs can be below the work dir). Environment variables that reference a file or directory must have a valid path that is accessible and readable.

Variable Scope

kas-container (C)

The variable is processed or forwarded by the kas-container script. For some variables, the variable is re-written to the container's directory layout.

NOTE:

The env section of the project configuration can be used to make arbitrary environment variables available to the build environment. When invoking the build via kas-container , make sure to also forward the corresponding environment variables into the container.

kas (K)

The variable is processed by kas itself. Some variables (e.g. the credentials for the awscli) are re-written to configuration files to also support older versions of the tooling.

build environment (E)

The variable is exported into the build environment. In this environment, the bitbake command is executed.

config-file (c)

The variable can be set in the env section of the Project Configuration . Note, that a value provided by the calling environment takes precedence over the value in the configuration file.

Variables Glossary

These environment variables are processed before the configuration file is read (except if stated otherwise). By that, they cannot be defined or overwritten using the env section of the config file.

Image grohtml-970973-1.png

SEE ALSO

kas-project-config(1) , kas-build(1) , kas-credentials(1)

KAS

Part of the kas(1) suite.

AUTHOR

Daniel Wagner, Jan Kiszka, Claudius Heine

COPYRIGHT

Siemens and contributors, 2017-2025