Skip to content
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

Enable ignore of helm hook annotations in specific hook resources #4331

Open
fabianmet opened this issue Sep 15, 2020 · 1 comment
Open

Enable ignore of helm hook annotations in specific hook resources #4331

fabianmet opened this issue Sep 15, 2020 · 1 comment
Labels
component:core Syncing, diffing, cluster state cache enhancement New feature or request

Comments

@fabianmet
Copy link

Summary

Some helm charts use helm hooks to achieve things that hooks were not intentionally designed for. For instance CRD lifecycle management since helm does not update existing CRD's itself. Helm docs for CRD management

I would love to be able to have ArgoCD deploy a helm chart where maintainers have made specific choices about hooks.

Case in point, the velero helm chart uses hook notations on the CRD's and some resources to enable lifecycle management of CRD's via helm.

Since ArgoCD maintains these helm CRD resources much cleaner there is no need for hook notations to be used.
Using the velero chart leaves ArgoCD lost with the CRD resources. There is no desired state when comparing in ArgoCD since it is maintained via a hook.

Having an option to have ArgoCD use these helm charts but not interpret every helm hook as an ArgoCD hook would make using these charts much easier.

Motivation

For instance the Velero Chart , uses helm hook notations to manage the lifecycle of CRD's. I don't believe that is going to change anytime soon since the chart is used a lot. ArgoCD could, with the option to ignore helm hook annotations per resource, still properly deploy these charts.

I am also looking in to specifically fixing the Velero chart but I am sure there are more charts out there that use helm hooks to achieve things that might not be what the concept of hooks were originally designed for.

Proposal

An addition to the helm plugin configuration that would allow specific resources to not be interpreted as an ArgoCD hook even though there is a helm hook notation. Effectively ignoring the helm hook notations.

I would be willing to make a PR for this but I could use some pointers in which packages to look.

@fabianmet fabianmet added the enhancement New feature or request label Sep 15, 2020
@jessesuen jessesuen added component:config-management Tools specific issues (helm, kustomize etc) component:core Syncing, diffing, cluster state cache and removed component:config-management Tools specific issues (helm, kustomize etc) labels Sep 15, 2020
@chancez
Copy link
Contributor

chancez commented Sep 16, 2020

Relates to #3502

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:core Syncing, diffing, cluster state cache enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants