kubernetes-operator/test/support/helm/helm_install_opts.go

51 lines
1.2 KiB
Go

package helm
import (
"time"
"github.com/dapr/kubernetes-operator/pkg/utils/maputils"
"helm.sh/helm/v3/pkg/action"
)
func WithInstallName(value string) InstallOption {
return func(install *ReleaseOptions[action.Install]) {
install.Client.ReleaseName = value
}
}
func WithInstallNamespace(value string) InstallOption {
return func(install *ReleaseOptions[action.Install]) {
install.Client.Namespace = value
}
}
func WithInstallValue(name string, value interface{}) InstallOption {
return func(install *ReleaseOptions[action.Install]) {
install.Values[name] = value
}
}
func WithInstallVersion(value string) InstallOption {
return func(install *ReleaseOptions[action.Install]) {
install.Client.Version = value
}
}
func WithInstallValues(values map[string]interface{}) InstallOption {
return func(install *ReleaseOptions[action.Install]) {
install.Values = maputils.Merge(install.Values, values)
}
}
func WithInstallTimeout(value time.Duration) InstallOption {
return func(install *ReleaseOptions[action.Install]) {
install.Client.Timeout = value
}
}
func WithInstallWait(value bool) InstallOption {
return func(install *ReleaseOptions[action.Install]) {
install.Client.Wait = value
}
}