-
Notifications
You must be signed in to change notification settings - Fork 99
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
Support Helm chart #83
Comments
@helayoty I opened a quick POC of the changes to enable Helm support for the e2e-framework. Please let me know if you are already working on it and I will be happy to close up my PR if you have started working on this already. |
I made the support helper a little more generic and to do now just install but a simple way to wrap all commands for helm. proc := helm.NewManager().Run(
helm.WithMode("install"),
helm.WithName("memcached"),
helm.WithReleaseName("bitnami/memcached"),
helm.WithNamespace(namespace),
helm.WithArgs("--kubeconfig", config.KubeconfigFile()),
) We can also write a simple wrapper to help few generic command with much simpler way to access as well. This way, one can do most of the workflow centric to helm in their test using the same framework helpers. Is this inline with what you thought about ? cc @vladimirvivien What do you think about this model ? |
This is interesting. I will add review comments on the PR directly. |
@vladimirvivien I kept the type Option func(*Opts)
type Opts struct {
name string
args []string
argMap map[string]interface{}
}
func WithName(name string) Option {
return func(opts *Opts) {
opts.name = name
}
}
func WithArgs(args ...string) Option {
return func(opts *Opts) {
opts.args = append(opts.args, args...)
}
}
func WithKWArg(key string, val interface{}) Option {
return func(opts *Opts) {
opts.argMap[key] = val
}
}
type Integration interface {
Run(opts ...Option) (proc *exec.Proc, err error)
} |
As a test writer, I should be able to deploy
helm
charts.Design
The framework should provide a type that allows test writers to install
helm charts
Type Helm should also include a method to install the helm chart
Example
The text was updated successfully, but these errors were encountered: