diff --git a/docs/guides/deploy-guide/manager.md b/docs/guides/deploy-guide/manager.md index fb086367f4..741af3db1d 100644 --- a/docs/guides/deploy-guide/manager.md +++ b/docs/guides/deploy-guide/manager.md @@ -45,6 +45,25 @@ cd environments/manager If you are working with Git branches, read [the instructions](../configuration-guide/manager.mdx). +`run.sh` automatically uses the [seed container](./seed.md#option-1-seed-container) when a +container engine (Docker or Podman) is available on the seed node. The default +`SEED_CONTAINER=auto` means you do not need to choose a separate execution method — +every step on this page is simply: + +```bash +./run.sh +``` + +Two environment variables control the seed-container behaviour. The rest are +auto-detected and pull `registry.osism.tech/osism/seed:latest`, so you normally +do not need to set anything: + +| Variable | Default | Purpose | +|:----------------------------|:---------|:------------------------------------------------------------------------------------------------------| +| `SEED_CONTAINER` | `auto` | `auto` uses the container when an engine is present; `true` forces it; `false` forces the local venv. | +| `CONTAINER_ENGINE` | `docker` | Set to `podman` to use Podman. | +| `SEED_CONTAINER_MOUNT_OPTS` | (empty) | Appended to the bind mount, e.g. `:z` or `:Z` for Podman on enforcing SELinux. | + ### Step 1: Create operator user The operator user is created on each node. It is used as a service account for OSISM. All diff --git a/docs/guides/deploy-guide/seed.md b/docs/guides/deploy-guide/seed.md index bdb2cd35a9..4b212e0bb1 100644 --- a/docs/guides/deploy-guide/seed.md +++ b/docs/guides/deploy-guide/seed.md @@ -25,7 +25,40 @@ The use of Linux on the seed node is recommended. Other operating systems should work without problems. It is assumed in this documentation that Ubuntu 24.04 is used on the seed node. -## Install required packages +There are two ways to run the seed tooling: + +* **Seed container** — a prebuilt container image with Ansible and all required + OSISM collections. The only prerequisite on the seed node is a working + Docker (or Podman) installation. No packages are installed on the seed node + itself. +* **Manual installation** — install the required packages on the seed node and + use the `run.sh` script from the configuration repository. + +## Option 1: Seed container {#option-1-seed-container} + +```bash +docker pull registry.osism.tech/osism/seed +``` + +`run.sh` itself runs the playbooks inside the seed container automatically — +there is no separate wrapper. When a container engine (Docker or Podman) is +available and `SEED_CONTAINER` is left at its default value of `auto`, `run.sh` +execs the `registry.osism.tech/osism/seed` image with the configuration +repository bind-mounted, so every Manager step is the same plain command: + +```bash +./run.sh +``` + +No extra setup is required beyond having Docker (or Podman) installed on the +seed node. The same `./run.sh ` command is used whether you are +running with the seed container or with a local venv installation — the +difference is transparent. + +To force the local-venv path (Option 2) even when a container engine is +present, set `SEED_CONTAINER=false` before running any playbook. + +## Option 2: Manual installation ```bash sudo apt-get install git python3-pip python3-virtualenv sshpass libssh-dev