From e9ffd0e3f9931b000d94cb1be28dd322fc5bc99f Mon Sep 17 00:00:00 2001 From: Sameh Abouelsaad Date: Sun, 26 Jul 2026 20:33:46 +0300 Subject: [PATCH] fix(ci): pin container image names instead of deriving them from the repo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Container packages are scoped to the organisation and named at push time, so they are neither renamed nor redirected when a repository is renamed — unlike git, web, issues and stars, which are. Deriving the image name from the github.repository context therefore tied the published package name to the repository name. After this repo was renamed, the next release would have pushed to ghcr.io/threefoldtech/ledger_graphql_{processor,query-node}: brand new, empty packages. Meanwhile processor-chart/values.yaml and docker-compose.yml still reference tfchain_graphql_*, and those packages are live and public with 29 tags up to 2.12.3. The release would have appeared to succeed while changing nothing for any deployment, and the failure mode is absence of updates rather than an error, so it would not have been obvious. Pins both names to what every consumer already pulls, matching how the tfchain workflows have always declared theirs. Renaming the images is still an option later, but it is a breaking change for deployments and belongs in a deliberate step that updates the charts and compose files alongside it. --- .github/workflows/publish_container_images.yml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish_container_images.yml b/.github/workflows/publish_container_images.yml index 48ae0c2..ac200d4 100644 --- a/.github/workflows/publish_container_images.yml +++ b/.github/workflows/publish_container_images.yml @@ -26,7 +26,14 @@ jobs: id: metaprocessor uses: docker/metadata-action@v4 with: - images: ghcr.io/${{ github.repository }}_processor + # Pinned rather than derived from the github.repository context. Container + # packages are scoped to the organisation and named at push time, so they + # are not renamed or redirected when a repository is renamed. Interpolating + # the repository name meant this repo's rename would have silently started + # publishing to a brand new, empty package while every chart and compose + # file kept pulling the existing one — a release that changes nothing. + # The tfchain workflows pin their image names for the same reason. + images: ghcr.io/threefoldtech/tfchain_graphql_processor tags: | type=semver,pattern={{version}} @@ -42,7 +49,8 @@ jobs: id: metaquerynode uses: docker/metadata-action@v4 with: - images: ghcr.io/${{ github.repository }}_query-node + # Pinned for the same reason as the processor image above. + images: ghcr.io/threefoldtech/tfchain_graphql_query-node tags: | type=semver,pattern={{version}}