Skip to content
This repository has been archived by the owner on Dec 5, 2020. It is now read-only.

Initial contribution of sidecar image for TekTon tooling #2

Merged
merged 5 commits into from
Jul 27, 2020

Conversation

ericwill
Copy link
Contributor

Signed-off-by: Eric Williams ericwill@redhat.com

Signed-off-by: Eric Williams <ericwill@redhat.com>
@ericwill ericwill requested review from benoitf and apupier May 22, 2020 20:19
@ericwill
Copy link
Contributor Author

Part of eclipse-che/che#15752

Signed-off-by: Eric Williams <ericwill@redhat.com>
Dockerfile Show resolved Hide resolved
Signed-off-by: Eric Williams <ericwill@redhat.com>
@ericwill ericwill mentioned this pull request Jun 3, 2020
40 tasks
Dockerfile Show resolved Hide resolved
@ericwill ericwill mentioned this pull request Jun 24, 2020
31 tasks
Signed-off-by: Eric Williams <ericwill@redhat.com>
Signed-off-by: Eric Williams <ericwill@redhat.com>
@ericwill
Copy link
Contributor Author

@sunix can you review it again, let's get this one merged.

@sunix
Copy link

sunix commented Jul 13, 2020

@ericwill I thought we were more likely to add tekton cli to the kubernetes sidecar AND openshift sidecar ?

@ericwill
Copy link
Contributor Author

@ericwill I thought we were more likely to add tekton cli to the kubernetes sidecar AND openshift sidecar ?

I think it's something we can improve in a later iteration.

@sunix
Copy link

sunix commented Jul 13, 2020

It will be harder to change it later on. I recommend to just download tkn binary to the kubernetes and openshift containers.

@ericwill
Copy link
Contributor Author

Well I'm not convinced it's necessary, as then every user will be getting tekton + octant when they may not need it. It's easier to keep specific containers tailored for specific plugins than it is to increase the size of one image and deal with the performance cost that brings.

@sunix
Copy link

sunix commented Jul 13, 2020

I don't think octant is necessary to run tekton. how much additional memory do you think we would need to add to have the tekton extension running?
I really think tekton is the missing pieces between Che and the app running in production in Kubernetes/Openshift. It makes sense to have it integrated it in the same plugin.
In our case we already have 2 plugins that are already quite similar. It means that we would add 2 more plugins: kubernetes+tekton and openshift+tekton.

@ericwill ericwill mentioned this pull request Jul 15, 2020
38 tasks
@ericwill
Copy link
Contributor Author

I'm starting to wonder whether I shouldn't create a container called "che-container-tools", with all the common dependencies in it. The kube/openshift/tekton sidecars can then use this image as a base.

It would make life easier when it comes to updating common deps like helm, kubectl, etc. @sunix what do you think?

@sunix
Copy link

sunix commented Jul 16, 2020

I'm starting to wonder whether I shouldn't create a container called "che-container-tools", with all the common dependencies in it. The kube/openshift/tekton sidecars can then use this image as a base.

It would make life easier when it comes to updating common deps like helm, kubectl, etc. @sunix what do you think?

+1 for that. But I would make one single container for all:
So: kn, tk, kubectl, oc, odo, kubectx and kubens,
maybe also buildah, buildkit ?
That would be use by different plugins. Adding more tools would "only" affect the size of the image, using them in extensions would affect memory usage.

@ericwill
Copy link
Contributor Author

So: kn, tk, kubectl, oc, odo, kubectx and kubens,
maybe also buildah, buildkit ?
That would be use by different plugins. Adding more tools would "only" affect the size of the image, using them in extensions would affect memory usage.

The k8s-tooling sidecar is already based on the buildah base image, so I can use that as a base for the container-tooling image (layering is fun!). Everything in that list looks fine, except for oc/odo -- it's quite large (almost 1GB), and it's only needed for the OpenShift connector plugin, so I probably won't include it in the general image.

@sunix
Copy link

sunix commented Jul 17, 2020

@ericwill So:
k8s-tooling: based on buildah + kn, tk, kubectl, kubectx and kubens
ocp-tooling: based on k8s-tooling + oc, odo

@ericwill
Copy link
Contributor Author

ericwill commented Jul 17, 2020

@ericwill So:
k8s-tooling: based on buildah + kn, tk, kubectl, kubectx and kubens
ocp-tooling: based on k8s-tooling + oc, odo

It would be
container-plugin-tooling: based on buildah + kn, + kubectl, kubectx and kubens
k8s-tooling: based on container-plugin-tooling, + whatever specific configs are needed
ocp-tooling: based on container-plugin-tooling, + oc, odo

I just need to make tekton has sufficient multi-arch support and then I'll make the PR.

@ericwill
Copy link
Contributor Author

@ericwill So:
k8s-tooling: based on buildah + kn, tk, kubectl, kubectx and kubens
ocp-tooling: based on k8s-tooling + oc, odo

It would be
container-plugin-tooling: based on buildah + kn, + kubectl, kubectx and kubens
k8s-tooling: based on container-plugin-tooling, + whatever specific configs are needed
ocp-tooling: based on container-plugin-tooling, + oc, odo

I just need to make tekton has sufficient multi-arch support and then I'll make the PR.

@sunix so tekton CLI doesn't support ppc64le until version 0.11.0, which is the next release. So in a month or two we'll be able to add it. In the meantime I've left it out from the che-container-tools image.

@gattytto
Copy link
Contributor

is there any reason why the pr has not been merged? I'd like to use this sidecar

@ericwill
Copy link
Contributor Author

is there any reason why the pr has not been merged? I'd like to use this sidecar

We are waiting for tekton to have proper multi-arch support so I can add it to the che-container-tools base image.

In the meantime we can merge this PR if you like, but the TekTon sidecar image will need to be adapted in a month or two. Is that okay?

@gattytto
Copy link
Contributor

gattytto commented Jul 25, 2020

totally, thank you and please do merge

@ericwill ericwill merged commit 7a8b4ad into che-dockerfiles:master Jul 27, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants