Merge branch 'main' into fix-include-needs-transitive

This commit is contained in:
yxxhero
2026-03-14 08:41:55 +08:00
committed by GitHub
6 changed files with 233 additions and 139 deletions
+3
View File
@@ -257,6 +257,9 @@ func (st *HelmState) appendCascadeFlags(flags []string, helm helmexec.Interface,
// append hide-notes flags to helm flags
func (st *HelmState) appendHideNotesFlags(flags []string, helm helmexec.Interface, ops *SyncOpts) []string {
if ops == nil {
return flags
}
// see https://github.com/helm/helm/releases/tag/v3.16.0
if !helm.IsVersionAtLeast("3.16.0") {
return flags
+9
View File
@@ -442,6 +442,15 @@ func TestAppendHideNotesFlags(t *testing.T) {
expected: []string{"--hide-notes"},
},
},
{
name: "no hide-notes when ops is nil",
args: args{
flags: []string{},
helm: testutil.NewVersionHelmExec("3.16.0"),
opt: nil,
expected: []string{},
},
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
+85 -4
View File
@@ -261,10 +261,12 @@ func TestHelmState_flagsForUpgrade(t *testing.T) {
},
},
{
name: "force",
name: "force-helm3",
defaults: HelmSpec{
Force: false,
Force: false,
CreateNamespace: &disable,
},
version: semver.MustParse("3.10.0"),
release: &ReleaseSpec{
Chart: "test/chart",
Version: "0.1",
@@ -279,10 +281,32 @@ func TestHelmState_flagsForUpgrade(t *testing.T) {
},
},
{
name: "force-from-default",
name: "force-helm4",
defaults: HelmSpec{
Force: true,
Force: false,
CreateNamespace: &disable,
},
version: semver.MustParse("4.0.0"),
release: &ReleaseSpec{
Chart: "test/chart",
Version: "0.1",
Force: &enable,
Name: "test-charts",
Namespace: "test-namespace",
},
want: []string{
"--version", "0.1",
"--force-replace",
"--namespace", "test-namespace",
},
},
{
name: "force-from-default-helm3",
defaults: HelmSpec{
Force: true,
CreateNamespace: &disable,
},
version: semver.MustParse("3.10.0"),
release: &ReleaseSpec{
Chart: "test/chart",
Version: "0.1",
@@ -295,6 +319,63 @@ func TestHelmState_flagsForUpgrade(t *testing.T) {
"--namespace", "test-namespace",
},
},
{
name: "force-from-default-helm4",
defaults: HelmSpec{
Force: true,
CreateNamespace: &disable,
},
version: semver.MustParse("4.0.0"),
release: &ReleaseSpec{
Chart: "test/chart",
Version: "0.1",
Force: &disable,
Name: "test-charts",
Namespace: "test-namespace",
},
want: []string{
"--version", "0.1",
"--namespace", "test-namespace",
},
},
{
name: "force-from-default-nil-force-helm3",
defaults: HelmSpec{
Force: true,
CreateNamespace: &disable,
},
version: semver.MustParse("3.10.0"),
release: &ReleaseSpec{
Chart: "test/chart",
Version: "0.1",
Name: "test-charts",
Namespace: "test-namespace",
},
want: []string{
"--version", "0.1",
"--force",
"--namespace", "test-namespace",
},
},
{
name: "force-from-default-nil-force-helm4",
defaults: HelmSpec{
Force: true,
CreateNamespace: &disable,
},
version: semver.MustParse("4.0.0"),
release: &ReleaseSpec{
Chart: "test/chart",
Version: "0.1",
Name: "test-charts",
Namespace: "test-namespace",
},
want: []string{
"--version", "0.1",
"--force-replace",
"--namespace", "test-namespace",
},
},
{
name: "recreate-pods",
defaults: HelmSpec{