feat: add healthchecks to cloudflared and rybbit's client - #147
Merged
Conversation
cloudflared has no shell in the image, so a CMD-SHELL wget/curl check won't work - but it ships its own readiness check specifically for this: `cloudflared tunnel ready` calls the local /ready endpoint and returns a proper exit code, gated behind --metrics actually being enabled (it's off by default). Verified live against the running container before committing: exit 0 once --metrics 0.0.0.0:20241 was added to the run command. rybbit's client (Next.js) has wget available and serves 200 on / - confirmed via docker exec against the live container. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Noticed on heimdall that
cloudflared-cloudflared-1andrybbit-client-1had no healthcheck at all - checked what's actually available in each image and confirmed both live on the deployed containers before adding.shisn't in$PATH), so a wget/curl-based check is out. It ships a purpose-built one instead:cloudflared tunnel readycalls the local/readyendpoint and exits accordingly - but it needs--metricsactually enabled (off by default). Added--metrics 0.0.0.0:20241to the run command and the matchinghealthcheck:. Verified live: exit 0 once metrics was on.wget, Next.js server responds 200 on/- confirmed viadocker execagainst the running container.Test plan
deploy/tests/(48 tests) pass