Use helm show chart to identify chart version

Signed-off-by: Felipe Santos <felipecassiors@gmail.com>
This commit is contained in:
Felipe Santos
2022-10-03 22:04:08 -03:00
parent 3165551f9a
commit f15bdbbb0c
17 changed files with 115 additions and 24 deletions
+8 -2
View File
@@ -3,6 +3,7 @@ package app
import (
"bufio"
"bytes"
"errors"
"fmt"
"io"
"os"
@@ -18,6 +19,7 @@ import (
"github.com/stretchr/testify/assert"
"github.com/variantdev/vals"
"go.uber.org/zap"
"helm.sh/helm/v3/pkg/chart"
"github.com/helmfile/helmfile/pkg/envvar"
"github.com/helmfile/helmfile/pkg/exectest"
@@ -2596,6 +2598,10 @@ func (helm *mockHelmExec) IsVersionAtLeast(versionStr string) bool {
return false
}
func (helm *mockHelmExec) ShowChart(chartPath string) (chart.Metadata, error) {
return chart.Metadata{}, errors.New("tests logs rely on this error")
}
func TestTemplate_SingleStateFile(t *testing.T) {
files := map[string]string{
"/path/to/helmfile.yaml": `
@@ -3052,7 +3058,7 @@ GROUP RELEASES
processing releases in group 1/2: default//baz, default//bar
processing releases in group 2/2: default//foo
getting deployed release version failed:Failed to get the version for:mychart1
getting deployed release version failed: Failed to get the version for: mychart1
UPDATED RELEASES:
NAME CHART VERSION
@@ -3162,7 +3168,7 @@ GROUP RELEASES
processing releases in group 1/2: default//baz, default//bar
processing releases in group 2/2: default//foo
getting deployed release version failed:Failed to get the version for:mychart1
getting deployed release version failed: Failed to get the version for: mychart1
UPDATED RELEASES:
NAME CHART VERSION
+10 -1
View File
@@ -1,6 +1,10 @@
package app
import "github.com/helmfile/helmfile/pkg/helmexec"
import (
"helm.sh/helm/v3/pkg/chart"
"github.com/helmfile/helmfile/pkg/helmexec"
)
type noCallHelmExec struct {
}
@@ -113,3 +117,8 @@ func (helm *noCallHelmExec) IsVersionAtLeast(versionStr string) bool {
helm.doPanic()
return false
}
func (helm *noCallHelmExec) ShowChart(chartPath string) (chart.Metadata, error) {
helm.doPanic()
return chart.Metadata{}, nil
}
@@ -50,9 +50,9 @@ GROUP RELEASES
2 default/tns1/foo
processing releases in group 1/2: default/tns2/bar
getting deployed release version failed:Failed to get the version for:mychart2
getting deployed release version failed: Failed to get the version for: mychart2
processing releases in group 2/2: default/tns1/foo
getting deployed release version failed:Failed to get the version for:mychart1
getting deployed release version failed: Failed to get the version for: mychart1
UPDATED RELEASES:
NAME CHART VERSION
+3 -3
View File
@@ -47,10 +47,10 @@ GROUP RELEASES
2 default//foo
processing releases in group 1/2: default//baz, default//bar
getting deployed release version failed:unexpected list key: listkey(filter=^baz$,flags=--kube-contextdefault--deleting--deployed--failed--pending) not found in
getting deployed release version failed:unexpected list key: listkey(filter=^bar$,flags=--kube-contextdefault--deleting--deployed--failed--pending) not found in
getting deployed release version failed: unexpected list key: listkey(filter=^baz$,flags=--kube-contextdefault--deleting--deployed--failed--pending) not found in
getting deployed release version failed: unexpected list key: listkey(filter=^bar$,flags=--kube-contextdefault--deleting--deployed--failed--pending) not found in
processing releases in group 2/2: default//foo
getting deployed release version failed:unexpected list key: listkey(filter=^foo$,flags=--kube-contextdefault--deleting--deployed--failed--pending) not found in
getting deployed release version failed: unexpected list key: listkey(filter=^foo$,flags=--kube-contextdefault--deleting--deployed--failed--pending) not found in
UPDATED RELEASES:
NAME CHART VERSION
@@ -42,9 +42,9 @@ GROUP RELEASES
2 default/testNamespace/bar
processing releases in group 1/2: default/testNamespace/foo
getting deployed release version failed:Failed to get the version for:mychart1
getting deployed release version failed: Failed to get the version for: mychart1
processing releases in group 2/2: default/testNamespace/bar
getting deployed release version failed:Failed to get the version for:mychart2
getting deployed release version failed: Failed to get the version for: mychart2
UPDATED RELEASES:
NAME CHART VERSION
+2 -2
View File
@@ -42,9 +42,9 @@ GROUP RELEASES
2 default//bar
processing releases in group 1/2: default//foo
getting deployed release version failed:Failed to get the version for:mychart1
getting deployed release version failed: Failed to get the version for: mychart1
processing releases in group 2/2: default//bar
getting deployed release version failed:Failed to get the version for:mychart2
getting deployed release version failed: Failed to get the version for: mychart2
UPDATED RELEASES:
NAME CHART VERSION
@@ -42,9 +42,9 @@ GROUP RELEASES
2 default/testNamespace/foo
processing releases in group 1/2: default/testNamespace/bar
getting deployed release version failed:Failed to get the version for:mychart2
getting deployed release version failed: Failed to get the version for: mychart2
processing releases in group 2/2: default/testNamespace/foo
getting deployed release version failed:Failed to get the version for:mychart1
getting deployed release version failed: Failed to get the version for: mychart1
UPDATED RELEASES:
NAME CHART VERSION
+2 -2
View File
@@ -42,9 +42,9 @@ GROUP RELEASES
2 default//foo
processing releases in group 1/2: default//bar
getting deployed release version failed:Failed to get the version for:mychart2
getting deployed release version failed: Failed to get the version for: mychart2
processing releases in group 2/2: default//foo
getting deployed release version failed:Failed to get the version for:mychart1
getting deployed release version failed: Failed to get the version for: mychart1
UPDATED RELEASES:
NAME CHART VERSION
@@ -46,9 +46,9 @@ GROUP RELEASES
2 default/ns1/foo
processing releases in group 1/2: default/ns2/bar
getting deployed release version failed:Failed to get the version for:mychart2
getting deployed release version failed: Failed to get the version for: mychart2
processing releases in group 2/2: default/ns1/foo
getting deployed release version failed:Failed to get the version for:mychart1
getting deployed release version failed: Failed to get the version for: mychart1
UPDATED RELEASES:
NAME CHART VERSION
@@ -46,9 +46,9 @@ GROUP RELEASES
2 default/ns2/bar
processing releases in group 1/2: default/ns1/foo
getting deployed release version failed:Failed to get the version for:mychart1
getting deployed release version failed: Failed to get the version for: mychart1
processing releases in group 2/2: default/ns2/bar
getting deployed release version failed:Failed to get the version for:mychart2
getting deployed release version failed: Failed to get the version for: mychart2
UPDATED RELEASES:
NAME CHART VERSION
@@ -60,7 +60,7 @@ GROUP RELEASES
1 default/default/foo
processing releases in group 1/1: default/default/foo
getting deployed release version failed:unexpected list key: {^foo$ --kube-contextdefault--deleting--deployed--failed--pending}
getting deployed release version failed: unexpected list key: {^foo$ --kube-contextdefault--deleting--deployed--failed--pending}
UPDATED RELEASES:
NAME CHART VERSION