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

Use native kubernetes ways of configuration #55

Open
nesl247 opened this issue Sep 17, 2019 · 9 comments
Open

Use native kubernetes ways of configuration #55

nesl247 opened this issue Sep 17, 2019 · 9 comments
Labels
chart Area: helm chart enhancement New feature or request

Comments

@nesl247
Copy link

nesl247 commented Sep 17, 2019

I'm currently using the helm chart in the incubator (https://github.com/helm/charts/tree/master/incubator/vault), and trying to migrate over to this official chart.

Unfortunately a lot of what is done in this helm chart is so much harder that the one from the incubator. Annotations for the pod for example require you to use a string instead of helm parsing it, allowing for the same configuration one would do for kubernetes itself. Same goes for volume and mounts.

@jasonodonnell
Copy link
Contributor

Hi @nesl247!

We're always interested in making this easier to use. I'm trying to understand where we're falling short here. Can you provide me an example of the UX you'd prefer or point to code that could be changed?

Thanks!

@nesl247
Copy link
Author

nesl247 commented Sep 24, 2019

Hi @jasonodonnell,

See how pod annotations are done here: https://github.com/helm/charts/blob/8180c3ffcf90dd5c2bc40e7006715100d7d6386d/incubator/vault/templates/deployment.yaml#L41 as an example. This is a lot easier to work with rather than having to do yaml strings.

@jasonodonnell
Copy link
Contributor

@nesl247,

Appreciate the tip, I think this is a good improvement and makes sense to add. Keeping this open to track the work!

@jasonodonnell jasonodonnell added the enhancement New feature or request label Sep 24, 2019
@tvoran tvoran added the chart Area: helm chart label Jan 23, 2020
@davidmogar
Copy link
Contributor

I didn't see this issue when preparing my change, but it makes a lot of sense. Specially when you have to write sensitive information as passwords. I'm trying to cover the config part, more or less, with this change #213.

Another thing that puzzles me but I didn't want to introduce in my change is the fact that deployment mode is split and each one define it's config. A single variable could include the mode and another one the config (with any validation done by Helm).

But for sure, my biggest problem right now is the config specification. Having the possibility to do it in a more dynamic way opens the doors to GitOps and secret management.

@nesl247
Copy link
Author

nesl247 commented Apr 9, 2020

Any word on if this would be accepted if I were to submit a PR? Working with this helm chart is a bit painful as it does a lot of custom stuff instead of adopting community standards, and using native features of yaml.

@tvoran
Copy link
Member

tvoran commented Apr 10, 2020

@nesl247 What all do you have in mind? Just changing multiline strings to yaml maps, or something more?

You mentioned Pulumi in another issue, is that the motivation for the changes? Can you elaborate on the issues you’re encountering?

@nesl247
Copy link
Author

nesl247 commented Apr 10, 2020

I would change any type of value that can be represented in a kubernetes native way to such way. For example, yaml maps for annotations and labels, volumes and volume mounts for volumes, affinity, nodeSelector, rename several values such as disruptionBudget to podDisruptionBudget (more commonly used), allow the config to be stored in an already existing ConfigMap or Secret, refactor the liveness and readiness probes, etc.

It took me a lot longer to figure out all of the custom ways that this helm chart worked rather than using the kubernetes native values, as well as coming from other helm charts that follow this format. This also makes the chart a lot more flexible as it doesn't depend upon as much custom logic which needs to support wider use cases.

On top of which, it solves the discrepancy between values such as resources and volumes, the former using the kubernetes native values, and the latter using a custom solution.

@tvoran
Copy link
Member

tvoran commented Apr 29, 2020

Hi @nesl247, I'd say we’re interested in supporting both YAML and YAML-formatted strings for chart values, as done in #272. For the other changes you mentioned I’d suggest separate PRs for each one to make it easier to review.

@nesl247
Copy link
Author

nesl247 commented May 19, 2020

I will do so when I have some time if someone doesn't beat me to it.

Thanks.

xiaocongji pushed a commit to SolaceDev/vault-helm that referenced this issue Mar 21, 2023
…-script-to-update-vault-address

feat(DATAGO-48600): Added a new script to change the different vault addresses
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chart Area: helm chart enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants