-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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 cluster name as part of the Configuration and not as flag #1412
Comments
the downside to this is that you're going to need to specify |
hmm? these are internal details and have changed before. please do NOT use these!
I don't think "be a kubectl plugin" is really a goal for us right now and i'm not really sure how helpful that is, but I admit i'm curious about what this means.
?? we have |
One of the things that I'm finding quite interesting lately in the k8s ecosystem is the lack of consistency when developing a solution. This comment doesn't try to be targeted at kind, but it can be applied to many projects, it just happens to be posted here. When I look into the "target" users of Kind, I think that it's mostly people that "develop" kubernetes, but more and more I'm also finding that people that "uses" kubernetes as their local platform are moving from minikube to kind for simplicity and speed reasons. What this means is that most of the users are familiar with how
As I would want the learning curve to be minimial, as then I would be able to use the tool without hardly any reading, I would think that Cluster configuration would need to have a When designing a new CLI that is targeted for users with a known experience, and the experience this tool provides is close, one of the targets should be to mimic the experience and minimise the learning curve (as long as it fits). For |
Perhaps not so surprisingly, when we were building this little tool there was nobody else involved in this. There is not a unified design leadership in OSS, and even if Kubernetes had one I doubt they'd have had the bandwidth for our toy cluster thing.
Yes, The original target was 100% people developing Kubernetes. And they were unlikely to use it directly, we were to have the test suites automated under things like
This reads like "I don't want to read the docs", which is not a super encouraging attitude.
kind is not a new CLI. It's year(s) old. If we change the CLI to have a new required parameter or parameters we break all of our existing users. We have to look at the tradeoff. New users shouldn't even be worried about |
The current plan is to allow using |
|
I understand all the reasons you post here, but I also think that as many other parts of the kubernetes ecosystem as well as the Kubernetes platform itself, there's always ways to evolve apis/usage though versioning/depreciation,etc... |
Now that more things are solved I have had some time to think more about the UX we have here and how we could bring more of it in line. #1519 will enable a migration path off of the one argument we have so we can start supporting name as an argument. in that light, we're also supporting The proposed value override would be (most over-ridding to least)
/assign |
actually CLI arg will need more thought (see edit) but config file based name for create / delete should be fine. eksctl has a slightly awkward |
/lifecycle active |
the name is in config |
What would you like to be added:
I would like to have the cluster name being specified in the Config object that is provided to Kind rather than specified as a flag.
You would be able to create a cluster this way:
Then you can create programatically multiple clusters with any available mechanism, but only changing the definition file, which is stored in VCS:
Why is this needed:
By default, you can only specify the name of the cluster via the
--name
flag. If you want to programatically create multiple clusters for testing purposes, you need to change the invocation arguments, instead of the configuration file. For automation, we want everything stored in VCS and so the name of the cluster should be part of the configuration.This would also be consistent with how Kubernetes resources work, and since Kind is a tool for creating a k8s cluster, consistency should be desired for the usage.
There's some other places that consistency should be desirable, but those will go to other issues:
-o output
for certain commands (e.g. kind export kubeconfig)The text was updated successfully, but these errors were encountered: