Drop the public-serving path - #21
Merged
Merged
Conversation
Removes the server stack, the public and TLS overlays, Caddy, the generated public dashboard and the three scripts around them - 3,300 lines that have never run on this machine. There is no FLEET_DOMAIN, no ACME_EMAIL and no JQ_REPOS anywhere in the setup, which is the whole configuration surface that path needs. docker-compose.server.yml standalone stack for an always-on host docker-compose.public.yml laptop stack, served world-readable docker-compose.tls.yml Caddy in front, Let's Encrypt caddy/Caddyfile scripts/bootstrap-server.sh first run on a fresh host scripts/check-public-safe.sh the preflight scripts/restart.sh the everyday server counterpart scripts/make-public-dashboard.py generated fleet-public.json grafana/dashboards/fleet-public.json (2,387 lines on its own) docs/serving.md Three compose files become two: the laptop stack plus the admin overlay purge-repo.sh needs. CI loses the fleet-public.json staleness gate and three compose-overlay checks - that gate cost a regeneration step on every dashboard edit, for an artefact nobody serves. Also reworded five collector comments and one docs paragraph that explained themselves in terms of "on a server" or "served world-readable". The code paths they describe are real and untouched - an empty JQ_REPO_ROOT still skips local scanning, JQ_PUBLIC_ONLY still works - they just needed a reason that still exists. One behaviour change, in .env.example only: JQ_PUBLIC_ONLY was seeded to true with a comment saying to set it before serving publicly. With no public path left that would silently hide private repos from a new board for a reason that no longer applies, so it now matches the collector's own default of false. Existing .env files are untouched.
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.
Removes the server stack, the public and TLS overlays, Caddy, the generated public dashboard and the three scripts around them — 3,300 lines that have never run on this machine. There is no
FLEET_DOMAIN, noACME_EMAILand noJQ_REPOSanywhere in the setup, which is the entire configuration surface that path needs.Removed
docker-compose.server.ymldocker-compose.public.ymldocker-compose.tls.yml+caddy/scripts/bootstrap-server.shscripts/check-public-safe.shscripts/restart.shscripts/make-public-dashboard.pyfleet-public.jsongrafana/dashboards/fleet-public.jsondocs/serving.mdThree compose files become two: the laptop stack plus the admin overlay
purge-repo.shneeds.CI gets smaller
Loses the
fleet-public.jsonstaleness gate and three compose-overlay checks. That gate cost a regeneration step on every dashboard edit, for an artefact nobody serves.Comments that explained themselves in terms of a deleted deployment
Five collector comments and one docs paragraph justified themselves with "on a server" or "served world-readable". The code paths they describe are real and untouched — an empty
JQ_REPO_ROOTstill skips local scanning,JQ_PUBLIC_ONLYstill works — they just needed a reason that still exists.One behaviour change, in
.env.exampleonlyJQ_PUBLIC_ONLYwas seeded totruewith a comment saying to set it before serving publicly. With no public path left, that would silently hide private repos from a new board for a reason that no longer applies, so it now matches the collector's own default offalse. Existing.envfiles are untouched.Checks
51 tests, ruff,
check-dashboard.py,mkdocs build --strict, both remaining compose stacks parse, every surviving shell and Python script parses. The running stack is unaffected — it only ever useddocker-compose.yml.Relationship to #20
Independent. Both branch from
main, and I verified they merge cleanly in either order, with the result byte-identical to the combined state either way.