fix: build make dev images the way the release builds them - #189
Merged
Merged
Conversation
make dev built hyperdx:local with NEXT_PUBLIC_IS_LOCAL_MODE=true, which the released dfe-hyperdx image never sets. That arg came in with the opt-in HyperDX stack (d556ee1), when compose ran HyperDX with no auth and browser-local state. #96 moved compose to server-side HyperDX (oidc-proxy auth, sources and dashboards in FerretDB) but left the build arg, so every local HyperDX ran with authentication off and its state in localStorage. The dev build now passes no build arg, so the Dockerfile default the release uses applies. dfe-dashboards runs the engine image and was missing from IMAGE_CONSUMERS and the override, so a local engine build left it copying dashboards out of the registry engine. It is repointed now, and listed in IMPLICIT_CONSUMERS because hyperdx starts it on a stack with the engine off. The new tests read which services run each image straight off docker-compose.yml, so the next one added there fails check-tests instead of drifting.
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.
make devwas building two things differently from what ships.NEXT_PUBLIC_IS_LOCAL_MODE=true. The released dfe-hyperdx image gets onlyCODE_VERSIONfrom hyperi-ci, so it runs the Dockerfile default,false.IMAGE_CONSUMERSor the override, so a local engine build left it copying dashboards out of the registry engine.Why LOCAL_MODE was there: it came in with the opt-in HyperDX stack (d556ee1), when compose ran HyperDX with no auth and browser-local state. #96 moved compose to server-side HyperDX (oidc-proxy auth, sources and dashboards in FerretDB) and did not touch the build arg. So every local HyperDX since has run with auth OFF (entry.prod.sh sets
IS_LOCAL_APP_MODE=DANGEROUSLY_is_local_app_modeontrue) and kept its sources in localStorage, where the provisioner cannot reach them. Nothing still needs it.What it does now:
--build-arg, so the release's Dockerfile defaults applyIMAGE_CONSUMERSand the override, and sits inIMPLICIT_CONSUMERSbecause hyperdx starts it on a stack with the engine offscripts/tests/test_build_dev_images.pyreads which services run each image straight off docker-compose.yml, so the next consumer added there fails check-tests. Thecontract-andcatalogue-one-shots stay on the pin on purpose, and developing.md now says so for both.make check-compose check-hardfail check-docs check-python check-testsgreen locally, 723 tests. No image was built and no stack started.