Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build Agones Windows images by default. #2037

Merged
merged 1 commit into from
Apr 2, 2021
Merged

Build Agones Windows images by default. #2037

merged 1 commit into from
Apr 2, 2021

Conversation

jeremyje
Copy link
Contributor

What type of PR is this?
/kind feature

Uncomment only one /kind <> line, hit 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

What this PR does / Why we need it:
Builds Windows container images by default so that they are easier to use out of the box.
This is done by turning on the WITH_WINDOWS=1 flag in the Makefile.

Which issue(s) this PR fixes:
Issue #54 is mostly complete.

Special notes for your reviewer:
This will add some latency to the Agones build.

@agones-bot
Copy link
Collaborator

Build Failed 😱

Build Id: a8702a6e-8b30-40c2-a23a-eb9897ff48fe

To get permission to view the Cloud Build view, join the agones-discuss Google Group.

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 87d51b8f-b951-4d7a-9a2d-5e03cd2ddb30

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/2037/head:pr_2037 && git checkout pr_2037
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.14.0-55c39b3

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 5360a3c3-d4ed-4d32-9ea0-9ad1cc67d525

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/2037/head:pr_2037 && git checkout pr_2037
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.14.0-8398688

@markmandel
Copy link
Member

Interesting - I thought this was going to add a lot of time to the build process, but it completed in 00:23:06 - which is about average for our usual build time - so that's pretty great!

build/Makefile Outdated
@@ -49,7 +49,7 @@ MINIKUBE_PROFILE ?= agones
GO_BUILD_TAGS ?= none
BUILDX_WINDOWS_BUILDER = windows-builder
WINDOWS_DOCKER_PUSH_ARGS =
WINDOWS_VERSIONS = ltsc2019 # 1909 (For GKE WINDOWS_SAC support)
WINDOWS_VERSIONS = ltsc2019 # 20H2 (For GKE WINDOWS_SAC support)
Copy link
Member

Choose a reason for hiding this comment

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

Wondering if we can add a comment/link here, about what these terms mean?

I'm not sure what the change to 20H2 means?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

1909 is going end of life soon. GKE now supports 20H2.

Copy link
Member

Choose a reason for hiding this comment

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

I don't know what those words mean 🙂 can we add a comment to point to the relevant docs somewhere?

Is the comment of 20H2 mean that we need to change something eventually? I'd just like this comment to be explicitly clear.

Copy link
Member

Choose a reason for hiding this comment

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

Is this the right link for details on what these terms mean?
https://cloud.google.com/kubernetes-engine/docs/concepts/node-images#windows-server

If so, can we add a comment above for reference this line for reference?

Copy link
Contributor Author

@jeremyje jeremyje Mar 31, 2021

Choose a reason for hiding this comment

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

Added some docs about versioning. Once Agones CI moves to Docker 20.10 this will be somewhat irrelevant as it'll be much easier to multi-arch against all versions of Windows.

Copy link
Member

Choose a reason for hiding this comment

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

Perfect! Thanks so much!

build/Makefile Show resolved Hide resolved
cloudbuild.yaml Show resolved Hide resolved
@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: f55cfa0c-2bfe-4db5-b521-aca41830cac5

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/2037/head:pr_2037 && git checkout pr_2037
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.14.0-f296878

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: a4223eb5-d2f5-4935-b411-0372ae404951

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/2037/head:pr_2037 && git checkout pr_2037
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.14.0-a1d838f

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: da19788e-9fd9-4091-8bac-e837d42ef16c

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/2037/head:pr_2037 && git checkout pr_2037
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.14.0-ae82551

@markmandel
Copy link
Member

Outside that adding one comment around what the terms mean for Windows container versions, this LGTM.

@roberthbailey WDYT?

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: ab660f78-a823-4ce9-aac8-16eeedcbcec9

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/2037/head:pr_2037 && git checkout pr_2037
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.14.0-67b8f80

Copy link
Member

@roberthbailey roberthbailey left a comment

Choose a reason for hiding this comment

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

I can't seem to add to the conversation above, but when you say

1909 is going end of life soon. GKE now supports 20H2.

and I look at https://cloud.google.com/kubernetes-engine/docs/how-to/creating-a-cluster-windows#version_mapping it appears that for k8s 1.18 (which is the version we currently support) you should still be using 1909 Core. And when we upgrade to k8s 1.19 is when we would switch to 20H2 Core.

I'm not sure how ltsc2019 maps to either of those, and the note was just in the comment before, but I can't tell which version we are building for in our CI and will build for our upcoming release (when we will build these images for the first time). We should make sure we are building targeting 1909 (even though it's almost EOL) so that it matches our supported k8s version on GKE.

examples/simple-game-server/Makefile Show resolved Hide resolved
@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 3508ae04-97cc-49de-8ee1-9cfeca4a5089

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/2037/head:pr_2037 && git checkout pr_2037
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.14.0-feae0d1

@google-oss-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: jeremyje, roberthbailey

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

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.

5 participants