-
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
Consider defaulting 'force' to false with Helm v3 #3798
Comments
Thanks for opening @TBBle and for the detailed analysis! I came to the same conclusion on #3864: Workaround Next steps
|
A quick +1 from me. We've run into identical issues that @TBBle reports. This becomes even more frustrating if; like us; you use Cloud Code for VSCode as I'm not aware of a way to use the |
Same issue here. Is there away to workaround with Cloud Code for Intellij to use |
In case someone else runs into this, I found you can set the flag via the |
This does feel wrong to default to force. Can we atleast get a way to over-ride via skaffold.yaml? I dont want to have to tell all of our dev teams to add the --force=false command. If we have it exposed in the skaffold.yaml that we can let folks copy, its less of pain on the end user. |
@TBBle You add the
Would this work? We can definitely move this config to |
No, other way round: skaffold is adding If anyone wants to use it they could pass It's not totally clear why skaffold set this in the first place; it was a pain point with Helm v2 too, but not a blocker. I don't really want to have to put |
hey all, I'm looking into this one now. based on the timeline for EOLing Helm 2, I'm inclined to simply change the default here, but I'm trying to understand and repro the issue before I do. the flag was originally added in #1568, which was addressing an issue where deployments were being overwritten everytime with looking at how things are now, it seems like with the release of helm 3 this did indeed start breaking people, based on the tracking issue on the helm repo linked in here. i've tried to repro this with no success though - the only way I can get skaffold to give me the additionally, when I set it to the empty string, changing the default value of
|
@nkubala I'm running the following:
In troubleshooting this with some of my colleagues, we discovered that the issue was in helm 3.2 not in helm 3.1.1. While my PR (#4513 ) hopefully resolves this issue, its also written with the thought that we should never be assuming that extra flags are required. To me this doesn't seem like a good precedent to set, and easily leads to confusion. It makes more sense to be able to add additional flags. |
Hey @nkubala, For the absence of doubt, you are triggering a reload in your testing? |
I'm not setting explicit clusterIP, but it shouldn't be needed to reproduce this. The forced-update via See helm/helm#7082 (comment) and kubernetes/kubernetes#11237. My initial report was with Helm 3.0.2. I'm not sure why Helm 3.1.1 wouldn't have had the same issue. It's possible that at some point, |
I've tried different versions of helm (3.0.3, 3.1.3, and 3.2.4) and all of them has the same issue. As above, using |
ok, did some experimentation. after trying everything to repro on I was also able to confirm that removing I completely agree that we shouldn't be requiring explicit flags to run skaffold. this is something I've heard called the "happy path" by someone around here and it really resonates with me - you should be able to run |
I was worried this could get bogged down in unfortunate back compat conversations. Great outcome 👏 |
Expected behavior
skaffold dev
successfully updates a Helm v3-deployed cluster when code is changed on-disk.Actual behavior
skaffold dev
fails to update a Helm v3-deployed cluster when code is changed on-disk, because it passes--force
to Helm, which leads to the following failures for services with dynamic (i.e. empty in the YAML) clusterIP values:skaffold is bouncing off helm/helm#7082, the mega-ticket around the difference between
--force
in Helm v2 and Helm v3. See particularly helm/helm#7082 (comment) and a bunch of other references to 'immutable'.Given the change in behaviour of
helm --force
, and until something like helm/helm#7082 introduceshelm --recreate
or similar (the equivalent ofhelm --force
under Helm v2) I'd suggest either defaultingskaffold --force
to off for Helm v3, or ignoring it until helm/helm#7082 is resolved.Information
version.BuildInfo{Version:"v3.0.2", GitCommit:"19e47ee3283ae98139d98460de796c1be1e3975f", GitTreeState:"clean", GoVersion:"go1.13.5"}
(Mostly redacted to remove comments and local project details)
Steps to reproduce the behavior
skaffold dev
Successful flow:
skaffold dev --force=false
The text was updated successfully, but these errors were encountered: