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

Provide shipwright build controller as multi-arch image #698

Closed
SaschaSchwarze0 opened this issue Mar 29, 2021 · 6 comments · Fixed by #711
Closed

Provide shipwright build controller as multi-arch image #698

SaschaSchwarze0 opened this issue Mar 29, 2021 · 6 comments · Fixed by #711
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature.

Comments

@SaschaSchwarze0
Copy link
Member

I was recently playing around with k8s on my Raspberry Pi. I noticed that Tekton has multi-arch images already which is nice, so that I got running quickly. But, for shipwright-build, I had to make changes in the Makefile to produce an image for arm64 and then I got the controller running. I can probably fairly soon provide a PR that changes our release process to provide these images, but with that, we will need to consider some things I would like to discuss first:

Build strategies

Not every build strategy will be able to run on all platforms. I know for example that Kaniko spent efforts last year to produce images for different platforms. I also know that ko is available for multiple platforms, though our build strategy will need a slight enhancement to not in a hard-coded way download the linux/amd64 version. But, the rest I can try out on arm64, but we will never be able to test everything on all platforms. This brings me to the ...

Support statement

We will also not be able to run our own tests on all platforms (is maybe worth checking if GitHub Actions allow us to cover anything other than amd64). So, we imo should make a call in the readme stating that we provide our controller for multi-arch but have our tests running primarily (or maybe "only" ?) on linux/amd64.

Note: there is a separate aspect in that area which is to use Shipwright Build to provide images for different platforms. That's interesting as well but a different story and not covered by this issue.

fyi @adambkaplan @gabemontero @imjasonh @qu1queee @zhangtbj opinions ?

@SaschaSchwarze0 SaschaSchwarze0 added the kind/feature Categorizes issue or PR as related to a new feature. label Mar 29, 2021
@imjasonh
Copy link
Contributor

+1 to building controller images for as many archs as we can and documenting which platforms we run tests against. ko makes this really really easy 👍

For Tekton, some IBM folks have invested in further tests for s390x and ppc64le (which we might be able to extend to cover Shipwright?)

We can also document which built-in strategies support which archs, in case a user wants to use them.

@sbose78
Copy link
Member

sbose78 commented Mar 29, 2021

Let's get our controllers working in multiple architectures as a first step.

Our buildstrategies may continue be tested only on one platform unless someone in the community invests in it :)

@qu1queee
Copy link
Contributor

@SaschaSchwarze0 thanks. Im fine if we provide support for multi archs and only test a specific one, as long as the right documentation is in place.

Note: there is a separate aspect in that area which is to use Shipwright Build to provide images for different platforms. That's interesting as well but a different story and not covered by this issue.

This one is more interesting to me, while I see a lot of value on it for Shipwright users. @SaschaSchwarze0 do you mind if I open an issue for that?

@imjasonh
Copy link
Contributor

Issue for Arm support for buildpacks: buildpacks/lifecycle#435

@SaschaSchwarze0
Copy link
Member Author

Issue for Arm support for buildpacks: buildpacks/lifecycle#435

Yeah, I yesterday found the time to run some builds. I think Kaniko and ko are at the moment the only strategies which are supported on more than amd64.

@SaschaSchwarze0 SaschaSchwarze0 self-assigned this Mar 31, 2021
@SaschaSchwarze0
Copy link
Member Author

This one is more interesting to me, while I see a lot of value on it for Shipwright users. @SaschaSchwarze0 do you mind if I open an issue for that?

Yep, please go ahead @qu1queee

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants