From 5c8d4bb3803a467c38bd752e00ee3070be458b4c Mon Sep 17 00:00:00 2001 From: Daniel Lenar Date: Thu, 5 Jan 2023 13:55:39 -0600 Subject: [PATCH] Use label selector for filtering out resources when pruning. Matches same behavior as for kubectl apply Signed-off-by: Daniel Lenar Kubernetes-commit: d53af227870a8e4434a0bf2f58770ec4dbec241f --- pkg/cmd/diff/diff.go | 2 +- pkg/cmd/diff/prune.go | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pkg/cmd/diff/diff.go b/pkg/cmd/diff/diff.go index 16e74ef8..d33e95cf 100644 --- a/pkg/cmd/diff/diff.go +++ b/pkg/cmd/diff/diff.go @@ -659,7 +659,7 @@ func (o *DiffOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args []str if err != nil { return err } - o.pruner = newPruner(o.DynamicClient, mapper, resources) + o.pruner = newPruner(o.DynamicClient, mapper, resources, o.Selector) } o.Builder = f.NewBuilder() diff --git a/pkg/cmd/diff/prune.go b/pkg/cmd/diff/prune.go index ffb37a2e..ef77fac8 100644 --- a/pkg/cmd/diff/prune.go +++ b/pkg/cmd/diff/prune.go @@ -40,13 +40,14 @@ type pruner struct { resources []prune.Resource } -func newPruner(dc dynamic.Interface, m meta.RESTMapper, r []prune.Resource) *pruner { +func newPruner(dc dynamic.Interface, m meta.RESTMapper, r []prune.Resource, selector string) *pruner { return &pruner{ visitedUids: sets.NewString(), visitedNamespaces: sets.NewString(), dynamicClient: dc, mapper: m, resources: r, + labelSelector: selector, } }