Skip to content

cloud: push only amd64 for the operator-cloud image - #5128

Merged
Brian-McM merged 1 commit into
tigera:masterfrom
Brian-McM:bm-cloud-push-amd64-only
Jul 30, 2026
Merged

cloud: push only amd64 for the operator-cloud image#5128
Brian-McM merged 1 commit into
tigera:masterfrom
Brian-McM:bm-cloud-push-amd64-only

Conversation

@Brian-McM

Copy link
Copy Markdown
Contributor

Description

Bug fix for the Calico Cloud release/CD tooling.

The cloud variant (VARIANT=cloud) builds and tags the operator-cloud image for amd64 only:
image-all, tag-images-all, and manifest creation all iterate $(VALIDARCHES), which the cloud
block pinned to amd64. But push-all iterates $(ARCHES), which was left at all four arches
(amd64 arm64 ppc64le s390x). So the post-merge CD push-all tried to push arches that were never
built, and failed:

docker push gcr.io/tigera-tesla/operator-cloud:master-arm64
tag does not exist: gcr.io/tigera-tesla/operator-cloud:master-arm64
make: *** [Makefile:213: sub-single-push-gcr.io___] Error 1

Fix: constrain ARCHES:=amd64 in the cloud block instead of only VALIDARCHES. VALIDARCHES
derives from ARCHES, so every image target — build, tag, push, manifest — now agrees on amd64.
The change is inside the ifeq ($(VARIANT),cloud) block, so enterprise/OSS builds are unaffected.

Testing — verified target expansion with make -pn:

Target Enterprise Cloud
push-all sub-push-amd64 sub-push-arm64 sub-push-ppc64le sub-push-s390x sub-push-amd64
tag-images-all all four sub-tag-images-amd64

Enterprise expansion is unchanged; cloud push-all now matches what actually gets built.

Components affected: build/release tooling (Makefile) for the Calico Cloud operator image only.

Follow-up to #4980 (the cloud un-fork), which introduced the cloud variant.

Release Note

NONE

For PR author

  • Tests for change.
  • If changing pkg/apis/, run make gen-files
  • If changing versions, run make gen-versions

For PR reviewers

A note for code reviewers - all pull requests must have the following:

  • Milestone set according to targeted release.
  • Appropriate labels:
    • kind/bug if this is a bugfix.
    • kind/enhancement if this is a a new feature.
    • enterprise if this PR applies to Calico Enterprise only.

@caseydavenport caseydavenport left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

over-commented, but otherwise LGTM

…ches

The cloud variant only builds amd64, but push-all iterates ARCHES while
tag-images-all/image-all iterate VALIDARCHES. Setting only VALIDARCHES:=amd64
left push-all trying to push arm64/ppc64le/s390x, which were never built:
  tag does not exist: gcr.io/tigera-tesla/operator-cloud:master-arm64
Constrain ARCHES itself; VALIDARCHES derives from it, so all image targets
agree on amd64. Enterprise is unaffected (guarded by VARIANT=cloud).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Brian-McM
Brian-McM force-pushed the bm-cloud-push-amd64-only branch from 5103113 to f81b017 Compare July 30, 2026 22:53
@Brian-McM
Brian-McM merged commit 8fea924 into tigera:master Jul 30, 2026
4 checks passed
@Brian-McM
Brian-McM deleted the bm-cloud-push-amd64-only branch July 30, 2026 22:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants