fix tests

Signed-off-by: yxxhero <aiopsclub@163.com>
This commit is contained in:
yxxhero 2025-02-04 15:16:08 +08:00 committed by Zubair Haque
parent c10e0c8e5f
commit 4c0dda5727
3 changed files with 8 additions and 247 deletions

View File

@ -805,11 +805,11 @@ func TestVisitDesiredStatesWithReleasesFiltered_EmbeddedNestedStateAdditionalEnv
files := map[string]string{ files := map[string]string{
"/path/to/helmfile.yaml.gotmpl": ` "/path/to/helmfile.yaml.gotmpl": `
helmfiles: helmfiles:
- path: helmfile.d/a*.yaml - path: helmfile.d/a*.yaml.gotmpl
values: values:
- env.values.yaml - env.values.yaml
- helmfile.d/b*.yaml - helmfile.d/b*.yaml.gotmpl
- path: helmfile.d/c*.yaml - path: helmfile.d/c*.yaml.gotmpl
values: values:
- env.values.yaml - env.values.yaml
`, `,
@ -3484,7 +3484,7 @@ my-release 4 Fri Nov 1 08:40:07 2019 DEPLOYED raw-3.1.0 3.1.0 def
skipNeeds: false, skipNeeds: false,
includeNeeds: true, includeNeeds: true,
}, },
error: `in ./helmfile.yaml: 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`, error: `in ./helmfile.yaml.gotmpl: 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`,
files: map[string]string{ files: map[string]string{
"/path/to/helmfile.yaml.gotmpl": ` "/path/to/helmfile.yaml.gotmpl": `
{{ $mark := "a" }} {{ $mark := "a" }}
@ -3776,41 +3776,6 @@ releases:
`, `,
"/path/to/charts/example/Chart.yaml": `foo: FOO`, "/path/to/charts/example/Chart.yaml": `foo: FOO`,
}, },
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: repositories:
2: - name: bitnami
3: url: https://charts.bitnami.com/bitnami/
4: releases:
5: - name: example
6: chart: /path/to/charts/example
7:
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: repositories:
2: - name: bitnami
3: url: https://charts.bitnami.com/bitnami/
4: releases:
5: - name: example
6: chart: /path/to/charts/example
7:
merged environment: &{default map[] map[]}
There are no repositories defined in your helmfile.yaml.
This means helmfile cannot update your dependencies or create a lock file.
See https://github.com/roboll/helmfile/issues/878 for more information.
changing working directory back to "/path/to"
`,
charts: []string{"/path/to/charts/example"}, charts: []string{"/path/to/charts/example"},
}, },
} }
@ -4028,7 +3993,7 @@ func testSetStringValuesTemplate(t *testing.T, goccyGoYaml bool) {
}) })
files := map[string]string{ files := map[string]string{
"/path/to/helmfile.yaml": ` "/path/to/helmfile.yaml.gotmpl": `
releases: releases:
- name: zipkin - name: zipkin
chart: stable/zipkin chart: stable/zipkin
@ -4052,7 +4017,7 @@ releases:
OverrideKubeContext: "default", OverrideKubeContext: "default",
Logger: newAppTestLogger(), Logger: newAppTestLogger(),
Env: "default", Env: "default",
FileOrDir: "helmfile.yaml", FileOrDir: "helmfile.yaml.gotmpl",
}, files) }, files)
expectNoCallsToHelm(app) expectNoCallsToHelm(app)
@ -4124,7 +4089,7 @@ releases:
OverrideKubeContext: "default", OverrideKubeContext: "default",
Logger: newAppTestLogger(), Logger: newAppTestLogger(),
Env: "default", Env: "default",
FileOrDir: "helmfile.yaml", FileOrDir: "helmfile.yaml.gotmpl",
}, files) }, files)
expectNoCallsToHelm(app) expectNoCallsToHelm(app)

View File

@ -711,74 +711,7 @@ releases:
upgraded: []exectest.Release{}, upgraded: []exectest.Release{},
// as we check for log output, set concurrency to 1 to avoid non-deterministic test result // as we check for log output, set concurrency to 1 to avoid non-deterministic test result
concurrency: 1, concurrency: 1,
error: `in ./helmfile.yaml: release "default/external-secrets" depends on "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`, error: `in ./helmfile.yaml.gotmpl: release "default/external-secrets" depends on "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`,
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:
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:
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:
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
err: release "default/external-secrets" depends on "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"
`,
}, },
{ {
// see https://github.com/roboll/helmfile/issues/919#issuecomment-549831747 // see https://github.com/roboll/helmfile/issues/919#issuecomment-549831747
@ -817,72 +750,6 @@ releases:
error: "err: no releases found that matches specified selector(app=test_non_existent) and environment(default), in any helmfile", error: "err: no releases found that matches specified selector(app=test_non_existent) and environment(default), in any helmfile",
// as we check for log output, set concurrency to 1 to avoid non-deterministic test result // as we check for log output, set concurrency to 1 to avoid non-deterministic test result
concurrency: 1, concurrency: 1,
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:
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:
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:
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
changing working directory back to "/path/to"
`,
}, },
// //
// error cases // error cases
@ -912,46 +779,6 @@ releases:
deleted: []exectest.Release{}, deleted: []exectest.Release{},
concurrency: 1, concurrency: 1,
error: `in ./helmfile.yaml: release(s) "foo" depend(s) on an undefined release "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) "foo" depend(s) on an undefined release "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) "foo" depend(s) on an undefined release "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"
`,
}, },
} }

View File

@ -1,36 +1,5 @@
processing file "helmfile.yaml" in directory "." processing file "helmfile.yaml" in directory "."
changing working directory to "/path/to" 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: backend-v1
3: chart: charts/backend
4: installed: false
5: - name: frontend-v1
6: chart: charts/frontend
7: needs:
8: - backend-v1
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: backend-v1
3: chart: charts/backend
4: installed: false
5: - name: frontend-v1
6: chart: charts/frontend
7: needs:
8: - backend-v1
9:
merged environment: &{default map[] map[]} merged environment: &{default map[] map[]}
WARNING: release frontend-v1 needs backend-v1, but backend-v1 is not installed due to installed: false. Either mark backend-v1 as installed or remove backend-v1 from frontend-v1's needs WARNING: release frontend-v1 needs backend-v1, but backend-v1 is not installed due to installed: false. Either mark backend-v1 as installed or remove backend-v1 from frontend-v1's needs
2 release(s) found in helmfile.yaml 2 release(s) found in helmfile.yaml