Skip to content

Ship the binary in the runtime image and gate it in CI - #71

Merged
Yanujz merged 1 commit into
mainfrom
issue-67-ci-docker
Sep 20, 2026
Merged

Yanujz merged 1 commit into
mainfrom
issue-67-ci-docker

Conversation

@Yanujz

@Yanujz Yanujz commented Sep 20, 2026

Copy link
Copy Markdown
Collaborator

What changes for operators?

Critical fix: the runtime image never contained the binary (docker compose up exited instantly) — the missing COPY --from=build is added. CI now builds the image and smoke-runs version on every PR, plus validates the compose file, so Docker packaging can't rot silently again. Verified locally end to end: build, version smoke, and a booted container serving /healthz 200 + live probe results.

Failing-then-passing test

Pre-fix image: docker run → exec: /epmon: no such file or directory. Post-fix: boots and serves. The new CI job automates exactly this (build + run-version + compose config).

Checklist

  • Image built, version-smoked, and boot-tested locally (healthz 200, status live)
  • Workflow YAML parses; gofmt -l . clean (no Go changes)
  • OpenAPI updated if API surface changed — N/A
  • No fabricated history — N/A
  • No secrets, tokens, or hosts I don't own in the diff

Fixes #67

The multi-stage Dockerfile never copied /epmon into the runtime
stage, so the documented docker compose path exited immediately.
Add the missing COPY, and cover the container path in CI with a
build plus a version smoke run (entrypoint form, since ENTRYPOINT
carries the config flag).

Fixes #67
@Yanujz
Yanujz merged commit e7ab640 into main Sep 20, 2026
2 checks passed
@Yanujz
Yanujz deleted the issue-67-ci-docker branch September 20, 2026 10:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CI never builds the Docker image

1 participant