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

Cross build docker images #1865

Open
mkumatag opened this Issue Apr 10, 2018 · 37 comments

Comments

Projects
None yet
8 participants
@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Apr 10, 2018

@mkumatag a few requests:

  1. Can we separate this into 2 issues with a list each? 1 for cross-build, 1 for multi-arch manifest? @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.
  2. Can we make each item on the list a link to the repo?
  3. Can we add after each item that has a PR (merged or not) a link to the PR?

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:

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Apr 10, 2018

Wow, we have done a lot of work!

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Apr 10, 2018

Comment moved to #1866

@mkumatag

This comment has been minimized.

Copy link
Contributor Author

mkumatag commented Apr 10, 2018

@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

@mkumatag mkumatag changed the title Cross build docker images and push manifest Cross build docker images Apr 10, 2018

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Apr 10, 2018

okay, np.. I'll create a seperate issue for that

Thanks, subscribed to that one too.

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Apr 10, 2018

We can link to and check off felix, typha, bird, go-build.

@deitch deitch referenced this issue Apr 10, 2018

Closed

Calico for ARM? #1475

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Apr 10, 2018

For calicoctl, PR is projectcalico/calicoctl#1838

@djlwilder

This comment has been minimized.

Copy link
Collaborator

djlwilder commented Apr 16, 2018

If no one else is working on it I can do the multi arch changes for libnetwork plugin?

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Apr 17, 2018

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?

@djlwilder

This comment has been minimized.

Copy link
Collaborator

djlwilder commented Apr 17, 2018

Add support to cross-compile architectures: projectcalico/libnetwork-plugin#176

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Apr 18, 2018

@mkumatag can you please mark the complete ones as checked, and add the links for typha and bird and libnetwork-plugin?

@mkumatag

This comment has been minimized.

Copy link
Contributor Author

mkumatag commented Apr 23, 2018

@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..

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Apr 23, 2018

correct me if I'm wrong.

No, you are not. It turns out there are 3 stages to doing this:

  1. Enable cross-compile
  2. Use cross-compile as a default so CI always builds images for all ARCHs
  3. Use multi-arch manifest
@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Apr 30, 2018

confd and calicoctl are both done.

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Apr 30, 2018

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?

@fasaxc

This comment has been minimized.

Copy link
Member

fasaxc commented Apr 30, 2018

@deitch They're not supported for now but may be in future

@mkumatag

This comment has been minimized.

Copy link
Contributor Author

mkumatag commented May 5, 2018

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.?

@mkumatag

This comment has been minimized.

Copy link
Contributor Author

mkumatag commented May 5, 2018

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?

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented May 6, 2018

can we modify samaphore job to push image for all the supported archs?

We will. There are two steps here:

  1. Create a PR with 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.
  2. Create a PR with 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!

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented May 7, 2018

CNI PR is available here

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented May 7, 2018

calico-bgp-daemon is here

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented May 7, 2018

kube-controllers is here

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented May 7, 2018

@mkumatag would you please add the PRs to the list at the beginning of this PR?

@mkumatag

This comment has been minimized.

Copy link
Contributor Author

mkumatag commented May 7, 2018

@deitch you are showering with so many PRs man.! Welcome back.. :) will update it.

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented May 22, 2018

@mkumatag felix 1746 was merged. Can mark it off.

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented May 23, 2018

@mkumatag :

  • kube-controller was merged. Can mark it off.
  • cni-plugin was merged, can mark it off.
@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented May 24, 2018

@mkumatag for typha, please add projectcalico/typha#156

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented May 24, 2018

@mkumatag for routereflector please add projectcalico/routereflector#20

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented May 24, 2018

When those get merged in, we can hit node finally.

@caseydavenport

This comment has been minimized.

Copy link
Member

caseydavenport commented Sep 24, 2018

I believe this is all done now, shout if there's a reason to leave this open.

@mkumatag

This comment has been minimized.

Copy link
Contributor Author

mkumatag commented Sep 25, 2018

I believe some of those tasks are still open:

calico/test
calico/upgrade

@caseydavenport

This comment has been minimized.

Copy link
Member

caseydavenport commented Sep 25, 2018

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.

@jpds

This comment has been minimized.

Copy link

jpds commented Jan 1, 2019

Any chance images for arm could be added? Currently only flannel and weavenet are supported CNIs on that.

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Jan 2, 2019

@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?

@jpds

This comment has been minimized.

Copy link

jpds commented Jan 2, 2019

@deitch Yes, armv7/armhf are still a thing, a la Raspberry Pi's.

@deitch

This comment has been minimized.

Copy link
Collaborator

deitch commented Jan 2, 2019

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.

@alexcarman

This comment has been minimized.

Copy link

alexcarman commented Feb 11, 2019

Can the arm64 images not run on a Pi 3b+?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment