with one click
rebuild-test-image
"
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
"
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
"
"
"
"
"
"
| name | rebuild-test-image |
| description | " |
Dockerfile.test — the test image definition.github/workflows/docker-test-image.yml — fires only on Dockerfile.test path changes on mainMakefile — test-image target.github/workflows/test.yml — pulls the image from GHCR on every CI runMake the needed changes. Common scenarios:
Pinning bats helpers to a specific version (recommended — currently unpinned and cloned from HEAD):
# Before (broken — HEAD can have breaking changes):
RUN git clone https://github.com/bats-core/bats-support.git
# After (pinned to a specific tag):
RUN git clone --branch v1.11.1 --depth 1 https://github.com/bats-core/bats-support.git
Adding a system tool:
RUN apt-get update && apt-get install -y --no-install-recommends \
your-tool \
&& rm -rf /var/lib/apt/lists/*
make test-image
This builds and tags the image as ghcr.io/joelbarmettleruzh/ultrainit-test:latest locally.
make test-all
Verify all tests pass with the new image before pushing.
Commit and push Dockerfile.test to main. The .github/workflows/docker-test-image.yml workflow triggers only when Dockerfile.test changes on main.
git add Dockerfile.test
git commit -m "chore: pin bats-support to v1.11.1 in test image"
git push origin main
gh run list --workflow=docker-test-image.yml
gh run watch
The workflow pushes to ghcr.io/joelbarmettleruzh/ultrainit-test:latest. No version tag — always :latest.
Trigger a test run (push any change) and verify test.yml pulls successfully:
gh run list --workflow=test.yml
make test-image && make test-all
No concurrency control — docker-test-image.yml has no concurrency group. Two simultaneous pushes to main with Dockerfile.test changes race to push :latest. If this becomes a problem, add concurrency: { group: docker-build, cancel-in-progress: true } to the workflow.
GHCR image doesn't exist yet on a fresh fork — test.yml will hang or fail on image pull. Run make test-image and push first.
Editing Dockerfile.test on a branch, not main — docker-test-image.yml only fires on main. A branch change won't rebuild the GHCR image. Test locally with make test-image and verify before merging.