원클릭으로
ollama37-ci-apply
Apply a built ollama37 image onto a testbed through CI — recreate the container, never docker compose by hand
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Apply a built ollama37 image onto a testbed through CI — recreate the container, never docker compose by hand
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Build the ollama37 CI image on a self-hosted GPU runner — never with a local make
Run a decision-grade FA/CUDA performance experiment via CI — verified throughput, self-reverting testbed
Graph-first verify discipline: re-ground in the codebase knowledge graph before AND after any non-trivial code change, and especially after a failed build/test or wrong output. Re-index the changed repo, re-trace the symbols you touched (callers, callees, data flow), and — for a port/adaptation — diff against the reference project, then verify against the live file before editing. Confirm any relationship- or reachability-based claim (who-calls, what-derefs, which-case-runs) with a graph trace, not grep alone. Use when implementing or porting non-trivial code, when an attempt fails, or before iterating on a fix. Complements (does not replace) the codebase-memory tool reference and codebase-graph-navigation IDE-movement skills.
Execute test cases with the simple judge by default, or opt in the agent judge
Generate YAML test cases from requirements or acceptance criteria
| name | ollama37-ci-apply |
| description | Apply a built ollama37 image onto a testbed through CI — recreate the container, never docker compose by hand |
| user-invocable | true |
Roll a freshly built image onto a testbed through the GitHub Actions runtime workflow on a self-hosted
runner — never docker compose up or docker exec on a dev box. To build the image first, see
ollama37-ci-build.
$ARGUMENTS
test-runtime.yml is how a built image is applied. TC-RUNTIME-001 runs docker compose down
then docker compose up -d, which recreates the container from dogkeeper886/ollama37:latest — the
tag docker-compose.yml reads. The ollama-data volume is external, so pulled models survive the
recreate. The same run then exercises the runtime checks (startup, GPU detection, health).
Precondition — confirm the retag, or you apply a STALE image. The build produces ollama37:latest;
only TC-BUILD-004 retags it to dogkeeper886/ollama37:latest (the tag compose reads). So apply
picks up your fresh build only if the build ran that retag. A full test-build.yml run does (TC-BUILD-004 runs in the build suite) — but a single-test build
(-f test_id=TC-BUILD-002) skips it, leaving
the compose tag pointing at the previous image. Before applying, confirm the retag actually
succeeded — grep the build run for TC-BUILD-004's success line, not just its name (the name appears
whether it passed or failed): gh run view <build-run> --log | grep 'retagged sha256'. No match →
the recreate, and every test after it, silently exercises stale code.
gh workflow run test-runtime.yml --ref <branch> -f runner_label=<sm37|sm75>
runner_label — which box: sm37 (rocky9-k80-cicd-1, the reference K80 testbed) or sm75
(rocky9-2060-cicd-1, RTX 2060). Default sm37. Never a bare runs-on: self-hosted — a K80 sweep on
a consumer card produces numbers that look valid and are not.--ref <branch> — check out that branch's docker-compose.yml and testcases. Omit for the
default branch.Never docker compose up/down yourself to apply an image — run the runtime workflow so the recreate
is logged and reproducible.
ollama37-ci-build builds the image; this skill applies it; then the test suites
(test-models.yml, etc.) exercise it. test-pipeline.yml chains build → runtime → inference → models for one runner_label if you want the whole flow in one run — and because the build suite
retags the fresh image to the tag compose reads (TC-BUILD-004, see ollama37-ci-build), that one
pipeline run builds and applies the new bits. Testing is single-host; the retired cross-host
by-digest path no longer applies.