From 16d54ee18ba7f1f0bf16f56ca4862598a1a32d7e Mon Sep 17 00:00:00 2001 From: Chok Yip Lau Date: Thu, 25 Mar 2021 16:54:44 -0400 Subject: [PATCH] Added BinaryData description to kubectl describe Kubernetes-commit: cc28c6dba4d703f3ced1cb32394597252483b8bb --- pkg/describe/describe.go | 6 ++++++ pkg/describe/describe_test.go | 12 +++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/pkg/describe/describe.go b/pkg/describe/describe.go index 2f9f4c69..35d13705 100644 --- a/pkg/describe/describe.go +++ b/pkg/describe/describe.go @@ -4298,6 +4298,12 @@ func (d *ConfigMapDescriber) Describe(namespace, name string, describerSettings w.Write(LEVEL_0, "%s:\n----\n", k) w.Write(LEVEL_0, "%s\n", string(v)) } + w.Write(LEVEL_0, "\nBinaryData\n====\n") + for k, v := range configMap.BinaryData { + w.Write(LEVEL_0, "%s: %s bytes\n", k, strconv.Itoa(len(v))) + } + w.Write(LEVEL_0, "\n") + if describerSettings.ShowEvents { events, err := searchEvents(d.CoreV1(), configMap, describerSettings.ChunkSize) if err != nil { diff --git a/pkg/describe/describe_test.go b/pkg/describe/describe_test.go index 2bb74e78..0d046cda 100644 --- a/pkg/describe/describe_test.go +++ b/pkg/describe/describe_test.go @@ -284,6 +284,10 @@ func TestDescribeConfigMap(t *testing.T) { "key1": "value1", "key2": "value2", }, + BinaryData: map[string][]byte{ + "binarykey1": {0xFF, 0xFE, 0xFD, 0xFC, 0xFB}, + "binarykey2": {0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA}, + }, }) c := &describeClient{T: t, Namespace: "foo", Interface: fake} d := ConfigMapDescriber{c} @@ -291,7 +295,13 @@ func TestDescribeConfigMap(t *testing.T) { if err != nil { t.Errorf("unexpected error: %v", err) } - if !strings.Contains(out, "foo") || !strings.Contains(out, "mycm") || !strings.Contains(out, "key1") || !strings.Contains(out, "value1") || !strings.Contains(out, "key2") || !strings.Contains(out, "value2") { + if !strings.Contains(out, "foo") || !strings.Contains(out, "mycm") { + t.Errorf("unexpected out: %s", out) + } + if !strings.Contains(out, "key1") || !strings.Contains(out, "value1") || !strings.Contains(out, "key2") || !strings.Contains(out, "value2") { + t.Errorf("unexpected out: %s", out) + } + if !strings.Contains(out, "binarykey1") || !strings.Contains(out, "5 bytes") || !strings.Contains(out, "binarykey2") || !strings.Contains(out, "6 bytes") { t.Errorf("unexpected out: %s", out) } }