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

Capability to enable custom plugins for Kustomize and helm plugins for kustomize #2978

Open
dc588 opened this issue Nov 21, 2024 · 1 comment

Comments

@dc588
Copy link

dc588 commented Nov 21, 2024

Proposed Feature

Can we add a feature to set kustomize build options to enable alpha-plugins and enable helm similar to argocd? Could this be added to an option to the kargo controller.

Motivation

We have custom transformers in kustomize to handle environment and cluster specific configuration. Having this feature will help us to transition to use kargo as our CD tool

Suggested Implementation

Can the kargo deployment be updated to enable custom kustomize plugins. Can we also incorporate with helm install as well?

@hiddeco
Copy link
Contributor

hiddeco commented Nov 21, 2024

We do at present no longer shell out to kustomize, but rather use the lower-level build API of it to ensure Project and Promotion boundaries are guarded, and it is safe to use for multi-tenant setups. The same applies to helm, where we use the Go equivalent of running helm template using the Helm SDK.

Furthermore, Kustomize plugins come in two (non-deprecated) flavors:

  1. Containerized KRM Functions
  2. Exec KRM Functions

Supporting the first option within Kubernetes itself is difficult because it needs to spawn a container to be able to work. The second option has a better chance of being supported (although I potentially see dependency issues if someone were to attempt to use a Ruby script as shown in the example), but requires discussion and exploration to see if and/or how we can safely enable this.

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

No branches or pull requests

2 participants