-
Notifications
You must be signed in to change notification settings - Fork 39.9k
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
kubernetes should adhere to the "XDG Base Directory Specification" #56402
Comments
Would love to see kubernetes make it to this list https://wiki.archlinux.org/index.php/XDG_Base_Directory_support |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/remove-lifecycle stale |
Working around kubernetes/kubernetes#56402
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/remove-lifecycle stale |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/remove-lifecycle stale |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/remove-lifecycle stale |
/remove-lifecycle stale |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/remove-lifecycle stale |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
/remove-lifecycle stale |
This thread is embarrassing to read. This bot is useless. 65+ 👍 automatically means it's an issue people care about. Instead of you have a mess of bot and human-to-bot noise that makes this issue illegible. People get their time wasted by a bot email too to have to say, "yes, we're still here and interested in this bug--and never stopped being interested". |
Totally agree with @toastal |
Any idea when this can be implemented? |
@EvyBongers Looks like its slightly moving toward spec, according this PR #109479 |
Please see kubernetes/enhancements#2111 I agree that this bot is annoying, it's possible to disable it ... but to be clear, something like this is not going to be implemented by filing a feature request here for many years now, a breaking change or new feature like this requires a KEP / enhancement proposal to be filed in the enhancements repo with the details reviewed agreed on how to handle it. You can see in kubernetes/enhancements#2111 that so far the approach is rejected by SIG CLI due to the breaking changes. |
Necromancing this. This is still relevant. This can be made non breaking by having a list of folders to be checked, including the default one. This can even be made non breaking by implementing it through a variable check which is how most applications do it. If a config env file is set it'll look there. If it's not it uses legacy behaviour. |
please see the prior discussion linked, for more details on why that's still a problematic approach roughly: there's a broad ecosystem and the configuration discovery is an API with multiple implementations. Things will break if we introduce skew in discovering the configuration files. The logic for this has been stable for many years and has implementations in many clients you can always override KUBECONFIG to point to your XDG compliant directory and then all tools will read that. |
To ship a change of this scope someone will have to go through the enhancements process to outline an approved approach to ship it. The previously rejected enhancement is linked above with a lot of relevant discussion. Unless someone writes up a more convincing enhancement and seeks approval from the kubectl maintainers, this is not happening. The enhancements process allows us to ensure some rigor in how changes are introduced, feature gated, tested, and finally made GA. If you're interested in making this happen, I would recommend talking to SIG api-machinery (for the client) and then SIG CLI before filing an enhancement. |
I like XDG but unfortunately I'll have to agree that it's likely way too much of a breaking change. Especially considering that setting |
Is there a point of using semantic versioning (major versions), if breaking changes can't be introduced? |
Alpha/Beta features see breaking changes often. GA do not, but technically could under strict rules, and this would need to be communicated as well. kubeconfig and the flags for it are course, GA. For every user that wants this particular breaking change, there are many many more that want no breaking changes. Breaking changes to GA interfaces / APIs / ... (including k) are not taken lightly. The benefit needs to outweigh the costs to users and the ecosystem. Again, if you'd like to propose a major change, the current mechanism to do so is a KEP: https://github.com/kubernetes/enhancements#is-my-thing-an-enhancement |
cc @soltysh @eddiezane (SIG CLI doesn't appear to have an alias?) @kubernetes/sig-api-machinery-leads |
We've considered that long time ago, but the community dependence built around the current locations will not allow us to do that switch. Jordan linked this when we were discussing kuberc (https://github.com/kubernetes/enhancements/blob/master/keps/sig-cli/3104-introduce-kuberc/README.md) but decided not to. As you can see https://github.com/kubernetes/enhancements/blob/master/keps/sig-cli/2229-kubectl-xdg-base-dir/kep.yaml is marked as rejected, so I guess it's fair to close this issue as we won't be addressing it. /close |
@soltysh: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
/kind feature
/sig cli
What happened:
On linux several directories and files are created under
~/.kube/
:What you expected to happen:
Essentially the
~/.kube/cache
should go to~/.cache/kube/
and the configs to~/.config/kube/
.For details see
https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
Anything else we need to know?:
The xdg setup eases maintenance (e.g. no need to backup cache dirs). This make it also easier to e.g. work with local tool (e.g. when running tools in docker, mount '.config' and be done istead of hunting each non standard config).
Environment:
Kubernetes version (use
kubectl version
):Client Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.3", GitCommit:"f0efb3cb883751c5ffdbe6d515f3cb4fbe7b7acd", GitTreeState:"clean", BuildDate:"2017-11-08T18:39:33Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}
OS (e.g. from /etc/os-release):
Debian GNU/Linux buster/sid
Kernel (e.g.
uname -a
):4.9.0-4-amd64 Unit test coverage in Kubelet is lousy. (~30%) #1 SMP Debian 4.9.51-1 (2017-09-28) x86_64 GNU/Linux
The text was updated successfully, but these errors were encountered: