Skip to content

Update Windows manifest handling in push-agones-sdk-manifest#4136

Merged
markmandel merged 1 commit intoagones-dev:mainfrom
0xaravindh:buildx/manifest
Mar 27, 2025
Merged

Update Windows manifest handling in push-agones-sdk-manifest#4136
markmandel merged 1 commit intoagones-dev:mainfrom
0xaravindh:buildx/manifest

Conversation

@0xaravindh
Copy link
Copy Markdown

@0xaravindh 0xaravindh commented Mar 27, 2025

What type of PR is this?

Uncomment only one /kind <> line, press enter to put that in a new line, and remove leading whitespace from that line:

/kind breaking

/kind bug

/kind cleanup
/kind documentation
/kind feature
/kind hotfix
/kind release

What this PR does / Why we need it:

Which issue(s) this PR fixes:

Fixes the issue where setting WITH_ARM=0 and WITH_WINDOWS=0 did not properly skip ARM and Windows builds

Closes #4135

Special notes for your reviewer:

@0xaravindh 0xaravindh self-assigned this Mar 27, 2025
@github-actions github-actions bot added the kind/bug These are bugs. label Mar 27, 2025
@0xaravindh 0xaravindh added area/build-tools Development tooling. I.e. pretty much everything in the `build` directory. kind/cleanup Refactoring code, fixing up documentation, etc labels Mar 27, 2025
@agones-bot
Copy link
Copy Markdown
Collaborator

Build Succeeded 🥳

Build Id: ff43f0fa-2b77-418d-af0b-c3ef623d9e46

The following development artifacts have been built, and will exist for the next 30 days:

A preview of the website (the last 30 builds are retained):

To install this version:

git fetch https://github.com/googleforgames/agones.git pull/4136/head:pr_4136 && git checkout pr_4136
helm install agones ./install/helm/agones --namespace agones-system --set agones.image.registry=us-docker.pkg.dev/agones-images/ci --set agones.image.tag=1.49.0-dev-53e7700

@markmandel
Copy link
Copy Markdown
Collaborator

markmandel commented Mar 27, 2025

Fun question for you - have you tried this. I'm getting a follow up weird issue.

So this in my dev.mk settings

REGISTRY=repository.dev/images

WITH_WINDOWS=0
WITH_ARM64=0

Then when I run:

❯ make -j 4 build-images && make push
mkdir -p ~/.kube/
mkdir -p /home/mark/workspace/agones/build//.gocache
docker run --rm -v /home/mark/workspace/agones/build//.config/gcloud:/root/.config/gcloud -v ~/.kube/:/root/.kube -v ~/.config/helm:/root/.config/helm -v ~/.cache/helm:/root/.cache/helm -v /home/mark/workspace/agones:/go/src/agones.dev/agones -v /home/mark/workspace/agones/build//.gomod:/go/pkg/mod -v /home/mark/workspace/agones/build//.gocache:/root/.cache/go-build agones-build:ab19615508 /go/src/agones.dev/agones/build/extract-licenses.sh
mkdir -p /home/mark/workspace/agones/build//.config/gcloud
docker run --rm -v /home/mark/workspace/agones/build//.config/gcloud:/root/.config/gcloud -v ~/.kube/:/root/.kube -v ~/.config/helm:/root/.config/helm -v ~/.cache/helm:/root/.cache/helm -v /home/mark/workspace/agones:/go/src/agones.dev/agones -v /home/mark/workspace/agones/build//.gomod:/go/pkg/mod -v /home/mark/workspace/agones/build//.gocache:/root/.cache/go-build agones-build:ab19615508 /go/src/agones.dev/agones/build/build-required-src-dist.sh
mkdir -p ~/.config/helm
mkdir -p ~/.cache/helm
make ensure-image IMAGE_TAG=agones-build:ab19615508 BUILD_TARGET=build-build-image
...
docker build /home/mark/workspace/agones/cmd/controller/ --tag=repository.dev/images/agones-controller:1.49.0-dev-53e7700-amd64
[+] Building 0.8s (9/9) FINISHED                                                                                                                                                                                                                                                                               docker:default
 => [internal] load build definition from Dockerfile                                                                                                                                                                                                                                                                     0.0s
 => => transferring dockerfile: 860B                                                                                                                                                                                                                                                                                     0.0s
 => [internal] load metadata for gcr.io/distroless/static-debian12:nonroot                                                                                                                                                                                                                                               0.3s
 => [internal] load .dockerignore                                                                                                                                                                                                                                                                                        0.0s
 => => transferring context: 2B                                                                                                                                                                                                                                                                                          0.0s
 => [1/5] FROM gcr.io/distroless/static-debian12:nonroot@sha256:b35229a3a6398fe8f86138c74c611e386f128c20378354fc5442811700d5600d                                                                                                                                                                                         0.0s
 => [internal] load build context                                                                                                                                                                                                                                                                                        0.3s
 => => transferring context: 84.95MB                                                                                                                                                                                                                                                                                     0.3s
 => CACHED [2/5] COPY ./bin/controller.linux.amd64 /controller                                                                                                                                                                                                                                                           0.0s
 => CACHED [3/5] COPY ./bin/LICENSES .                                                                                                                                                                                                                                                                                   0.0s
 => CACHED [4/5] COPY ./bin/dependencies-src.tgz .                                                                                                                                                                                                                                                                       0.0s
 => exporting to image                                                                                                                                                                                                                                                                                                   0.0s
 => => exporting layers                                                                                                                                                                                                                                                                                                  0.0s
 => => writing image sha256:7d9b6b53793c22b7e78ddf96f8acb93b890c1080e3960d826bb2117518d19325                                                                                                                                                                                                                             0.0s
 => => naming to repository.dev/images/agones-controller:1.49.0-dev-53e7700-amd64                                                                                                                                                                                                                     0.0s
docker push repository.dev/images/agones-controller:1.49.0-dev-53e7700-amd64
The push refers to repository [repository.dev/images/agones-controller]
2b351d3255dd: Pushed
faa78c2faf86: Pushed
b8af84d97b91: Pushed
b336e209998f: Layer already exists
f4aee9e53c42: Layer already exists
1a73b54f556b: Layer already exists
2a92d6ac9e4f: Layer already exists
bbb6cacb8c82: Layer already exists
6f1cdceb6a31: Layer already exists
af5aa97ebe6c: Layer already exists
4d049f83d9cf: Layer already exists
9e81792d7b00: Layer already exists
8fa10c0194df: Layer already exists
b7f712dabf33: Layer already exists
1.49.0-dev-53e7700-amd64: digest: sha256:755d3d3d44acf50592e8dc0bfcd191752e880f3bc754c7c706ef6924208d0f5a size: 3233
# Docker >=24.0.6
docker buildx imagetools create --tag repository.dev/images/agones-controller:1.49.0-dev-53e7700 repository.dev/images/agones-controller:1.49.0-dev-53e7700-amd64

and then it hangs on this step. Are you seeing the same thing? I'm curious if it's just me or not.

So I can't push to an external artifact registry at all at this point 😞 either with all image architectures, or just with the linux x86 version.

@markmandel
Copy link
Copy Markdown
Collaborator

markmandel commented Mar 27, 2025

Okay that's wacky. It took a while but it looks like it actually passed. I wonder why the docker buildx imagetools create takes so long 🤔 waiting for the rest to finish.

Copy link
Copy Markdown
Collaborator

@markmandel markmandel left a comment

Choose a reason for hiding this comment

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

LGTM!

@markmandel markmandel merged commit dd4ec2b into agones-dev:main Mar 27, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/build-tools Development tooling. I.e. pretty much everything in the `build` directory. kind/bug These are bugs. kind/cleanup Refactoring code, fixing up documentation, etc

Projects

None yet

Development

Successfully merging this pull request may close these issues.

make push-agones-sdk-manifest fails

3 participants