mirror of
https://github.com/helmfile/helmfile.git
synced 2026-10-21 17:01:44 +02:00
This is for #1213 so that the releases are considered scoped to their namespace and not to tiller namespace. Fixes #1213
This commit is contained in:
+11
-7
@@ -699,7 +699,7 @@ func (a *App) visitStatesWithSelectorsAndRemoteSupport(fileOrDir string, converg
|
||||
return a.visitStates(fileOrDir, opts, converge)
|
||||
}
|
||||
|
||||
func processFilteredReleases(st *state.HelmState, converge func(st *state.HelmState) []error) (bool, []error) {
|
||||
func processFilteredReleases(st *state.HelmState, helm helmexec.Interface, converge func(st *state.HelmState) []error) (bool, []error) {
|
||||
if len(st.Selectors) > 0 {
|
||||
err := st.FilterReleases()
|
||||
if err != nil {
|
||||
@@ -713,11 +713,15 @@ func processFilteredReleases(st *state.HelmState, converge func(st *state.HelmSt
|
||||
|
||||
releaseNameCounts := map[Key]int{}
|
||||
for _, r := range st.Releases {
|
||||
tillerNamespace := st.HelmDefaults.TillerNamespace
|
||||
if r.TillerNamespace != "" {
|
||||
tillerNamespace = r.TillerNamespace
|
||||
namespace := r.Namespace
|
||||
if !helm.IsHelm3() {
|
||||
if r.TillerNamespace != "" {
|
||||
namespace = r.TillerNamespace
|
||||
} else {
|
||||
namespace = st.HelmDefaults.TillerNamespace
|
||||
}
|
||||
}
|
||||
releaseNameCounts[Key{tillerNamespace, r.Name}]++
|
||||
releaseNameCounts[Key{namespace, r.Name}]++
|
||||
}
|
||||
for name, c := range releaseNameCounts {
|
||||
if c > 1 {
|
||||
@@ -734,7 +738,7 @@ func processFilteredReleases(st *state.HelmState, converge func(st *state.HelmSt
|
||||
|
||||
func (a *App) Wrap(converge func(*state.HelmState, helmexec.Interface) []error) func(st *state.HelmState, helm helmexec.Interface) (bool, []error) {
|
||||
return func(st *state.HelmState, helm helmexec.Interface) (bool, []error) {
|
||||
return processFilteredReleases(st, func(st *state.HelmState) []error {
|
||||
return processFilteredReleases(st, helm, func(st *state.HelmState) []error {
|
||||
return converge(st, helm)
|
||||
})
|
||||
}
|
||||
@@ -742,7 +746,7 @@ func (a *App) Wrap(converge func(*state.HelmState, helmexec.Interface) []error)
|
||||
|
||||
func (a *App) VisitDesiredStatesWithReleasesFiltered(fileOrDir string, converge func(*state.HelmState) []error, o ...LoadOption) error {
|
||||
return a.visitStatesWithSelectorsAndRemoteSupport(fileOrDir, func(st *state.HelmState) (bool, []error) {
|
||||
return processFilteredReleases(st, converge)
|
||||
return processFilteredReleases(st, a.getHelm(st), converge)
|
||||
}, o...)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user