-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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 clusters
#177
Comments
/assign @pivotal-nader-ziada |
/assign pivotal-nader-ziada |
@bobcatfish how do you expect to connect to this other cluster? put cert/token info in pipelineparams? |
That's a great question! I don't have a clear idea yet, but could we put them in a service account, and specify the service account in the cluster resource? |
@pivotal-nader-ziada was looking into adding support for clusters in tektoncd#177 when he realized that if the cluster is moved out of PipelineParams into a Resource, this means that to use 1 Pipeline with 2 different clusters, you'd have to change the Pipeline itself. This actually applies to all Resources, and goes against the design principle of Decoupling that we were aiming for. In this commit we brainstormed solutions to this problem (one of which is to accept it) and prototyped solutions in yaml in `examples_pipeline_reuse`. Co-authored-by: Nader Ziada <nziada@pivotal.io>
To enable tasks to connect to an external cluster other than the host cluster, for example to deploy a app. tektoncd#177
To enable tasks to connect to an external cluster other than the host cluster, for example to deploy a app. tektoncd#177
To enable tasks to connect to an external cluster other than the host cluster, for example to deploy a app. tektoncd#177
To enable tasks to connect to an external cluster other than the host cluster, for example to deploy a app. tektoncd#177
To enable tasks to connect to an external cluster other than the host cluster, for example to deploy a app. tektoncd#177
To enable tasks to connect to an external cluster other than the host cluster, for example to deploy a app. tektoncd#177
To enable tasks to connect to an external cluster other than the host cluster, for example to deploy a app. tektoncd#177
To enable tasks to connect to an external cluster other than the host cluster, for example to deploy a app. #177
Expected Behavior
It should be possible to deploy to the clusters in PipelineParams:
https://github.com/knative/build-pipeline/blob/fc4775ae44546a68fad8c951073904e5dd51fca3/examples/pipelineparams.yaml#L8-L14
For example, I should be able to make a task like this:
I think the best way to make this work generically for any deployment tool is to create and mount a kubeconfig automatically (e.g. so we can use helm's
--kubeconfig
arg) but definitely option to other options!It's crucial this works for more than just helm.
Bonus: we actually want clusters to be in a resource, so you could also move them out of PipelineParams into a Resource type! Note that in #68 we want to make a Deployment type as well, which would probably also include the helm / kubectl /tool of choice functionality but that's a ways off
Actual Behavior
At the moment the clusters in PipelineParams are ignored, so you can only really deploy to the cluster running the Pipeline CRD.
You could also hardcode the info for another cluster into your Task, but that's less than ideal!
Steps to Reproduce the Problem
Additional Info
In #63 we added an integration test that does a deployment, but it only deploys to the cluster that the Pipeline CRD is running in - we need to udpate the test to actually use the cluster config, even if it's still the same cluster.
The text was updated successfully, but these errors were encountered: