mirror of
https://github.com/helmfile/helmfile.git
synced 2026-10-02 22:54:32 +02:00
feat: Option to pass apiVersions to helm diff and helm template (#1046)
This makes it possible to pass the API Capabilities to helmfile when executing a task that does not render against an actual cluster (diff, template, apply). Resolves #1014
This commit is contained in:
@@ -47,6 +47,7 @@ type HelmState struct {
|
||||
Repositories []RepositorySpec `yaml:"repositories,omitempty"`
|
||||
Releases []ReleaseSpec `yaml:"releases,omitempty"`
|
||||
Selectors []string `yaml:"-"`
|
||||
ApiVersions []string `yaml:"apiVersions,omitempty"`
|
||||
|
||||
Templates map[string]TemplateSpec `yaml:"templates"`
|
||||
|
||||
@@ -1590,6 +1591,8 @@ func (st *HelmState) flagsForTemplate(helm helmexec.Interface, release *ReleaseS
|
||||
return nil, err
|
||||
}
|
||||
|
||||
flags = st.appendApiVersionsFlags(flags)
|
||||
|
||||
common, err := st.namespaceAndValuesFlags(helm, release, workerIndex)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -1615,6 +1618,8 @@ func (st *HelmState) flagsForDiff(helm helmexec.Interface, release *ReleaseSpec,
|
||||
return nil, err
|
||||
}
|
||||
|
||||
flags = st.appendApiVersionsFlags(flags)
|
||||
|
||||
common, err := st.namespaceAndValuesFlags(helm, release, workerIndex)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -1622,6 +1627,13 @@ func (st *HelmState) flagsForDiff(helm helmexec.Interface, release *ReleaseSpec,
|
||||
return append(flags, common...), nil
|
||||
}
|
||||
|
||||
func (st *HelmState) appendApiVersionsFlags(flags []string) []string {
|
||||
for _, a := range st.ApiVersions {
|
||||
flags = append(flags, "--api-versions", a)
|
||||
}
|
||||
return flags
|
||||
}
|
||||
|
||||
func (st *HelmState) isDevelopment(release *ReleaseSpec) bool {
|
||||
result := st.HelmDefaults.Devel
|
||||
if release.Devel != nil {
|
||||
|
||||
Reference in New Issue
Block a user