From 4b5ec542ad0c81d1ddb6a320bce98fe02b43257b Mon Sep 17 00:00:00 2001 From: Kurnia D Win Date: Thu, 15 May 2025 17:32:06 +0700 Subject: [PATCH] feat: kubectl debug: add label for debugger pod Kubernetes-commit: e9fcdabcf5072de662d9c02f83df5f0ac80c2a43 --- pkg/cmd/debug/debug.go | 5 ++++- pkg/cmd/debug/debug_test.go | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) diff --git a/pkg/cmd/debug/debug.go b/pkg/cmd/debug/debug.go index 8df40aefa..5a24dfd5f 100644 --- a/pkg/cmd/debug/debug.go +++ b/pkg/cmd/debug/debug.go @@ -76,7 +76,7 @@ var ( * Node: Create a new pod that runs in the node's host namespaces and can access the node's filesystem. - Note: When a non-root user is configured for the entire target Pod, some capabilities granted + Note: When a non-root user is configured for the entire target Pod, some capabilities granted by debug profile may not work. `)) @@ -727,6 +727,9 @@ func (o *DebugOptions) generateNodeDebugPod(node *corev1.Node) (*corev1.Pod, err p := &corev1.Pod{ ObjectMeta: metav1.ObjectMeta{ Name: pn, + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ diff --git a/pkg/cmd/debug/debug_test.go b/pkg/cmd/debug/debug_test.go index 4fbfbaead..cec08b796 100644 --- a/pkg/cmd/debug/debug_test.go +++ b/pkg/cmd/debug/debug_test.go @@ -1468,6 +1468,9 @@ func TestGenerateNodeDebugPod(t *testing.T) { expected: &corev1.Pod{ ObjectMeta: metav1.ObjectMeta{ Name: "node-debugger-node-XXX-1", + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ @@ -1522,6 +1525,9 @@ func TestGenerateNodeDebugPod(t *testing.T) { expected: &corev1.Pod{ ObjectMeta: metav1.ObjectMeta{ Name: "node-debugger-node-XXX-1", + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ @@ -1578,6 +1584,9 @@ func TestGenerateNodeDebugPod(t *testing.T) { expected: &corev1.Pod{ ObjectMeta: metav1.ObjectMeta{ Name: "node-debugger-node-XXX-1", + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ @@ -1631,6 +1640,9 @@ func TestGenerateNodeDebugPod(t *testing.T) { expected: &corev1.Pod{ ObjectMeta: metav1.ObjectMeta{ Name: "node-debugger-node-XXX-1", + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ @@ -1683,6 +1695,9 @@ func TestGenerateNodeDebugPod(t *testing.T) { expected: &corev1.Pod{ ObjectMeta: metav1.ObjectMeta{ Name: "node-debugger-node-XXX-1", + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ @@ -1723,6 +1738,9 @@ func TestGenerateNodeDebugPod(t *testing.T) { expected: &corev1.Pod{ ObjectMeta: metav1.ObjectMeta{ Name: "node-debugger-node-XXX-1", + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ @@ -1771,6 +1789,9 @@ func TestGenerateNodeDebugPod(t *testing.T) { expected: &corev1.Pod{ ObjectMeta: metav1.ObjectMeta{ Name: "node-debugger-node-XXX-1", + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ @@ -1863,6 +1884,9 @@ func TestGenerateNodeDebugPodCustomProfile(t *testing.T) { expected: &corev1.Pod{ ObjectMeta: metav1.ObjectMeta{ Name: "node-debugger-node-XXX-1", + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ @@ -1916,6 +1940,9 @@ func TestGenerateNodeDebugPodCustomProfile(t *testing.T) { expected: &corev1.Pod{ ObjectMeta: metav1.ObjectMeta{ Name: "node-debugger-node-XXX-1", + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ @@ -1972,6 +1999,11 @@ func TestGenerateNodeDebugPodCustomProfile(t *testing.T) { }, }, expected: &corev1.Pod{ + ObjectMeta: metav1.ObjectMeta{ + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, + }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ { @@ -2035,6 +2067,11 @@ func TestGenerateNodeDebugPodCustomProfile(t *testing.T) { }, }, expected: &corev1.Pod{ + ObjectMeta: metav1.ObjectMeta{ + Labels: map[string]string{ + "app.kubernetes.io/managed-by": "kubectl-debug", + }, + }, Spec: corev1.PodSpec{ Containers: []corev1.Container{ {