This is an umbrella Issue for cross-building all the calico docker images on host platform(e.g amd64).
Created a separate issue to track manifest work - https://github.com/projectcalico/calico/issues/1866
Documentation PR - https://github.com/projectcalico/calico/pull/1961
@mkumatag a few requests:
Is there any way I can edit this list? I don't have edit rights on this repo.
To make life easier, here are the PRs for cross-compile support:
Wow, we have done a lot of work!
Comment moved to #1866
@mkumatag a few requests:
Can we separate this into 2 issues with a list each? 1 for cross-build, 1 for multi-arch manifest?
okay, np.. I'll create a seperate issue for that..
@caseydavenport and @fasaxc asked to make them separate PRs in each repo, and we already have several done for the first but not the second. Easier to track.
Can we make each item on the list a link to the repo?
Can we add after each item that has a PR (merged or not) a link to the PR?
I'll do this..
Is there any way I can edit this list? I don't have edit rights on this repo.
Not really sure how to give you a write permission to edit same issue, I think only maintainers with enough permissions can edit others issue,
To make life easier, here are the PRs for cross-compile support:
calico/go-build merged
calico/felix merged
calico/typha merged
calico/bird merged
calico/confd one and two still open
okay, np.. I'll create a seperate issue for that
Thanks, subscribed to that one too.
We can link to and check off felix, typha, bird, go-build.
For calicoctl, PR is https://github.com/projectcalico/calicoctl/pull/1838
If no one else is working on it I can do the multi arch changes for libnetwork plugin?
multi arch changes for libnetwork plugin?
If you mean the cross-compile, then please. Kindly cc me on it?
Can you mark the complete ones in here?
Add support to cross-compile architectures: https://github.com/projectcalico/libnetwork-plugin/pull/176
@mkumatag can you please mark the complete ones as checked, and add the links for typha and bird and libnetwork-plugin?
@mkumatag can you please mark the complete ones as checked, and add the links for typha and bird and libnetwork-plugin?
I have updated the links to respective github projects, I'm not checking any checkbox as none of the projects are enabled with cross-building docker images yet, correct me if I'm wrong..
correct me if I'm wrong.
No, you are not. It turns out there are 3 stages to doing this:
confd and calicoctl are both done.
FYI, @mkumatag based on my discussion with @fasaxc , the plan is not to do the following, as they are not supported in 3.x going forward:
libnetwork-plugin - unsupported in favour of CNIgobgpd - contribution from outside that has not been supported@fasaxc , did I get that right?
@deitch They're not supported for now but may be in future
FYI, @mkumatag based on my discussion with @fasaxc , the plan is not to do the following, as they are not supported in 3.x going forward:
libnetwork-plugin - unsupported in favour of CNI
gobgpd - contribution from outside that has not been supported
@fasaxc , did I get that right?
@deitch @fasaxc yes they are not supported in 3.x release but these binaries are used in building calico/node image which will disturb the current flow of Makefile, so can we build these projects for not to disturb the flow and for future work.?
confd and calicoctl are both done.
@deitch @fasaxc @caseydavenport as these projects are done, can we modify samaphore job to push image for all the supported archs?
can we modify samaphore job to push image for all the supported archs?
We will. There are two steps here:
make push and make push-all targets. I am waiting for this felix PR to be approved and merged. It is the first test case with make push and make push-all. I don't want multiple PRs on different projects doing the same thing until we agree that it is done "the right way". Once the felix PR is merged in, I will open PRs for make push and make push-all for all of the other projects.make ci which will incorporate all of the Semaphore activities, so that the repo encapsulates everything, rather than needing to manage tests and pushes in the repo and in Semaphore separately. This is at the request of @fasaxc .Then, it is complete!
CNI PR is available here
calico-bgp-daemon is here
kube-controllers is here
@mkumatag would you please add the PRs to the list at the beginning of this PR?
@deitch you are showering with so many PRs man.! Welcome back.. :) will update it.
@mkumatag felix 1746 was merged. Can mark it off.
@mkumatag :
@mkumatag for typha, please add https://github.com/projectcalico/typha/pull/156
@mkumatag for routereflector please add https://github.com/projectcalico/routereflector/pull/20
When those get merged in, we can hit node finally.
I believe this is all done now, shout if there's a reason to leave this open.
I believe some of those tasks are still open:
calico/test
calico/upgrade
Right. We can reopen to track those.
I'd suggest at least removing calico/test from that list - it's long since stopped being used AFAIK.
Any chance images for arm could be added? Currently only flannel and weavenet are supported CNIs on that.
@jpds wrote:
Any chance images for arm could be added? Currently only flannel and weavenet are supported CNIs on that.
I don't understand. Calico has images for arm64 for everything, including multi-arch images.
Or did you mean other earlier arm archs?
@deitch Yes, armv7/armhf are still a thing, a la Raspberry Pi's.
Yeah, it just needs to be done. Someone needs to go through each project, add the necessary config (usually a Dockerfile, as the Makefile normally picks it up), test that each component builds, and then get a PR in.
Can the arm64 images not run on a Pi 3b+?
I think we can close this now? calico-upgrade is not really relevant here either since it is for v2.6, which doesn't have multi-arch :)
I suggest further work be raised in separate issue. Thanks for all of the hard work everyone put into this!
I think we can close this now? calico-upgrade is not really relevant here either since it is for v2.6, which doesn't have multi-arch :)
I suggest further work be raised in separate issue. Thanks for all of the hard work everyone put into this!
Thanks for the whole support @caseydavenport @tomdee @deitch @djlwilder
@alexcarman Doesn't look like it
docker run --rm calico/cni:release-v3.7-arm64
standard_init_linux.go:207: exec user process caused "exec format error"
Most helpful comment
I think we can close this now? calico-upgrade is not really relevant here either since it is for v2.6, which doesn't have multi-arch :)
I suggest further work be raised in separate issue. Thanks for all of the hard work everyone put into this!