← ClaudeAtlas

sales-demos-verify-eelisted

Run a playbook inside the execution environment AAP actually uses, instead of beside it on the laptop, so a local run verifies the dependency set production runs on. Wraps utilities/run-in-ee.sh (ansible-navigator + podman) and diffs the result against a laptop run. TRIGGER when: the user is about to merge a playbook change, asks to verify or test a playbook properly, asks whether something will work from AAP, hits a job template failure a laptop run will not reproduce, or sees 'couldn't resolve module/action' at runtime but not locally. SKIP: if the user wants to build or publish the EE image itself — that is sales-demos-ee-build — or just wants to run a phase against a cluster, which is that phase's own skill.
ericcames/sales.demos · ★ 1 · Code & Development · score 67
Install: claude install-skill ericcames/sales.demos
# sales-demos-verify-ee Runs a playbook **inside** `sales-demos-ee`, the image AAP runs job templates on, rather than beside it on the laptop. ## Why this exists `ansible-playbook` on your laptop resolves `~/.ansible/collections` and the system python. An AAP job template resolves whatever the EE baked in. **Those are two dependency sets and only one of them is what production uses.** Nothing else here can tell them apart. `README.md` says it outright: *"A green CI run does not mean a playbook works — the lint gate cannot execute anything."* So a local run is this repo's only pre-merge verification, and by default it verifies the wrong one. Three times now that gap has held a real defect: | | What it was | What saw it | |---|---|---| | #122 | `python3-devel` repointed `/usr/bin/python3` from 3.12 to 3.9, whose site-packages has no `kubernetes` — every `kubernetes.core` task would fail at runtime on an image that built and pushed clean | nothing, until someone ran it in the image | | #173 | `validate.yml` passes on the laptop, fails in the EE — `check mode and async cannot be used on same task`. Underneath it, `validate.yml` had never once exercised `infra.aap_configuration`'s check-mode paths, on either machine | this skill, first serious use | | #120 | the gap itself | — | ## What is different, and it is not the collections Every collection pin matches exactly, laptop and EE. `build-ee.sh` checks that and is green. **The divergence is underneath them:** **Check this