diff options
Diffstat (limited to 'app-admin/helm/files/helm-2.12.0-sorting.patch')
-rw-r--r-- | app-admin/helm/files/helm-2.12.0-sorting.patch | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/app-admin/helm/files/helm-2.12.0-sorting.patch b/app-admin/helm/files/helm-2.12.0-sorting.patch deleted file mode 100644 index 560768049fde..000000000000 --- a/app-admin/helm/files/helm-2.12.0-sorting.patch +++ /dev/null @@ -1,90 +0,0 @@ -From c9a5b0bb49b91a463c0021dd5dbe9626e2d3bb11 Mon Sep 17 00:00:00 2001 -From: Filinto Duran <duranto@gmail.com> -Date: Fri, 14 Dec 2018 10:20:57 -0600 -Subject: [PATCH] fixes #4728 problem that arise because of the zero value of - unknown and the loging of kind_sorter this messes helm template when having - unknown (ie NOTES) or other files and the sorter catches namespace - -Signed-off-by: Filinto Duran <duranto@gmail.com> ---- - pkg/tiller/kind_sorter.go | 13 ++++++++---- - pkg/tiller/kind_sorter_test.go | 36 ++++++++++++++++++++++++++++++++++ - 2 files changed, 45 insertions(+), 4 deletions(-) - -diff --git a/pkg/tiller/kind_sorter.go b/pkg/tiller/kind_sorter.go -index 8aff4e6c11..7df63c6ac4 100644 ---- a/pkg/tiller/kind_sorter.go -+++ b/pkg/tiller/kind_sorter.go -@@ -124,12 +124,13 @@ func (k *kindSorter) Less(i, j int) bool { - b := k.manifests[j] - first, aok := k.ordering[a.Head.Kind] - second, bok := k.ordering[b.Head.Kind] -- // if same kind (including unknown) sub sort alphanumeric -- if first == second { -- // if both are unknown and of different kind sort by kind alphabetically -- if !aok && !bok && a.Head.Kind != b.Head.Kind { -+ // if both are unknown -+ if !aok && !bok { -+ // and of different kind sort by kind alphabetically -+ if a.Head.Kind != b.Head.Kind { - return a.Head.Kind < b.Head.Kind - } -+ // and of same kind sort by name alphabetically - return a.Name < b.Name - } - // unknown kind is last -@@ -139,6 +140,10 @@ func (k *kindSorter) Less(i, j int) bool { - if !bok { - return true - } -+ // if same kind sort alphanumeric -+ if first == second { -+ return a.Name < b.Name -+ } - // sort different kinds - return first < second - } -diff --git a/pkg/tiller/kind_sorter_test.go b/pkg/tiller/kind_sorter_test.go -index 1c187e90d5..823d9674ee 100644 ---- a/pkg/tiller/kind_sorter_test.go -+++ b/pkg/tiller/kind_sorter_test.go -@@ -223,3 +223,39 @@ func TestKindSorterSubSort(t *testing.T) { - }) - } - } -+ -+func TestKindSorterUnknownsWithNamespace(t *testing.T) { -+ // a.Kind=Namespace should win over b.Kind=Unknown even if the a.Name > b.Name -+ manifests := []Manifest{ -+ { -+ Name: "a", -+ Head: &util.SimpleHead{Kind: "Namespace"}, -+ }, -+ { -+ Name: "N", -+ Head: &util.SimpleHead{Kind: "Unknown"}, -+ }, -+ } -+ for _, test := range []struct { -+ description string -+ order SortOrder -+ expected string -+ }{ -+ // expectation is sorted by kind (unknown is last) and then sub sorted alphabetically within each group -+ {"Namespace,Unknown", InstallOrder, "aN"}, -+ } { -+ var buf bytes.Buffer -+ t.Run(test.description, func(t *testing.T) { -+ -+ defer buf.Reset() -+ m := make([]Manifest, len(manifests)) -+ copy(m, manifests) -+ for _, r := range sortByKind(m, test.order) { -+ buf.WriteString(r.Name) -+ } -+ if got := buf.String(); got != test.expected { -+ t.Errorf("Expected %q, got %q", test.expected, got) -+ } -+ }) -+ } -+} |