From 7f7e90b4078d412e2ff36d8220409ff8497c93a1 Mon Sep 17 00:00:00 2001 From: Fabian Ruff Date: Sat, 2 Nov 2019 00:18:21 +0100 Subject: [PATCH] Consider namespace when comparing resources Fixes #6857 Signed-off-by: Fabian Ruff --- pkg/action/upgrade.go | 2 +- pkg/kube/client.go | 2 +- pkg/kube/resource.go | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/action/upgrade.go b/pkg/action/upgrade.go index 31fcc1471..d0495a864 100644 --- a/pkg/action/upgrade.go +++ b/pkg/action/upgrade.go @@ -415,5 +415,5 @@ func recreate(cfg *Configuration, resources kube.ResourceList) error { func objectKey(r *resource.Info) string { gvk := r.Object.GetObjectKind().GroupVersionKind() - return fmt.Sprintf("%s/%s/%s", gvk.GroupVersion().String(), gvk.Kind, r.Name) + return fmt.Sprintf("%s/%s/%s/%s", gvk.GroupVersion().String(), gvk.Kind, r.Namespace, r.Name) } diff --git a/pkg/kube/client.go b/pkg/kube/client.go index 2a5661306..ab1f600ff 100644 --- a/pkg/kube/client.go +++ b/pkg/kube/client.go @@ -167,7 +167,7 @@ func (c *Client) Update(original, target ResourceList, force bool) (*Result, err } kind := info.Mapping.GroupVersionKind.Kind - c.Log("Created a new %s called %q\n", kind, info.Name) + c.Log("Created a new %s called %q in %s\n", kind, info.Name, info.Namespace) return nil } diff --git a/pkg/kube/resource.go b/pkg/kube/resource.go index 0f2d94f3a..ee8f83a25 100644 --- a/pkg/kube/resource.go +++ b/pkg/kube/resource.go @@ -81,5 +81,5 @@ func (r ResourceList) Intersect(rs ResourceList) ResourceList { // isMatchingInfo returns true if infos match on Name and GroupVersionKind. func isMatchingInfo(a, b *resource.Info) bool { - return a.Name == b.Name && a.Mapping.GroupVersionKind.Kind == b.Mapping.GroupVersionKind.Kind + return a.Name == b.Name && a.Namespace == b.Namespace && a.Mapping.GroupVersionKind.Kind == b.Mapping.GroupVersionKind.Kind }