-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Incompatible change in patch version breaks downstream/ users of k3s #10694
Comments
You posted a lot of text here but didn't actually at any point describe the problem, which appears to be that we have dropped the unlinked busybox applet in favor of bundling the findutils version of xargs. Ref: k3s-io/k3s-root#65 This was intended to be a usability improvement, as we were not expecting anyone to be using the unlinked applets directly like this, and we have no particular compatibility contract around use of unlinked applets in our packaged busybox. I am going to close this out, as the issue is in the k3d entrypoint script and has already been resolved. We do not in general intentionally make breaking changes on patch releases, but sometimes we do bump component versions in order to address security vulnerabilities, and sometimes those bumps will come with slight changes such as this.
I'll put it in writing here:
|
Indeed I only wrote what I encountered and not why it happenned. Thanks for the analysis and pin-pointing the cause. The issue was intended as feedback on the "usability improvement" resulting from the change. It may be useful to capture the actual contract/ api surface in k3s docs or point to it here rather than documenting it here. |
Environmental Info:
K3s Version:
v1.27.16+k3s1
Node(s) CPU architecture, OS, and Version: Multiple, tested on the following:
Cluster Configuration:
1 server
Describe the bug:
#10500 introduces changes which requires downstream packages e.g., k3d to adapt to new k3s behavior. For example, k3d 5.7.2 works with k3s versions <=1.27.15 and 1.28.1 but not 1.27.16!
Since semantically newer versions oscillate between old and new behavior (1.27.15 -> 1.27.16 -> 1.28.10 -> 1.28.12 -> 1.29.4 -> ...) this is very confusing for users on the upgrade path of k3s.
Steps To Reproduce:
One way to reproduce is to use k3s docker image to setup a cluster using k3d. This fails since the behavior has changed between v1.27.15 and v1.27.16
Expected behavior:
Patch versions don't break compatibility or introduce behavioral changes. In other words the following command should be successful (since the same command with 1.27.15 is):
Actual behavior:
See steps to reproduce above.
Additional context / logs:
It may be possible for k3d to document, for each k3s minor version, the list of patch versions supported by each version of k3d (suggested here). Nevertheless, this change breaks other scripts that use busybox etc. In general these type of changes are expected with minor releases but not with patch versions.
The text was updated successfully, but these errors were encountered: