From 025b9e89387a2412047c96119d731b051a1f6957 Mon Sep 17 00:00:00 2001 From: Justin Schneck Date: Sun, 11 Jan 2026 16:21:13 -0500 Subject: [PATCH] avocado-cli update commands and config schema for 0.23 --- .../tools/avocado-cli/commands/build.md | 5 +- .../tools/avocado-cli/commands/clean.md | 16 + .../tools/avocado-cli/commands/deploy.md | 5 +- .../tools/avocado-cli/commands/ext/build.md | 5 +- .../avocado-cli/commands/ext/checkout.md | 8 +- .../tools/avocado-cli/commands/ext/clean.md | 5 +- .../tools/avocado-cli/commands/ext/deps.md | 5 +- .../tools/avocado-cli/commands/ext/dnf.md | 5 +- .../tools/avocado-cli/commands/ext/fetch.md | 18 + .../tools/avocado-cli/commands/ext/image.md | 5 +- .../tools/avocado-cli/commands/ext/install.md | 5 +- .../tools/avocado-cli/commands/ext/list.md | 9 +- .../tools/avocado-cli/commands/ext/package.md | 5 +- .../tools/avocado-cli/commands/fetch.md | 5 +- .../tools/avocado-cli/commands/hitl/server.md | 6 +- .../tools/avocado-cli/commands/init.md | 20 +- .../tools/avocado-cli/commands/install.md | 5 +- .../tools/avocado-cli/commands/provision.md | 34 +- .../tools/avocado-cli/commands/prune.md | 22 + .../avocado-cli/commands/runtime/build.md | 5 +- .../avocado-cli/commands/runtime/clean.md | 5 +- .../avocado-cli/commands/runtime/deploy.md | 5 +- .../avocado-cli/commands/runtime/deps.md | 11 +- .../tools/avocado-cli/commands/runtime/dnf.md | 5 +- .../avocado-cli/commands/runtime/install.md | 5 +- .../avocado-cli/commands/runtime/list.md | 9 +- .../avocado-cli/commands/runtime/provision.md | 34 +- .../avocado-cli/commands/runtime/sign.md | 18 + .../tools/avocado-cli/commands/sdk/clean.md | 12 +- .../tools/avocado-cli/commands/sdk/compile.md | 5 +- .../tools/avocado-cli/commands/sdk/deps.md | 5 +- .../tools/avocado-cli/commands/sdk/dnf.md | 5 +- .../tools/avocado-cli/commands/sdk/install.md | 5 +- .../tools/avocado-cli/commands/sdk/run.md | 7 +- .../tools/avocado-cli/commands/sign.md | 18 + .../commands/signing-keys/_category_.json | 6 + .../commands/signing-keys/create.md | 21 + .../avocado-cli/commands/signing-keys/list.md | 12 + .../commands/signing-keys/remove.md | 16 + .../tools/avocado-cli/commands/unlock.md | 18 + .../tools/avocado-cli/commands/upgrade.md | 9 +- src/package-lock.json | 44 +- src/schemas/avocado-config.json | 589 +++++++++++------- 43 files changed, 742 insertions(+), 315 deletions(-) create mode 100644 src/docs/avocado-linux/tools/avocado-cli/commands/ext/fetch.md create mode 100644 src/docs/avocado-linux/tools/avocado-cli/commands/prune.md create mode 100644 src/docs/avocado-linux/tools/avocado-cli/commands/runtime/sign.md create mode 100644 src/docs/avocado-linux/tools/avocado-cli/commands/sign.md create mode 100644 src/docs/avocado-linux/tools/avocado-cli/commands/signing-keys/_category_.json create mode 100644 src/docs/avocado-linux/tools/avocado-cli/commands/signing-keys/create.md create mode 100644 src/docs/avocado-linux/tools/avocado-cli/commands/signing-keys/list.md create mode 100644 src/docs/avocado-linux/tools/avocado-cli/commands/signing-keys/remove.md create mode 100644 src/docs/avocado-linux/tools/avocado-cli/commands/unlock.md diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/build.md b/src/docs/avocado-linux/tools/avocado-cli/commands/build.md index da53b8ab..f7e346aa 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/build.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/build.md @@ -4,13 +4,16 @@ Build all components (SDK compile, extensions, and runtime images) Usage: avocado build [OPTIONS] Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -r, --runtime Runtime name to build (if not provided, builds all runtimes) -e, --extension Extension name to build (if not provided, builds all required extensions) -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/clean.md b/src/docs/avocado-linux/tools/avocado-cli/commands/clean.md index ae0da771..e3d3985e 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/clean.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/clean.md @@ -13,6 +13,22 @@ Options: Container tool to use (docker/podman) [default: docker] -v, --verbose Enable verbose output + --stamps + Also remove stamp files (requires -C/--config and --target) + -C, --config + Path to avocado.yaml configuration file (required when --stamps or --unlock is used) + --target + Target architecture (required when --stamps or --unlock is used) + -f, --force + Force removal by killing and removing containers using the volume + --unlock + Also unlock (clear lock file entries) for all sysroots (requires -C/--config) + --runs-on + Run command on remote host using local volume via NFS (format: user@host) + --nfs-port + NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch + SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/deploy.md b/src/docs/avocado-linux/tools/avocado-cli/commands/deploy.md index aed82dba..9391aae5 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/deploy.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/deploy.md @@ -4,13 +4,16 @@ Deploy a runtime to a device (shortcut for 'runtime deploy') Usage: avocado deploy [OPTIONS] --runtime --device Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -r, --runtime Runtime name to deploy -t, --target Target architecture -d, --device Device IP address or hostname to deploy to --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/build.md b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/build.md index 1510991b..8a893e07 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/build.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/build.md @@ -4,12 +4,15 @@ Build sysext and/or confext extensions from configuration Usage: avocado ext build [OPTIONS] --extension Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -e, --extension Name of the extension to build (must be defined in config) -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/checkout.md b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/checkout.md index 965ee770..1d5c41bf 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/checkout.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/checkout.md @@ -5,7 +5,7 @@ Usage: avocado ext checkout [OPTIONS] --extension --ext-path - Path to avocado.toml configuration file [default: avocado.toml] + Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -e, --extension @@ -18,6 +18,12 @@ Options: Destination path in source directory (relative to src root) --container-tool Container tool to use (docker/podman) [default: docker] + --runs-on + Run command on remote host using local volume via NFS (format: user@host) + --nfs-port + NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch + SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/clean.md b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/clean.md index a190208a..e5201eed 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/clean.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/clean.md @@ -4,12 +4,15 @@ Clean an extension's sysroot Usage: avocado ext clean [OPTIONS] --extension Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -e, --extension Name of the extension to clean -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/deps.md b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/deps.md index 9d439b4a..ec1f027a 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/deps.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/deps.md @@ -4,9 +4,12 @@ List dependencies for extensions Usage: avocado ext deps [OPTIONS] Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -e, --extension Name of the extension to show dependencies for (if not provided, shows all extensions) -t, --target Target architecture + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/dnf.md b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/dnf.md index 0cbb79ad..ce456b8e 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/dnf.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/dnf.md @@ -7,12 +7,15 @@ Arguments: [COMMAND]... DNF command and arguments to execute Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -e, --extension Name of the extension to operate on -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/fetch.md b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/fetch.md new file mode 100644 index 00000000..94635bd5 --- /dev/null +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/fetch.md @@ -0,0 +1,18 @@ +``` +Fetch remote extensions from repo, git, or path sources + +Usage: avocado ext fetch [OPTIONS] + +Options: + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] + -v, --verbose Enable verbose output + -f, --force Force re-fetch even if already installed + -e, --extension Name of the extension to fetch (if not provided, fetches all remote extensions) + -t, --target Target architecture + --container-arg Additional arguments to pass to the container runtime + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) + -h, --help Print help + +``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/image.md b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/image.md index 069826cc..7cfe2180 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/image.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/image.md @@ -4,12 +4,15 @@ Create squashfs image from system extension Usage: avocado ext image [OPTIONS] --extension Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -e, --extension Name of the extension to create image for -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/install.md b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/install.md index 06891cd7..402e926a 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/install.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/install.md @@ -4,13 +4,16 @@ Install dependencies into extension sysroots Usage: avocado ext install [OPTIONS] Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -f, --force Force the operation to proceed, bypassing warnings or confirmation prompts -e, --extension Name of the extension to install (if not provided, installs all extensions) -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/list.md b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/list.md index b036f77a..4598fa68 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/list.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/list.md @@ -4,8 +4,11 @@ List extension names Usage: avocado ext list [OPTIONS] Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] - -t, --target Target architecture - -h, --help Print help + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] + -t, --target Target architecture + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) + -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/package.md b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/package.md index 8fce5057..aeda8405 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/ext/package.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/ext/package.md @@ -4,13 +4,16 @@ Package extension sysroot into an RPM Usage: avocado ext package [OPTIONS] --extension Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -e, --extension Name of the extension to package -t, --target Target architecture --out-dir Output directory on host for the RPM package (relative or absolute path). If not specified, RPM stays in container at $AVOCADO_PREFIX/output/extensions --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/fetch.md b/src/docs/avocado-linux/tools/avocado-cli/commands/fetch.md index cbea2c6f..4bf73b3c 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/fetch.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/fetch.md @@ -4,13 +4,16 @@ Fetch and refresh repository metadata for sysroots Usage: avocado fetch [OPTIONS] Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -e, --extension Extension name to fetch metadata for (if not provided, fetches for all sysroots) -r, --runtime Runtime name to fetch metadata for (if not provided, fetches for all sysroots) -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/hitl/server.md b/src/docs/avocado-linux/tools/avocado-cli/commands/hitl/server.md index 980b839f..5c8af9b9 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/hitl/server.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/hitl/server.md @@ -4,13 +4,17 @@ Start a HITL server container with preconfigured settings Usage: avocado hitl server [OPTIONS] Options: - -C, --config-path Path to avocado.toml configuration file [default: avocado.toml] + -C, --config-path Path to avocado.yaml configuration file [default: avocado.yaml] -e, --extension Extensions to create NFS exports for --container-arg Additional container arguments --dnf-arg Additional arguments to pass to DNF commands -t, --target Target to build for -v, --verbose Enable verbose output -p, --port NFS port number to use + --no-stamps Disable stamp validation + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/init.md b/src/docs/avocado-linux/tools/avocado-cli/commands/init.md index 00806d84..17a6b98a 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/init.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/init.md @@ -7,7 +7,23 @@ Arguments: [DIRECTORY] Directory to initialize (defaults to current directory) Options: - --target Target architecture (e.g., "qemux86-64") - -h, --help Print help + --target + Target architecture (e.g., "qemux86-64") + --reference + Reference example to initialize from (downloads from avocado-os/references) + --reference-branch + Branch to fetch reference from (defaults to "main") + --reference-commit + Specific commit SHA to fetch reference from + --reference-repo + Repository to fetch reference from (format: "owner/repo", defaults to "avocado-linux/avocado-os") + --runs-on + Run command on remote host using local volume via NFS (format: user@host) + --nfs-port + NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch + SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) + -h, --help + Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/install.md b/src/docs/avocado-linux/tools/avocado-cli/commands/install.md index 8b6f8418..fb8ec92e 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/install.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/install.md @@ -4,13 +4,16 @@ Install all components (SDK, extensions, and runtime dependencies) Usage: avocado install [OPTIONS] Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -f, --force Force the operation to proceed, bypassing warnings or confirmation prompts -r, --runtime Runtime name to install dependencies for (if not provided, installs for all runtimes) -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/provision.md b/src/docs/avocado-linux/tools/avocado-cli/commands/provision.md index 56bc5934..ae0ea4cd 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/provision.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/provision.md @@ -4,25 +4,19 @@ Provision a runtime (shortcut for 'runtime provision') Usage: avocado provision [OPTIONS] --runtime Options: - -C, --config - Path to avocado.toml configuration file [default: avocado.toml] - -v, --verbose - Enable verbose output - -f, --force - Force the operation to proceed, bypassing warnings or confirmation prompts - -r, --runtime - Runtime name to provision - -t, --target - Target architecture - --provision-profile - Provision profile to use - --env - Environment variables to pass to the provision process - --container-arg - Additional arguments to pass to the container runtime - --dnf-arg - Additional arguments to pass to DNF commands - -h, --help - Print help + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] + -v, --verbose Enable verbose output + -f, --force Force the operation to proceed, bypassing warnings or confirmation prompts + -r, --runtime Runtime name to provision + -t, --target Target architecture + --profile Provision profile to use + --env Environment variables to pass to the provision process + --out Output path relative to src_dir for provisioning artifacts + --container-arg Additional arguments to pass to the container runtime + --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) + -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/prune.md b/src/docs/avocado-linux/tools/avocado-cli/commands/prune.md new file mode 100644 index 00000000..b08ba2db --- /dev/null +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/prune.md @@ -0,0 +1,22 @@ +``` +Remove abandoned Docker volumes no longer associated with active configs + +Usage: avocado prune [OPTIONS] + +Options: + --container-tool + Container tool to use (docker/podman) [default: docker] + -v, --verbose + Enable verbose output + --dry-run + Perform a dry run without actually removing volumes + --runs-on + Run command on remote host using local volume via NFS (format: user@host) + --nfs-port + NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch + SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) + -h, --help + Print help + +``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/build.md b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/build.md index 06dbce08..cc029736 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/build.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/build.md @@ -4,13 +4,16 @@ Build a runtime Usage: avocado runtime build [OPTIONS] --runtime Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -f, --force Force the operation to proceed, bypassing warnings or confirmation prompts -r, --runtime Runtime name to build -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/clean.md b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/clean.md index 1044ad47..3b1b8595 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/clean.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/clean.md @@ -4,12 +4,15 @@ Clean runtime installroot directory Usage: avocado runtime clean [OPTIONS] --runtime Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -r, --runtime Name of the runtime to clean -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/deploy.md b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/deploy.md index ef5fea61..d2ff1552 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/deploy.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/deploy.md @@ -4,13 +4,16 @@ Deploy a runtime to a device Usage: avocado runtime deploy [OPTIONS] --runtime --device Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -r, --runtime Runtime name to deploy -t, --target Target architecture -d, --device Device IP address or hostname to deploy to --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/deps.md b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/deps.md index 99a97b9f..160f00df 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/deps.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/deps.md @@ -4,9 +4,12 @@ List dependencies for a runtime Usage: avocado runtime deps [OPTIONS] --runtime Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] - -r, --runtime Runtime name to list dependencies for - -t, --target Target architecture - -h, --help Print help + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] + -r, --runtime Runtime name to list dependencies for + -t, --target Target architecture + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) + -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/dnf.md b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/dnf.md index aaa0f841..6241b8bb 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/dnf.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/dnf.md @@ -7,12 +7,15 @@ Arguments: [COMMAND]... DNF command and arguments to execute Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -r, --runtime Name of the runtime to operate on -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/install.md b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/install.md index d36748e2..1ed39caf 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/install.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/install.md @@ -4,13 +4,16 @@ Install dependencies into runtime installroots Usage: avocado runtime install [OPTIONS] Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -f, --force Force the operation to proceed, bypassing warnings or confirmation prompts -r, --runtime Runtime name to install dependencies for (if not provided, installs for all runtimes) -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/list.md b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/list.md index ab0620d9..67c87811 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/list.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/list.md @@ -4,8 +4,11 @@ List runtime names Usage: avocado runtime list [OPTIONS] Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] - -t, --target Target architecture - -h, --help Print help + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] + -t, --target Target architecture + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) + -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/provision.md b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/provision.md index be7baa92..0925bd64 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/provision.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/provision.md @@ -4,25 +4,19 @@ Provision a runtime Usage: avocado runtime provision [OPTIONS] --runtime Options: - -C, --config - Path to avocado.toml configuration file [default: avocado.toml] - -v, --verbose - Enable verbose output - -f, --force - Force the operation to proceed, bypassing warnings or confirmation prompts - -r, --runtime - Runtime name to provision - -t, --target - Target architecture - --provision-profile - Provision profile to use - --env - Environment variables to pass to the provision process - --container-arg - Additional arguments to pass to the container runtime - --dnf-arg - Additional arguments to pass to DNF commands - -h, --help - Print help + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] + -v, --verbose Enable verbose output + -f, --force Force the operation to proceed, bypassing warnings or confirmation prompts + -r, --runtime Runtime name to provision + -t, --target Target architecture + --profile Provision profile to use + --env Environment variables to pass to the provision process + --out Output path relative to src_dir for provisioning artifacts + --container-arg Additional arguments to pass to the container runtime + --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) + -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/sign.md b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/sign.md new file mode 100644 index 00000000..628c8339 --- /dev/null +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/runtime/sign.md @@ -0,0 +1,18 @@ +``` +Sign runtime images + +Usage: avocado runtime sign [OPTIONS] --runtime + +Options: + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] + -v, --verbose Enable verbose output + -r, --runtime Runtime name to sign + -t, --target Target architecture + --container-arg Additional arguments to pass to the container runtime + --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) + -h, --help Print help + +``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/clean.md b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/clean.md index bba40be1..5939886c 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/clean.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/clean.md @@ -1,14 +1,20 @@ ``` -Remove the SDK directory +Remove the SDK directory Clean the SDK or run clean scripts for specific compile sections -Usage: avocado sdk clean [OPTIONS] +Usage: avocado sdk clean [OPTIONS] [SECTIONS]... + +Arguments: + [SECTIONS]... Specific compile sections to clean (runs their clean scripts) Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/compile.md b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/compile.md index 813a2de9..4f7a2168 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/compile.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/compile.md @@ -7,11 +7,14 @@ Arguments: [SECTIONS]... Specific compile sections to run Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/deps.md b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/deps.md index b9a9c6c3..96efde7d 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/deps.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/deps.md @@ -4,10 +4,13 @@ List SDK dependencies Usage: avocado sdk deps [OPTIONS] Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/dnf.md b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/dnf.md index f2de926e..4586956d 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/dnf.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/dnf.md @@ -7,11 +7,14 @@ Arguments: [COMMAND]... DNF command and arguments to execute Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/install.md b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/install.md index 6e762974..bb7329d9 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/install.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/install.md @@ -4,12 +4,15 @@ Install dependencies into the SDK Usage: avocado sdk install [OPTIONS] Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -v, --verbose Enable verbose output -f, --force Force the operation to proceed, bypassing warnings or confirmation prompts -t, --target Target architecture --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/run.md b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/run.md index 533be911..a15604da 100644 --- a/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/run.md +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/sdk/run.md @@ -7,11 +7,11 @@ Arguments: [COMMAND]... Command and arguments to run in container Options: - -C, --config Path to avocado.toml configuration file [default: avocado.toml] + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] -t, --target Target architecture --name Assign a name to the container -d, --detach Run container in background and print container ID - --rm Automatically remove the container when it exits + --rm Automatically remove the container when it exits (default: true) [default: true] [possible values: true, false] -i, --interactive Drop into interactive shell in container -v, --verbose Enable verbose output -E, --env Source the avocado SDK environment before running command @@ -20,6 +20,9 @@ Options: --container-arg Additional arguments to pass to the container runtime --dnf-arg Additional arguments to pass to DNF commands --no-bootstrap Skip SDK bootstrap initialization and go directly to container prompt + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) -h, --help Print help ``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/sign.md b/src/docs/avocado-linux/tools/avocado-cli/commands/sign.md new file mode 100644 index 00000000..dcc71b27 --- /dev/null +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/sign.md @@ -0,0 +1,18 @@ +``` +Sign runtime images (shortcut for 'runtime sign') + +Usage: avocado sign [OPTIONS] + +Options: + -C, --config Path to avocado.yaml configuration file [default: avocado.yaml] + -v, --verbose Enable verbose output + -r, --runtime Runtime name to sign (if not provided, signs all runtimes with signing config) + -t, --target Target architecture + --container-arg Additional arguments to pass to the container runtime + --dnf-arg Additional arguments to pass to DNF commands + --runs-on Run command on remote host using local volume via NFS (format: user@host) + --nfs-port NFS port for remote execution (auto-selects from 12050-12099 if not specified) + --sdk-arch SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64) + -h, --help Print help + +``` diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/signing-keys/_category_.json b/src/docs/avocado-linux/tools/avocado-cli/commands/signing-keys/_category_.json new file mode 100644 index 00000000..6c1477ba --- /dev/null +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/signing-keys/_category_.json @@ -0,0 +1,6 @@ +{ + "label": "signing-keys", + "position": 10, + "collapsible": true, + "collapsed": true +} diff --git a/src/docs/avocado-linux/tools/avocado-cli/commands/signing-keys/create.md b/src/docs/avocado-linux/tools/avocado-cli/commands/signing-keys/create.md new file mode 100644 index 00000000..1f08d044 --- /dev/null +++ b/src/docs/avocado-linux/tools/avocado-cli/commands/signing-keys/create.md @@ -0,0 +1,21 @@ +``` +Create a new signing key or register an external PKCS#11 key + +Usage: avocado signing-keys create [OPTIONS] [NAME] + +Arguments: + [NAME] Name for the key (defaults to key ID if not provided) + +Options: + --uri PKCS#11 URI for hardware-backed keys (e.g., 'pkcs11:token=YubiKey;object=signing-key') + --pkcs11-device Hardware device type (tpm, yubikey, or auto-detect) + --token PKCS#11 token label (e.g., 'avocado', 'YubiKey PIV'). If not provided, uses the first available token + --key-label