-
Notifications
You must be signed in to change notification settings - Fork 158
Fix build issues for Windows image. #1953
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
Conversation
/retest |
I see that presubmits went beyond the manifest error, good job and thanks! Before:
After:
The next error is on fixing the CSI Driver Windows deployment:
|
Thank you for looking @mauriciopoppe. I think I'm seeing a bunch of image pull errors in the PD CSI deployment:
Do you know how I can gain access to that image registry? Would like to see if there are more error details in the GCP console. |
I saw that Pulling image "gcr.io/k8s-infra-e2e-boskos-007/gcp-persistent-disk-csi-driver:6d8bebd4-0814-4b04-a5ee-6073fded8e23", this should be changed to registry.k8s.io already? |
@sunnylovestiramisu I think that's a red herring, if the multiarch image In Linux it comes up just fine:
In Windows it fails:
I tried building the image locally and got the following warning:
I'm not sure if there's something going on with the way the manifest is built. Could you please add a line to inspect the manifest in the Makefile?
|
I am looking at test/run-windows-k8s-integration.sh, it is using E2E_GOOGLE_APPLICATION_CREDENTIALS same as in run-k8s-integration.sh. |
The manifest looks like
|
Thanks, the manifest looks good, I was looking for it to show the same digest as the exported Windows image. In the logs there's a line pushing the Windows image:
And the sha matches the digest in #1953 (comment)
I made some changes in #1951, I upgraded the buildkit version to match the one we use internally and I also used |
My locally built image ( |
Was able to find this from audit logs
|
c301d73
to
436f6a2
Compare
a20de83
to
fa4379c
Compare
From Kubernetes repo:
And in https://console.cloud.google.com/storage/browser/gke-release/winnode/node-problem-detector there is no node-problem-detector:v0.8.20 |
48d3270
to
7b56e3d
Compare
7b56e3d
to
22c2d68
Compare
/retest |
/retest |
FYI, talking with @sunnylovestiramisu , we will merge this change after kubernetes/kubernetes#130499 goes into k/k (so we don't have the hardcoding hack that's currently in this PR). |
/test pull-gcp-compute-persistent-disk-csi-driver-kubernetes-integration |
Previous PR has been merged. Cleaning up the hardcoded hack. |
/retest |
|
||
build-and-push-multi-arch: build-and-push-container-linux-amd64 build-and-push-container-linux-arm64 build-and-push-windows-container-ltsc2019 | ||
$(DOCKER) manifest create --amend $(STAGINGIMAGE):$(STAGINGVERSION) $(STAGINGIMAGE):$(STAGINGVERSION)_linux_amd64 $(STAGINGIMAGE):$(STAGINGVERSION)_linux_arm64 $(STAGINGIMAGE):$(STAGINGVERSION)_ltsc2019 | ||
$(DOCKER) manifest create $(STAGINGIMAGE):$(STAGINGVERSION) $(STAGINGIMAGE):$(STAGINGVERSION)_linux_amd64 $(STAGINGIMAGE):$(STAGINGVERSION)_linux_arm64 $(STAGINGIMAGE):$(STAGINGVERSION)_ltsc2019 | ||
STAGINGIMAGE="$(STAGINGIMAGE)" STAGINGVERSION="$(STAGINGVERSION)" WINDOWS_IMAGE_TAGS="$(WINDOWS_IMAGE_TAGS)" WINDOWS_BASE_IMAGES="$(WINDOWS_BASE_IMAGES)" ./manifest_osversion.sh | ||
$(DOCKER) manifest push -p $(STAGINGIMAGE):$(STAGINGVERSION) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should also update the build-and-push-multi-arch-debug to the same build command
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
test/k8s-integration/cluster.go
Outdated
@@ -59,6 +59,8 @@ func clusterDownGKE(gceZone, gceRegion string) error { | |||
return nil | |||
} | |||
|
|||
const hardcodeBuildChange = `/template:/,/spec:/s/spec:$/spec:\n\ \ \ \ \ \ nodeSelector:\n\ \ \ \ \ \ \ \ kubernetes.io\/os: linux/` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We probably do not need these two lines either?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
@tonyzhc: The following test failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: sunnylovestiramisu, tonyzhc 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 |
What type of PR is this?
What this PR does / why we need it:
Our Windows tests have been failing, because a newer version of
buildx
generates a manifest list for multi-arch images. Set this flag so that we keep the original behavior. This will help us verify that the upstream Kubernetes fix for kubernetes/kubernetes#129084 is working.Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Note that this is the same issue as https://stackoverflow.com/questions/75521775/buildx-docker-image-claims-to-be-a-manifest-list, and we may benefit from upgrading to the new
containerd
image store (see https://docs.docker.com/desktop/features/containerd/) in the long term.Does this PR introduce a user-facing change?: