Skip to content

fix: case-insensitive grep for CI readiness probe#28

Merged
gitricko merged 3 commits into
mainfrom
fix/ci-readiness-grep-case
Jun 22, 2026
Merged

fix: case-insensitive grep for CI readiness probe#28
gitricko merged 3 commits into
mainfrom
fix/ci-readiness-grep-case

Conversation

@gitricko

Copy link
Copy Markdown
Owner

Summary

The CI build-test job in docker-publish.yml waits for the container to report readiness before proceeding to port polling and self-check. The readiness probe greps the container logs for "all hermes-agent services started and ready" (lowercase all), but the startup script emits "All hermes-agent services started and ready" (capital A). grep -q is case-sensitive by default, so the match never fires and the job times out after 120s — even though the container actually starts and passes all health checks.

Commit Breakdown

  • fix: case-insensitive grep for CI readiness probe
    • What: Added -i flag to the grep on line 82, making it grep -qi
    • Why: The grep pattern has lowercase "all" but the log line uses capital "All". Since grep -q is case-sensitive, the match never fires and the 120s timeout expires.
    • File: .github/workflows/docker-publish.yml (1 line changed)

How to test locally

No local test needed — this is pure CI logic. The fix can be verified by:

  1. The PRs own CI run — the build-test job should now match on "All hermes-agent services started and ready" and proceed past the readiness wait.
  2. To simulate: echo "All hermes-agent services started and ready." | grep -qi "all hermes-agent services started and ready" should exit 0.

Checklist

  • Surgical change — one line, one flag
  • Commit message states problem before fix
  • Test described (simulate grep match locally)
  • Branch created from latest main

Caveats

  • This does not address the borderline 120s init time on fresh CI runners — the container just barely makes it. If future releases add startup latency, the timeout may still need bumping. But for now, this single -i flag fully resolves the false-negative.

gitricko added 3 commits June 22, 2026 08:16
The readiness check greps for 'all hermes-agent services started and
ready' but the log line capitalizes 'All' — grep -q is case-sensitive
by default, causing the CI to timeout at 120s waiting for a match
that never fires. Using -i flag makes the match case-insensitive.
@gitricko gitricko merged commit 3224e1e into main Jun 22, 2026
4 checks passed
@gitricko gitricko deleted the fix/ci-readiness-grep-case branch June 22, 2026 09:05
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.

1 participant