sales-demos-ee-buildlisted
Install: claude install-skill ericcames/sales.demos
# sales-demos-ee-build
Builds the image AAP runs this repo's playbooks on:
`quay.io/zigfreed/sales-demos-ee`, defined by `execution-environment.yml` at the
repo root.
**Why it exists.** Phase 3 (#4) drives `terraform/ocpvirt/` by shelling out to
the terraform CLI. No stock execution environment ships that binary. That is the
entire reason for a custom image — everything else in it could have come from
`ee-supported-rhel9` unchanged.
Like `sales-demos-collections-sync`, this skill has **no playbook**, and that is
deliberate. The "skill wraps a playbook" contract in `CLAUDE.md` exists so
anything touching
a demo environment is runnable from AAP too. This builds a container on your
laptop and pushes it to a registry; it must never run from AAP, and there is
nothing for a job template to call.
## Never reimplement the build here
`utilities/build-ee.sh` is the build. It stages `~/.ansible.cfg`, builds,
verifies the image as UID 1000, and optionally pushes. Do not run
`ansible-builder` directly and do not paste its flags into a chat command —
the staging step is not optional, and skipping it produces an image with no
Automation Hub token and a confusing galaxy failure.
## Preflight Check
```bash
# 1. Build tooling
command -v ansible-builder >/dev/null && echo "✅ ansible-builder $(ansible-builder --version)" || echo "❌ ansible-builder missing"
command -v podman >/dev/null && echo "✅ $(podman --version)" || echo "❌ podman missing"
# 2. ~/.ansib