9e8f1bbeed
Dashboard / frontend (push) Failing after 0s
Dashboard / api (push) Failing after 0s
Lint PowerShell / powershell-lint (ubuntu-latest) (push) Failing after 1s
Python Lint / Lint Python with Ruff (push) Failing after 1s
ShellCheck / Lint shell scripts (push) Failing after 1s
Matrix Smoke / linux-smoke (push) Failing after 1s
Matrix Smoke / distro: cachyos (push) Failing after 15s
Matrix Smoke / distro: linux-mint-21.3 (push) Failing after 15s
Matrix Smoke / distro: debian-12 (push) Failing after 5m21s
Matrix Smoke / distro: fedora-41 (push) Failing after 4m56s
Matrix Smoke / distro: ubuntu-24.04 (push) Failing after 2m13s
Matrix Smoke / distro: rocky-9 (push) Failing after 10m39s
Matrix Smoke / distro: manjaro (push) Failing after 12m11s
Matrix Smoke / distro: opensuse-tw (push) Failing after 11m53s
Matrix Smoke / distro: archlinux (push) Failing after 20m3s
Matrix Smoke / distro: ubuntu-22.04 (push) Failing after 13m49s
Validate .env Schema / tier-1-env-validation (push) Successful in 52s
Validate .env Schema / tier-2-env-validation (push) Successful in 44s
Validate .env Schema / tier-3-env-validation (push) Successful in 52s
Validate .env Schema / tier-4-env-validation (push) Successful in 51s
Validate Extensions Catalog / Check catalog is up-to-date (push) Failing after 9m47s
Secret Scan / Scan for secrets (push) Failing after 21m4s
Validate Docker Compose / Validate Docker Compose files (push) Has been cancelled
Python Type Check / Type check with mypy (push) Has been cancelled
Validate .env Schema / tier-0-env-validation (push) Has been cancelled
Test Linux / integration-smoke (push) Has been cancelled
Lint PowerShell / powershell-lint (windows-latest) (push) Has been cancelled
Matrix Smoke / macos-smoke (push) Has been cancelled
1.4 KiB
1.4 KiB
Capability Profile Contract
ODS now exposes a normalized installer capability profile so platform and hardware decisions are not scattered through installer code.
Contract
- Schema:
config/capability-profile.schema.json - Generator:
scripts/build-capability-profile.sh - Default output:
.capabilities.jsonin repo root - Installer runtime output:
/tmp/ods-capabilities.json(override withCAPABILITY_PROFILE_FILE)
Generate
scripts/build-capability-profile.sh --output /tmp/ods-capabilities.json
For shell-driven installers:
source lib/safe-env.sh
CAPABILITY_ENV="$(scripts/build-capability-profile.sh --env)"
load_env_from_output <<< "$CAPABILITY_ENV"
This exports:
CAP_PLATFORM_ID,CAP_PLATFORM_FAMILYCAP_GPU_VENDOR,CAP_GPU_NAME,CAP_GPU_MEMORY_TYPE,CAP_GPU_COUNT,CAP_GPU_VRAM_MBCAP_LLM_BACKEND,CAP_LLM_HEALTH_URL,CAP_LLM_API_PORTCAP_RECOMMENDED_TIERCAP_COMPOSE_OVERLAYSCAP_HARDWARE_CLASS_ID,CAP_HARDWARE_CLASS_LABEL
Current installer use
install-core.sh now consumes this profile for:
- tier recommendation normalization (
T1..T4,SH_*) - backend/memory overrides (
nvidiavsamd) - compose overlay selection (
base+nvidiaorbase+amd) with legacy fallback - LLM health endpoint selection for AMD paths
- installer preflight evaluation via
scripts/preflight-engine.sh