fix: helmfile destroy does not delete helm releases in status : PENDING_INSTALL (#995)
Fixes #539
This commit is contained in:
parent
0e1aeb43ce
commit
b044820607
|
|
@ -2243,10 +2243,10 @@ releases:
|
|||
},
|
||||
lists: map[exectest.ListKey]string{
|
||||
// delete frontend-v1 and backend-v1
|
||||
exectest.ListKey{Filter: "^frontend-v1$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^frontend-v1$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
frontend-v1 4 Fri Nov 1 08:40:07 2019 DEPLOYED backend-3.1.0 3.1.0 default
|
||||
`,
|
||||
exectest.ListKey{Filter: "^backend-v1$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^backend-v1$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
backend-v1 4 Fri Nov 1 08:40:07 2019 DEPLOYED backend-3.1.0 3.1.0 default
|
||||
`,
|
||||
},
|
||||
|
|
@ -2431,33 +2431,33 @@ processing releases in group 1/5: logging, front-proxy
|
|||
worker 1/1 started
|
||||
worker 1/1 finished
|
||||
worker 1/1 started
|
||||
getting deployed release version failed:unexpected list key: {^logging$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^front-proxy$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^logging$ --kube-contextdefault--deployed--failed--pending}
|
||||
getting deployed release version failed:unexpected list key: {^front-proxy$ --kube-contextdefault--deployed--failed--pending}
|
||||
worker 1/1 finished
|
||||
processing releases in group 2/5: database, servicemesh
|
||||
worker 1/1 started
|
||||
worker 1/1 finished
|
||||
worker 1/1 started
|
||||
getting deployed release version failed:unexpected list key: {^database$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^servicemesh$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^database$ --kube-contextdefault--deployed--failed--pending}
|
||||
getting deployed release version failed:unexpected list key: {^servicemesh$ --kube-contextdefault--deployed--failed--pending}
|
||||
worker 1/1 finished
|
||||
processing releases in group 3/5: anotherbackend
|
||||
worker 1/1 started
|
||||
worker 1/1 finished
|
||||
worker 1/1 started
|
||||
getting deployed release version failed:unexpected list key: {^anotherbackend$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^anotherbackend$ --kube-contextdefault--deployed--failed--pending}
|
||||
worker 1/1 finished
|
||||
processing releases in group 4/5: backend-v1, backend-v2
|
||||
worker 1/1 started
|
||||
worker 1/1 finished
|
||||
worker 1/1 started
|
||||
getting deployed release version failed:unexpected list key: {^backend-v2$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^backend-v2$ --kube-contextdefault--deployed--failed--pending}
|
||||
worker 1/1 finished
|
||||
processing releases in group 5/5: frontend-v1, frontend-v2, frontend-v3
|
||||
worker 1/1 started
|
||||
worker 1/1 finished
|
||||
worker 1/1 started
|
||||
getting deployed release version failed:unexpected list key: {^frontend-v3$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^frontend-v3$ --kube-contextdefault--deployed--failed--pending}
|
||||
worker 1/1 finished
|
||||
|
||||
UPDATED RELEASES:
|
||||
|
|
@ -2499,8 +2499,8 @@ releases:
|
|||
exectest.DiffKey{Name: "bar", Chart: "mychart2", Flags: "--kube-contextdefault--detailed-exitcode"}: nil,
|
||||
},
|
||||
lists: map[exectest.ListKey]string{
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault"}: ``,
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault--deployed--failed--pending"}: ``,
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
bar 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart2-3.1.0 3.1.0 default
|
||||
`,
|
||||
},
|
||||
|
|
@ -2592,14 +2592,14 @@ processing releases in group 1/2: baz, bar
|
|||
worker 1/1 started
|
||||
worker 1/1 finished
|
||||
worker 1/1 started
|
||||
getting deployed release version failed:unexpected list key: {^baz$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^bar$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^baz$ --kube-contextdefault--deployed--failed--pending}
|
||||
getting deployed release version failed:unexpected list key: {^bar$ --kube-contextdefault--deployed--failed--pending}
|
||||
worker 1/1 finished
|
||||
processing releases in group 2/2: foo
|
||||
worker 1/1 started
|
||||
worker 1/1 finished
|
||||
worker 1/1 started
|
||||
getting deployed release version failed:unexpected list key: {^foo$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^foo$ --kube-contextdefault--deployed--failed--pending}
|
||||
worker 1/1 finished
|
||||
|
||||
UPDATED RELEASES:
|
||||
|
|
@ -2869,13 +2869,13 @@ processing releases in group 1/2: tns1/ns1/foo
|
|||
worker 1/1 started
|
||||
worker 1/1 finished
|
||||
worker 1/1 started
|
||||
getting deployed release version failed:unexpected list key: {^foo$ --tiller-namespacetns1--kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^foo$ --tiller-namespacetns1--kube-contextdefault--deployed--failed--pending}
|
||||
worker 1/1 finished
|
||||
processing releases in group 2/2: tns2/ns2/bar
|
||||
worker 1/1 started
|
||||
worker 1/1 finished
|
||||
worker 1/1 started
|
||||
getting deployed release version failed:unexpected list key: {^bar$ --tiller-namespacetns2--kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^bar$ --tiller-namespacetns2--kube-contextdefault--deployed--failed--pending}
|
||||
worker 1/1 finished
|
||||
|
||||
UPDATED RELEASES:
|
||||
|
|
@ -2909,10 +2909,10 @@ releases:
|
|||
exectest.DiffKey{Name: "foo", Chart: "mychart1", Flags: "--kube-contextdefault--detailed-exitcode"}: helmexec.ExitError{Code: 2},
|
||||
},
|
||||
lists: map[exectest.ListKey]string{
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
foo 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart1-3.1.0 3.1.0 default
|
||||
`,
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
bar 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart2-3.1.0 3.1.0 default
|
||||
`,
|
||||
},
|
||||
|
|
@ -2942,10 +2942,10 @@ releases:
|
|||
exectest.DiffKey{Name: "foo", Chart: "mychart1", Flags: "--kube-contextdefault--detailed-exitcode"}: helmexec.ExitError{Code: 2},
|
||||
},
|
||||
lists: map[exectest.ListKey]string{
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
foo 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart1-3.1.0 3.1.0 default
|
||||
`,
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
bar 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart2-3.1.0 3.1.0 default
|
||||
`,
|
||||
},
|
||||
|
|
@ -2977,10 +2977,10 @@ releases:
|
|||
exectest.DiffKey{Name: "foo", Chart: "mychart1", Flags: "--kube-contextdefault--detailed-exitcode"}: helmexec.ExitError{Code: 2},
|
||||
},
|
||||
lists: map[exectest.ListKey]string{
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
foo 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart1-3.1.0 3.1.0 default
|
||||
`,
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
bar 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart2-3.1.0 3.1.0 default
|
||||
`,
|
||||
},
|
||||
|
|
@ -3011,10 +3011,10 @@ releases:
|
|||
exectest.DiffKey{Name: "foo", Chart: "mychart1", Flags: "--kube-contextdefault--detailed-exitcode"}: helmexec.ExitError{Code: 2},
|
||||
},
|
||||
lists: map[exectest.ListKey]string{
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
foo 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart1-3.1.0 3.1.0 default
|
||||
`,
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
bar 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart2-3.1.0 3.1.0 default
|
||||
`,
|
||||
},
|
||||
|
|
@ -3045,10 +3045,10 @@ releases:
|
|||
exectest.DiffKey{Name: "foo", Chart: "mychart1", Flags: "--kube-contextdefault--detailed-exitcode"}: helmexec.ExitError{Code: 2},
|
||||
},
|
||||
lists: map[exectest.ListKey]string{
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
foo 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart1-3.1.0 3.1.0 default
|
||||
`,
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
bar 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart2-3.1.0 3.1.0 default
|
||||
`,
|
||||
},
|
||||
|
|
@ -3079,10 +3079,10 @@ releases:
|
|||
exectest.DiffKey{Name: "foo", Chart: "mychart1", Flags: "--kube-contextdefault--detailed-exitcode"}: helmexec.ExitError{Code: 2},
|
||||
},
|
||||
lists: map[exectest.ListKey]string{
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^foo$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
foo 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart1-3.1.0 3.1.0 default
|
||||
`,
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
exectest.ListKey{Filter: "^bar$", Flags: "--kube-contextdefault--deployed--failed--pending"}: `NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
|
||||
bar 4 Fri Nov 1 08:40:07 2019 DEPLOYED mychart2-3.1.0 3.1.0 default
|
||||
`,
|
||||
},
|
||||
|
|
@ -3221,7 +3221,7 @@ processing releases in group 2/3: default/external-secrets
|
|||
worker 1/1 started
|
||||
worker 1/1 finished
|
||||
worker 1/1 started
|
||||
getting deployed release version failed:unexpected list key: {^external-secrets$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^external-secrets$ --kube-contextdefault--deployed--failed--pending}
|
||||
worker 1/1 finished
|
||||
processing releases in group 3/3: default/my-release
|
||||
1 release(s) matching app=test found in helmfile.yaml
|
||||
|
|
@ -3229,7 +3229,7 @@ processing releases in group 3/3: default/my-release
|
|||
worker 1/1 started
|
||||
worker 1/1 finished
|
||||
worker 1/1 started
|
||||
getting deployed release version failed:unexpected list key: {^my-release$ --kube-contextdefault}
|
||||
getting deployed release version failed:unexpected list key: {^my-release$ --kube-contextdefault--deployed--failed--pending}
|
||||
worker 1/1 finished
|
||||
|
||||
UPDATED RELEASES:
|
||||
|
|
|
|||
|
|
@ -658,6 +658,7 @@ func (st *HelmState) listReleases(context helmexec.HelmContext, helm helmexec.In
|
|||
if helm.IsHelm3() && release.Namespace != "" {
|
||||
flags = append(flags, "--namespace", release.Namespace)
|
||||
}
|
||||
flags = append(flags, "--deployed", "--failed", "--pending")
|
||||
return helm.List(context, "^"+release.Name+"$", flags...)
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1168,7 +1168,7 @@ func TestHelmState_SyncReleasesAffectedRealeases(t *testing.T) {
|
|||
//simulate the release is already installed
|
||||
for i, release := range tt.releases {
|
||||
if tt.installed != nil && tt.installed[i] {
|
||||
helm.Lists[exectest.ListKey{Filter: "^" + release.Name + "$"}] = release.Name
|
||||
helm.Lists[exectest.ListKey{Filter: "^" + release.Name + "$", Flags: "--deployed--failed--pending"}] = release.Name
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1268,7 +1268,7 @@ func TestGetDeployedVersion(t *testing.T) {
|
|||
Lists: map[exectest.ListKey]string{},
|
||||
}
|
||||
//simulate the helm.list call result
|
||||
helm.Lists[exectest.ListKey{Filter: "^" + tt.release.Name + "$"}] = tt.listResult
|
||||
helm.Lists[exectest.ListKey{Filter: "^" + tt.release.Name + "$", Flags: "--deployed--failed--pending"}] = tt.listResult
|
||||
|
||||
affectedReleases := AffectedReleases{}
|
||||
state.SyncReleases(&affectedReleases, helm, []string{}, 1)
|
||||
|
|
|
|||
Loading…
Reference in New Issue