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

feat: Add ability to deploy extra manifests #117

Closed

Conversation

mkilchhofer
Copy link

Overview

It is common now that helm charts offer the ability to deploy custom resources along the application. It is especially useful for managing Secrets (eg. via external-secrets.io / Secrets Store CSI Driver) or deploying more granular NetworkPolicy (eg. CiliumNetworkPolicy).

Charts in the community that supports this:

  • all Argoproj charts (Argo CD, Argo workflows, ...)
  • grafana charts (Grafana, Promtail, Loki, etc.)
  • most Bitnami charts
  • VictoriaMetrics charts
  • prometheus-community charts

What this PR does / why we need it

Add new parameter which allows injecting arbitrary resources.

Special notes for your reviewer

none

Checklist

  • Change log updated in Chart.yaml (see the contributing guide for details)
  • Chart version bumped in Chart.yaml (see the contributing guide for details)
  • Documentation regenerated by running make docs

Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com>
Copy link
Member

@sagikazarmark sagikazarmark left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the contribution @mkilchhofer !

I made a few comments. Also, please run make docs in the repo to regenerate readme. Thanks!

@@ -328,3 +328,21 @@ networkPolicy:
# ports:
# - port: 636
# protocol: TCP

# -- List of extra manifests to deploy. Will be passed through `tpl` to support templating
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# -- List of extra manifests to deploy. Will be passed through `tpl` to support templating
# -- List of extra manifests to deploy. Will be passed through `tpl` to support templating.

Nit

charts/dex/values.yaml Show resolved Hide resolved
# kind: ExternalSecret
# metadata:
# name: my-external-secret
# namespace: '{{ .Release.Namespace }}'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Out of curiosity: is the namespace really necessary? Wouldn't helm take care of that? If it's not necessary, I'd probably leave it out of the example as well.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just wanted to highlight that due to usage of the tpl function it is possible to use helm internal functions.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about name: {{ .Release.Name }} or something like that instead?

@mkilchhofer mkilchhofer deleted the feature/extra-manifests branch February 27, 2024 23:13
@sgrissom-rxss
Copy link

Any particular reason this was closed? Or just lack of time? Just curious if the change is resubmitted we can move it through.

@mkilchhofer
Copy link
Author

Any particular reason this was closed? Or just lack of time? Just curious if the change is resubmitted we can move it through.

IMHO this change is defintively useful. But for me resp. my use case I dont need this feature anymore since I now create an umbrella helm chart for every app.

@sagikazarmark what is your opinion here?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants