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 support for ppc64le and s390x architectures and distroless builds #746

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

prb112
Copy link

@prb112 prb112 commented May 22, 2024

What type of PR is this?

/kind feature

What this PR does / why we need it:

Kubernetes supports multiple architectures - amd64 arm arm64 ppc64le s390x. In order to use scheduler plugins on ppc64le or s390x, I'd like to build the scheduler-plugins container image with support for s390x and ppc64le in the sig.

This would be in addition to the already provided x86_64,arm64 container image.
This request is similar to #113

Which issue(s) this PR fixes:

Fixes #745

Special notes for your reviewer:

We are using the scheduler-plugins on multiple-architectures.

Does this PR introduce a user-facing change?

adds container images for the  ppc64le and s390x

@k8s-ci-robot k8s-ci-robot added release-note Denotes a PR that will be considered when it comes time to generate release notes. kind/feature Categorizes issue or PR as related to a new feature. labels May 22, 2024
@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label May 22, 2024
@k8s-ci-robot
Copy link
Contributor

Welcome @prb112!

It looks like this is your first PR to kubernetes-sigs/scheduler-plugins 🎉. Please refer to our pull request process documentation to help your PR have a smooth ride to approval.

You will be prompted by a bot to use commands during the review process. Do not be afraid to follow the prompts! It is okay to experiment. Here is the bot commands documentation.

You can also check if kubernetes-sigs/scheduler-plugins has its own contribution guidelines.

You may want to refer to our testing guide if you run into trouble with your tests not passing.

If you are having difficulty getting your pull request seen, please follow the recommended escalation practices. Also, for tips and tricks in the contribution process you may want to read the Kubernetes contributor cheat sheet. We want to make sure your contribution gets all the attention it needs!

Thank you, and welcome to Kubernetes. 😃

@k8s-ci-robot k8s-ci-robot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label May 22, 2024
@k8s-ci-robot
Copy link
Contributor

Hi @prb112. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

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.

@k8s-ci-robot k8s-ci-robot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label May 22, 2024
Copy link

netlify bot commented May 22, 2024

Deploy Preview for kubernetes-sigs-scheduler-plugins canceled.

Name Link
🔨 Latest commit f95ad2f
🔍 Latest deploy log https://app.netlify.com/sites/kubernetes-sigs-scheduler-plugins/deploys/666aed727de682000740b5f8

@prb112 prb112 changed the title Add support for ppc64le and s390x architectures #745 WIP: Add support for ppc64le and s390x architectures #745 May 22, 2024
@k8s-ci-robot k8s-ci-robot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label May 22, 2024
@prb112
Copy link
Author

prb112 commented May 22, 2024

We're going to verify the commands (I meant to put as WIP)

@ffromani
Copy link
Contributor

/ok-to-test

@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels May 22, 2024
@ffromani
Copy link
Contributor

I'd be in favor of this support, but we need to check we have available machines in CI

@prb112
Copy link
Author

prb112 commented May 22, 2024

I'd be in favor of this support, but we need to check we have available machines in CI

Thank you @ffromani

Signed-off-by: Paul Bastide <pbastide@us.ibm.com>
@ffromani
Copy link
Contributor

/assign

@prb112 prb112 changed the title WIP: Add support for ppc64le and s390x architectures #745 Add support for ppc64le and s390x architectures #745 Jun 3, 2024
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 3, 2024
@prb112 prb112 changed the title Add support for ppc64le and s390x architectures #745 Add support for ppc64le and s390x architectures Jun 3, 2024
@prb112
Copy link
Author

prb112 commented Jun 3, 2024

Hey @ffromani and team, @Chandan-Abhyankar and I have completed our testing. I have removed the work in progress label. We look forward to your review and comments and next steps. Thank you, Paul

@Huang-Wei
Copy link
Contributor

@prb112 how urgent you'd like to merge this PR? I'm thinking of support distroless image building so that we have a unified image that works for all archs:

  • amd64
  • arm64
  • s390x
  • ppc64le

@prb112
Copy link
Author

prb112 commented Jun 3, 2024

@prb112 how urgent you'd like to merge this PR? I'm thinking of support distroless image building so that we have a unified image that works for all archs:

Hi @Huang-Wei I'd love to get this sooner than later - our testing starts in 1-2 weeks. We have a custom build. As long as the distroless arrives in a month, it would work with our usecase too. Thanks, Paul

@Huang-Wei
Copy link
Contributor

As long as the distroless arrives in a month, it would work with our usecase too.

Usually we cut releases every 3~4 months, so it's possible to get the distroless build code in, and cut a 1.29 release in early July. Does that sound feasible?

(BTW: even we proceed with this PR as a temporary solution, we will still have to wait until early July for the new release.)

@prb112
Copy link
Author

prb112 commented Jun 3, 2024

As long as the distroless arrives in a month, it would work with our usecase too.

Usually we cut releases every 3~4 months, so it's possible to get the distroless build code in, and cut a 1.29 release in early July. Does that sound feasible?

(BTW: even we proceed with this PR as a temporary solution, we will still have to wait until early July for the new release.)

Hey @Huang-Wei that sounds a-OK. Is this something we could help complete? Is there a scope of work / containerfiles that would need to be changed? Many thanks, Paul

@Huang-Wei
Copy link
Contributor

Is this something we could help complete?

@prb112 definitely, fell free to self-assign to work on it.

Is there a scope of work / containerfiles that would need to be changed?

Other Kubernetes sub-projects have some existing examples. I usually use cs.k8s.io to search - here one example (keyword: gcr.io/distroless/static:nonroot)

@prb112
Copy link
Author

prb112 commented Jun 3, 2024

Hi ... apologies, which issue #, and then I'll assign. Thank you, Paul

@Huang-Wei
Copy link
Contributor

I created #756 to track the distroless build work.

Signed-off-by: Paul Bastide <pbastide@us.ibm.com>
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: prb112
Once this PR has been reviewed and has the lgtm label, please ask for approval from ffromani. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found 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

@prb112
Copy link
Author

prb112 commented Jun 11, 2024

/wip

@prb112 prb112 changed the title Add support for ppc64le and s390x architectures WIP: Add support for ppc64le and s390x architectures Jun 11, 2024
@k8s-ci-robot k8s-ci-robot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 11, 2024
Signed-off-by: Paul Bastide <pbastide@us.ibm.com>
@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Jun 12, 2024
Signed-off-by: Paul Bastide <pbastide@us.ibm.com>
@prb112 prb112 changed the title WIP: Add support for ppc64le and s390x architectures Add support for ppc64le and s390x architectures and distroless builds Jun 17, 2024
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 17, 2024
@prb112
Copy link
Author

prb112 commented Jun 17, 2024

Hi @Huang-Wei
Hope all is well. The distroless build details are included in this PR.
We've confirmed it builds the correct images.
Please let us know if you have any review/comments.
Thanks
Paul

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/feature Categorizes issue or PR as related to a new feature. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add support for ppc64le and s390x architectures
4 participants