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

add multi-arch support to images/alpine #18189

Closed
wants to merge 1 commit into from

Conversation

lubinsz
Copy link

@lubinsz lubinsz commented Jul 7, 2020

2 test methods have been verified:
1, make -f images/alpine/Makefile
2, test command in prow job:
bazel-bin/images/builder/linux_amd64_stripped/builder --project==k8s-prow --allow-dirty=true images/alpine/

Currently, we are trying to enable arm64 prow ci for istio/kubevirt.
Both of the projects need the multi-arch images.

Signed-off-by: Bin Lu [email protected]

@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. area/images sig/testing Categorizes an issue or PR as relevant to SIG Testing. labels Jul 7, 2020
@k8s-ci-robot k8s-ci-robot requested review from chases2 and fejta July 7, 2020 07:02
@lubinsz
Copy link
Author

lubinsz commented Jul 7, 2020

/assign @BenTheElder @fejta

@lubinsz
Copy link
Author

lubinsz commented Jul 7, 2020

Related issue: #16588

@lubinsz
Copy link
Author

lubinsz commented Jul 7, 2020

/cc @zhlhahaha

@k8s-ci-robot k8s-ci-robot requested a review from zhlhahaha July 7, 2020 07:11
images/alpine/cloudbuild.yaml Show resolved Hide resolved
substitutions:
_GIT_TAG: '12345'
images:
- 'gcr.io/$PROJECT_ID/alpine:$_GIT_TAG'
Copy link
Contributor

Choose a reason for hiding this comment

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

Please preserve the expected images to publish.

Copy link
Author

@lubinsz lubinsz Jul 8, 2020

Choose a reason for hiding this comment

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

Hi,
In step 3, those images with fat-manifest will be pushed into registry with 'buildx --push' parameter .
I have tested the build methods(make & prowjob) with my private gcloud account, the multi-arch images can be pushed into my private gcloud registry automatically.

On the other hand, we can't load the multi-arch images into the local docker daemon with 'buildx --load' parameter .
Please see the issue as reference:
docker/buildx#59
If we keep this images field, the builder will report an error

Copy link
Contributor

Choose a reason for hiding this comment

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

Thanks, this is my first experience with buildx and multiarch images (thanks so much for working on this).

And if the push fails then the build fails? How about then adding a comment at the bottom about what images we expect this to push and why we don't use cloud build's auto verification?

Copy link
Contributor

@lubinszARM lubinszARM Jul 8, 2020

Choose a reason for hiding this comment

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

And if the push fails then the build fails?

Yes.

How about then adding a comment at the bottom about what images we expect this to push and why we don't use cloud build's auto verification?

The comment has been added.

images/alpine/cloudbuild.yaml Outdated Show resolved Hide resolved
images/alpine/cloudbuild.yaml Outdated Show resolved Hide resolved
@lubinsz lubinsz force-pushed the pr_images_arm64_1 branch from 90734fb to 689063c Compare July 8, 2020 02:58
Copy link
Contributor

@fejta fejta left a comment

Choose a reason for hiding this comment

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

/hold

for some optional comments, please remove when/if you address them. Thanks for this update!

@k8s-ci-robot k8s-ci-robot added do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. lgtm "Looks good to me", indicates that a PR is ready to be merged. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Jul 8, 2020
@lubinsz lubinsz force-pushed the pr_images_arm64_1 branch from 689063c to eae2b21 Compare July 8, 2020 09:15
@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 8, 2020
@lubinszARM
Copy link
Contributor

Hi @dims @BenTheElder
Any comments?
Thanks.

@lubinszARM
Copy link
Contributor

/assign @dims

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 9, 2020
- build
- --platform=linux/amd64,linux/arm64,linux/ppc64le
Copy link
Member

Choose a reason for hiding this comment

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

Any reason for this particular list of platforms?

Copy link
Author

Choose a reason for hiding this comment

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

Hi,
At present, kubevirt/istio is ready to do the prow ci for these 3 platforms: x86, powerpc, arm64.
And images/alpine is the basic image for other images, such as: git/sidecar/initupload...

Copy link
Contributor

Choose a reason for hiding this comment

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

Any reason for this particular list of platforms?

Hi, Ben,
We are trying to enable CI test for kubevirt/kubeflow/istio project on ARM. And facing a problem that in order to trigger a prow job on ARM cluster, prow utility images need to run on ARM cluster. So we are wandering if we can make at least these utility images (sidecar/initupload/entrypoint/clonerefs) support multi-arch. We have blocked here for really a long time.
Thanks a lot!

Copy link
Contributor

Choose a reason for hiding this comment

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

@BenTheElder
Any comments?

@chases2 chases2 removed their request for review July 15, 2020 23:56
@dims dims removed their assignment Jul 26, 2020
@fejta
Copy link
Contributor

fejta commented Aug 4, 2020

I'm inclined to merge this unless there are any outstanding issues?

@srajmane
Copy link

We are looking to add s390x support to the multiarch image. While this PR is yet to be merged,
@lubinsz could you please help in extending support for s390x as well through this PR by adding linux/s390x to --platform=linux/amd64,linux/arm64,linux/ppc64le?

@lubinszARM
Copy link
Contributor

linux/s390x

OK.

@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Sep 22, 2020
@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Sep 22, 2020
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: fejta, lubinsz, zhlhahaha

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

@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 22, 2020
@k8s-ci-robot
Copy link
Contributor

Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA.

It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.


  • If you've already signed a CLA, it's possible we don't have your GitHub username or you're using a different email address. Check your existing CLA data and verify that your email is set on your git commits.
  • If you signed the CLA as a corporation, please sign in with your organization's credentials at https://identity.linuxfoundation.org/projects/cncf to be authorized.
  • If you have done the above and are still having issues with the CLA being reported as unsigned, please log a ticket with the Linux Foundation Helpdesk: https://support.linuxfoundation.org/
  • Should you encounter any issues with the Linux Foundation Helpdesk, send a message to the backup e-mail support address at: [email protected]

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/test-infra repository. I understand the commands that are listed here.

@k8s-ci-robot k8s-ci-robot added cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. and removed cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Dec 22, 2020
@fejta-bot
Copy link

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle rotten

@k8s-ci-robot k8s-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Jan 21, 2021
@fejta-bot
Copy link

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.

Send feedback to sig-contributor-experience at kubernetes/community.
/close

@k8s-ci-robot
Copy link
Contributor

@fejta-bot: Closed this PR.

In response to this:

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.

Send feedback to sig-contributor-experience at kubernetes/community.
/close

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/test-infra repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. area/images cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. lgtm "Looks good to me", indicates that a PR is ready to be merged. lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. sig/testing Categorizes an issue or PR as relevant to SIG Testing. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants