diff --git a/pkg/app/piped/cloudprovider/kubernetes/kubernetes.go b/pkg/app/piped/cloudprovider/kubernetes/kubernetes.go index 470f609f48..ccc07ec294 100644 --- a/pkg/app/piped/cloudprovider/kubernetes/kubernetes.go +++ b/pkg/app/piped/cloudprovider/kubernetes/kubernetes.go @@ -234,7 +234,7 @@ func (p *provider) ApplyManifest(ctx context.Context, manifest Manifest) error { return p.initErr } - return p.kubectl.Apply(ctx, p.input.Namespace, manifest) + return p.kubectl.Apply(ctx, p.getNamespaceToRun(manifest.Key), manifest) } // Delete deletes the given resource from Kubernetes cluster. @@ -244,7 +244,16 @@ func (p *provider) Delete(ctx context.Context, k ResourceKey) (err error) { return p.initErr } - return p.kubectl.Delete(ctx, p.input.Namespace, k) + return p.kubectl.Delete(ctx, p.getNamespaceToRun(k), k) +} + +// getNamespaceToRun returns namespace used on kubectl apply/delete commands. +// priority: config.KubernetesDeploymentInput > kubernetes.ResourceKey +func (p *provider) getNamespaceToRun(k ResourceKey) string { + if p.input.Namespace != "" { + return p.input.Namespace + } + return k.Namespace } func (p *provider) findKubectl(ctx context.Context, version string) (*Kubectl, error) {