helmfile icon indicating copy to clipboard operation
helmfile copied to clipboard

--skip-deps by default

Open Morriz opened this issue 6 years ago • 9 comments

Please make the repo sync a manual effort (devs don't need it, only stateless dind CI runners), and use an env var like HF_REPO_SYNC=bool (true= default, for CI).

I now created aliases that add --skip-deps to all helmfile operations, but not all commands allow it....

Morriz avatar Aug 06 '19 22:08 Morriz

@Morriz Hey! Thanks as always for your feedback.

I wanted helmfile users to be required least knowledge to run helmfile correctly. --skip-deps is intentionally a opt-out flag based on that. This is unlikely to change.

But I do think needing to create a lot of helmfile aliases just for --skip-deps doesn't scale.

How about making --skip-deps a global flag? So that all you need is to create a single alias alias h='helmfile --skip-deps', or even alias h='helmfile --skip-deps --no-color' after #788.

mumoshu avatar Aug 06 '19 23:08 mumoshu

That would work, but don’t you agree my view suits better with the use cases? Why not just make an explicit repo-update action?

Morriz avatar Aug 07 '19 06:08 Morriz

I wanted to helmfile users to be required least knowledge to run helmfile correctly.

This is the rationale behind that. What if you wanted multiple kubectl commands to just apply a set of k8s manifest YAMLs?

Making it just require a single helmfile command to apply helmfile.yaml has been justified for the similar reason. I don't want multiple helmfile commands just to apply one helmfile.yaml.

And repo update is usually an unavoidable step.

Also I'm guessing why you think you don't need it. You do need it when the repo is updated. Perhaps you know you sometimes need it, but wanted to skip it because it's too time consuming for huge helmfile setup, right?

Then, we have a dedicated issue to make the repo update faster #627

mumoshu avatar Aug 07 '19 06:08 mumoshu

I think you should let it sink in some more. To me it is about intended behaviour. Why abuse all helmfile commands to sync repos, even though developers don’t have a problem lifting the “update” action to the start/top of their script? It really has no downsides to make it explicit.

I don’t need it in 99% of my daily workflow, that is reality. Not only for me

Morriz avatar Aug 07 '19 07:08 Morriz

To me it is about intended behaviour

Same for me!

even though developers don’t have a problem lifting the “update” action to the start/top of their script

For me, it seems to imply that we need an another, more narrowly purposed command than sync or apply. That sounds true to me after hearing many people seems to have no prob with helmfile with the current behavior.

I don’t need it in 99% of my daily workflow

Yep. So to make Helmfile fit to your use-case as well as other users, I'm proposing the addition of --skip-deps as the global flag, or an another command.

mumoshu avatar Aug 07 '19 07:08 mumoshu

I will use that of course, even though it feels dirty to my purist mind ;)

Morriz avatar Aug 07 '19 09:08 Morriz

Hehe. Please let me keep this open until I come up with something nicer!

Regarding --skip-deps as a global flag and/or ability to configure it via an envvar, I'll try to address it asap.

mumoshu avatar Aug 07 '19 14:08 mumoshu

I really admire your presence. Never been treated more kindly and enthusiastic. Tnx again ;)

Morriz avatar Aug 07 '19 14:08 Morriz

Let's look at it from another perspective. Is the default behavior in helm to do a helm dep up every single time I do an install or an upgrade? Do I have to have a flag to opt out of helm dep up ? No I don't so helmfile is inconsistent with helm and that is the annoying part of this difference.

woodcockjosh avatar Jan 15 '25 17:01 woodcockjosh