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

Allow Custom Plugins to use helm variables via the GUI #10474

Open
BMonsalvatge opened this issue Aug 29, 2022 · 5 comments
Open

Allow Custom Plugins to use helm variables via the GUI #10474

BMonsalvatge opened this issue Aug 29, 2022 · 5 comments
Labels
component:ui User interfaces bugs and enhancements enhancement New feature or request

Comments

@BMonsalvatge
Copy link

Summary

Currently when using a plugin like the argocd vault plugin, I am no longer able to see the values of the helm chart via the gui and have to set it manually. Ref: argoproj-labs/argocd-vault-plugin#385 (comment)

Motivation

When using a CMP, it'd be nice if we could still have the default features of the way helm works in argocd.

Proposal

Not sure how it should logically function in ArgoCD, but when using a CMP it'd be nice to have the features of helm still available in the GUI. I am still using helm within ArgoCD to specify the values, they just no longer propagate into the GUI.

@BMonsalvatge BMonsalvatge added the enhancement New feature or request label Aug 29, 2022
@crenshaw-dev crenshaw-dev added the component:ui User interfaces bugs and enhancements label Oct 14, 2022
@crenshaw-dev
Copy link
Collaborator

May be partially solved by this: #9216

@BMonsalvatge
Copy link
Author

Yea, that would partially solve the issue. I think the only additional functionality that feels missing is a way to prefill those parameters the way helm plugin does by default. Maybe if there was some way a CMP can express where to get those values from (in the case of helm, pointing to values.yaml).

@crenshaw-dev
Copy link
Collaborator

crenshaw-dev commented Oct 17, 2022

@BMonsalvatge that's part of #9216! When the plugin sends Argo CD a description of what parameters it accepts, it can generate the list however it wants and pre-fill values which are already set. We designed it this way specifically with Helm in mind.

The feature proposal actually includes a small script which converts a values.yaml to a list of plugin parameters: https://argo-cd.readthedocs.io/en/latest/proposals/parameterized-config-management-plugins/#example-3-simple-helm-cmp

yq e -o=p values.yaml | jq --slurp --raw-input '
  [{
    name: "helm-parameters", 
    title: "Helm Parameters",
    collectionType: "map",
    map: split("\\n") | map(capture("(?<key>.*) = (?<value>.*)")) | from_entries
  }]'

@BMonsalvatge
Copy link
Author

Thanks for clarifying! Understanding that now looking over it a second time. I appreciate the response!

@crenshaw-dev
Copy link
Collaborator

Yeah I'm pretty excited about the feature, even more excited that it sounds like someone might use it. 😆 We'll get it reviewed and merged in time for 2.6 late next month.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:ui User interfaces bugs and enhancements enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants