fix: keep image sync going when an upstream service disappears - #24
Draft
STRRL wants to merge 1 commit into
Draft
Conversation
Upstream removed the kong service from the default compose file (supabase/supabase#48153, Envoy is the default gateway now). The sync script listed kong first and exited on the first missing service, so the 2026-08-17 scheduled run aborted before touching any other component. Drop kong from the sync list and pin DefaultKongImage by hand, the same way DefaultPostgresImage is pinned. Collect missing services instead of exiting on the first one, report them all at the end, and still exit non zero so the scheduled run stays loud. Also sync studio to the current upstream tag.
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.
Problem
The weekly image sync has been failing since 2026-08-17 with
ERROR: service 'kong' not found in upstream compose file.Upstream removed the
kongservice from the default compose file in supabase/supabase#48153, where Envoy became the default API gateway. Kong lives on there as an opt in override indocker-compose.kong.yml.kongwas the first entry inMAPPINGS, and the loop exited on the first missing service, so the whole sync aborted before looking at any other component. One upstream rename was enough to stop everything.Solution
Take
kongout of the sync list and pinDefaultKongImageby hand, the same wayDefaultPostgresImageis already pinned. Make the loop collect missing services and report all of them at the end instead of dying on the first one, while still exiting non zero so a scheduled run stays loud.Major Changes
hack/sync-upstream-images.shkongremoved fromMAPPINGS, with a note on whyapi/v1alpha1/wellknown_images.goDefaultKongImagemoved out of the synced block into the manually pinned section, value unchanged atkong/kong:3.9.12026.08.03-sha-022b374. The other five components were already currentVerification
set -uproblems with the empty arraymake manifestsproduces exactly one CRD change (studio default) and is idempotentmake testgreenNote
At the CI level this does not yet let a partial sync through: the sync step exits non zero, so
make testand the PR creation step are skipped. A future upstream removal will still produce a red run with no PR. That is the intended tradeoff for now, favouring a loud failure over a silent partial sync.