From fc26a5a1c8fa28707f6ae0c5bbd4a81f4481f48f Mon Sep 17 00:00:00 2001 From: Ben Date: Sat, 23 May 2026 15:00:43 +1000 Subject: [PATCH] fix(ci): drop --entrypoint override in hermes-smoke-test action MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR #30136 review caught a silent regression: the smoke-test action overrode ENTRYPOINT to `/opt/hermes/docker/entrypoint.sh`, which the s6-overlay migration reduced to a shim that just `exec`s the stage2 hook. stage2-hook ignores its CMD args, prints "Setup complete", and exits 0 — so `hermes --help` and `hermes dashboard --help` never ran. The #9153 regression guard was a green-always no-op. Drop the override so the smoke test uses the image's real ENTRYPOINT chain (`/init` + `main-wrapper.sh`), which is the actual production startup path. `hermes --help` and `hermes dashboard --help` now run through the full supervision tree and exercise the real argv routing. --- .github/actions/hermes-smoke-test/action.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/actions/hermes-smoke-test/action.yml b/.github/actions/hermes-smoke-test/action.yml index 08b9f93634d..8b79c4bf34d 100644 --- a/.github/actions/hermes-smoke-test/action.yml +++ b/.github/actions/hermes-smoke-test/action.yml @@ -29,9 +29,13 @@ runs: - name: hermes --help shell: bash run: | + # Use the image's real ENTRYPOINT (/init + main-wrapper.sh) so + # this exercises the actual production startup path. PR #30136 + # review caught that an --entrypoint override here had been + # silently neutered by the s6-overlay migration — stage2-hook + # ignores its CMD args, so the smoke test was a no-op. docker run --rm \ -v /tmp/hermes-test:/opt/data \ - --entrypoint /opt/hermes/docker/entrypoint.sh \ "${{ inputs.image }}" --help - name: hermes dashboard --help @@ -43,5 +47,4 @@ runs: # installed package. docker run --rm \ -v /tmp/hermes-test:/opt/data \ - --entrypoint /opt/hermes/docker/entrypoint.sh \ "${{ inputs.image }}" dashboard --help