parent
95d28f1e85
commit
4d651c9ecf
|
|
@ -1101,46 +1101,6 @@ releases:
|
||||||
deleted: []exectest.Release{},
|
deleted: []exectest.Release{},
|
||||||
concurrency: 1,
|
concurrency: 1,
|
||||||
error: `in ./helmfile.yaml: release(s) "default//foo" depend(s) on an undefined release "default//bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"?`,
|
error: `in ./helmfile.yaml: release(s) "default//foo" depend(s) on an undefined release "default//bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"?`,
|
||||||
log: `processing file "helmfile.yaml" in directory "."
|
|
||||||
changing working directory to "/path/to"
|
|
||||||
first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default map[] map[]}, overrode=<nil>
|
|
||||||
first-pass uses: &{default map[] map[]}
|
|
||||||
first-pass rendering output of "helmfile.yaml.part.0":
|
|
||||||
0:
|
|
||||||
1: releases:
|
|
||||||
2: - name: baz
|
|
||||||
3: namespace: ns1
|
|
||||||
4: chart: mychart3
|
|
||||||
5: - name: foo
|
|
||||||
6: chart: mychart1
|
|
||||||
7: needs:
|
|
||||||
8: - bar
|
|
||||||
9:
|
|
||||||
|
|
||||||
first-pass produced: &{default map[] map[]}
|
|
||||||
first-pass rendering result of "helmfile.yaml.part.0": {default map[] map[]}
|
|
||||||
vals:
|
|
||||||
map[]
|
|
||||||
defaultVals:[]
|
|
||||||
second-pass rendering result of "helmfile.yaml.part.0":
|
|
||||||
0:
|
|
||||||
1: releases:
|
|
||||||
2: - name: baz
|
|
||||||
3: namespace: ns1
|
|
||||||
4: chart: mychart3
|
|
||||||
5: - name: foo
|
|
||||||
6: chart: mychart1
|
|
||||||
7: needs:
|
|
||||||
8: - bar
|
|
||||||
9:
|
|
||||||
|
|
||||||
merged environment: &{default map[] map[]}
|
|
||||||
WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs
|
|
||||||
2 release(s) found in helmfile.yaml
|
|
||||||
|
|
||||||
err: release(s) "default//foo" depend(s) on an undefined release "default//bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"?
|
|
||||||
changing working directory back to "/path/to"
|
|
||||||
`,
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
processing file "helmfile.yaml" in directory "."
|
||||||
|
changing working directory to "/path/to"
|
||||||
|
merged environment: &{default map[] map[]}
|
||||||
|
WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs
|
||||||
|
2 release(s) found in helmfile.yaml
|
||||||
|
|
||||||
|
err: release(s) "default//foo" depend(s) on an undefined release "default//bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"?
|
||||||
|
changing working directory back to "/path/to"
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
processing file "helmfile.yaml" in directory "."
|
||||||
|
changing working directory to "/path/to"
|
||||||
|
merged environment: &{default map[] map[]}
|
||||||
|
1 release(s) matching name=foo found in helmfile.yaml
|
||||||
|
|
||||||
|
err: release "default//foo" depends on "default//bar" which does not match the selectors. Please add a selector like "--selector name=bar", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies
|
||||||
|
changing working directory back to "/path/to"
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
processing file "helmfile.yaml.gotmpl" in directory "."
|
||||||
|
changing working directory to "/path/to"
|
||||||
|
rendering starting for "helmfile.yaml.gotmpl.part.0": inherited=&{default map[] map[]}, overrode=<nil>
|
||||||
|
rendering result of "helmfile.yaml.gotmpl.part.0":
|
||||||
|
0:
|
||||||
|
1:
|
||||||
|
2:
|
||||||
|
3: releases:
|
||||||
|
4: - name: kubernetes-external-secrets
|
||||||
|
5: chart: incubator/raw
|
||||||
|
6: namespace: kube-system
|
||||||
|
7:
|
||||||
|
8: - name: external-secrets
|
||||||
|
9: chart: incubator/raw
|
||||||
|
10: namespace: default
|
||||||
|
11: labels:
|
||||||
|
12: app: test
|
||||||
|
13: needs:
|
||||||
|
14: - kube-system/kubernetes-external-secrets
|
||||||
|
15:
|
||||||
|
16: - name: my-release
|
||||||
|
17: chart: incubator/raw
|
||||||
|
18: namespace: default
|
||||||
|
19: labels:
|
||||||
|
20: app: test
|
||||||
|
21: needs:
|
||||||
|
22: - default/external-secrets
|
||||||
|
23:
|
||||||
|
|
||||||
|
merged environment: &{default map[] map[]}
|
||||||
|
0 release(s) matching app=test_non_existent found in helmfile.yaml.gotmpl
|
||||||
|
|
||||||
|
changing working directory back to "/path/to"
|
||||||
34
pkg/app/testdata/app_diff_test_1/upgrades_with_good_selector_with_--skip-needs=false
vendored
Normal file
34
pkg/app/testdata/app_diff_test_1/upgrades_with_good_selector_with_--skip-needs=false
vendored
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
processing file "helmfile.yaml.gotmpl" in directory "."
|
||||||
|
changing working directory to "/path/to"
|
||||||
|
rendering starting for "helmfile.yaml.gotmpl.part.0": inherited=&{default map[] map[]}, overrode=<nil>
|
||||||
|
rendering result of "helmfile.yaml.gotmpl.part.0":
|
||||||
|
0:
|
||||||
|
1:
|
||||||
|
2:
|
||||||
|
3: releases:
|
||||||
|
4: - name: kubernetes-external-secrets
|
||||||
|
5: chart: incubator/raw
|
||||||
|
6: namespace: kube-system
|
||||||
|
7:
|
||||||
|
8: - name: external-secrets
|
||||||
|
9: chart: incubator/raw
|
||||||
|
10: namespace: default
|
||||||
|
11: labels:
|
||||||
|
12: app: test
|
||||||
|
13: needs:
|
||||||
|
14: - kube-system/kubernetes-external-secrets
|
||||||
|
15:
|
||||||
|
16: - name: my-release
|
||||||
|
17: chart: incubator/raw
|
||||||
|
18: namespace: default
|
||||||
|
19: labels:
|
||||||
|
20: app: test
|
||||||
|
21: needs:
|
||||||
|
22: - default/external-secrets
|
||||||
|
23:
|
||||||
|
|
||||||
|
merged environment: &{default map[] map[]}
|
||||||
|
2 release(s) matching app=test found in helmfile.yaml.gotmpl
|
||||||
|
|
||||||
|
err: release "default/default/external-secrets" depends on "default/kube-system/kubernetes-external-secrets" which does not match the selectors. Please add a selector like "--selector name=kubernetes-external-secrets", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies
|
||||||
|
changing working directory back to "/path/to"
|
||||||
|
|
@ -67,60 +67,6 @@ releases:
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestReadFromYaml_RenderTemplate(t *testing.T) {
|
|
||||||
defaultValuesYaml := `
|
|
||||||
releaseName: "hello"
|
|
||||||
conditionalReleaseTag: "yes"
|
|
||||||
`
|
|
||||||
|
|
||||||
yamlContent := []byte(`
|
|
||||||
environments:
|
|
||||||
staging:
|
|
||||||
values:
|
|
||||||
- default/values.yaml
|
|
||||||
production:
|
|
||||||
|
|
||||||
releases:
|
|
||||||
- name: {{ .Environment.Values.releaseName }}
|
|
||||||
chart: mychart1
|
|
||||||
|
|
||||||
{{ if (eq .Environment.Values.conditionalReleaseTag "yes") }}
|
|
||||||
- name: conditionalRelease
|
|
||||||
{{ end }}
|
|
||||||
|
|
||||||
`)
|
|
||||||
|
|
||||||
files := map[string]string{
|
|
||||||
"/path/to/default/values.yaml": defaultValuesYaml,
|
|
||||||
}
|
|
||||||
|
|
||||||
r, _, _ := makeLoader(files, "staging")
|
|
||||||
// test the double rendering
|
|
||||||
yamlBuf, err := r.renderTemplatesToYaml("", "", yamlContent)
|
|
||||||
if err != nil {
|
|
||||||
t.Fatalf("unexpected error: %v", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
var state state.HelmState
|
|
||||||
err = yaml.Unmarshal(yamlBuf.Bytes(), &state)
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
t.Errorf("unexpected error: %v", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
if len(state.Releases) != 2 {
|
|
||||||
t.Fatal("there should be 2 releases")
|
|
||||||
}
|
|
||||||
|
|
||||||
if state.Releases[0].Name != "hello" {
|
|
||||||
t.Errorf("release name should be hello")
|
|
||||||
}
|
|
||||||
|
|
||||||
if state.Releases[1].Name != "conditionalRelease" {
|
|
||||||
t.Error("conditional release should have been present")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func testReadFromYaml_RenderTemplateLog(t *testing.T) {
|
func testReadFromYaml_RenderTemplateLog(t *testing.T) {
|
||||||
t.Helper()
|
t.Helper()
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -47,13 +47,6 @@ func TestForbidEnvironmentsWithReleases(t *testing.T) {
|
||||||
filePath: "helmfile.yaml",
|
filePath: "helmfile.yaml",
|
||||||
content: []byte("environments:\nreleases:\n"),
|
content: []byte("environments:\nreleases:\n"),
|
||||||
expectedErr: true,
|
expectedErr: true,
|
||||||
isStrict: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "error when both releases and environments for plain yaml on v1",
|
|
||||||
filePath: "helmfile.yaml",
|
|
||||||
content: []byte("environments:\nreleases:\n"),
|
|
||||||
expectedErr: true,
|
|
||||||
isStrict: true,
|
isStrict: true,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue