From 4a0ac33dccda1575955879eb18b9c39b36be16a4 Mon Sep 17 00:00:00 2001 From: Abirdcfly Date: Wed, 18 Aug 2021 18:44:08 +0800 Subject: [PATCH] fix kn trigger list command to show correct v1/service sink output (#1428) * fix kn trigger list command to show correct v1/service sink output * Update pkg/kn/commands/flags/sink.go Co-authored-by: Murugappan Chetty Co-authored-by: Murugappan Chetty --- pkg/kn/commands/flags/sink.go | 2 +- pkg/kn/commands/flags/sink_test.go | 7 +++++++ pkg/kn/commands/source/duck/multisourcelist_test.go | 5 +++-- pkg/kn/commands/source/list_test.go | 5 +++-- 4 files changed, 14 insertions(+), 5 deletions(-) diff --git a/pkg/kn/commands/flags/sink.go b/pkg/kn/commands/flags/sink.go index ec008c344..e0cabb6ec 100644 --- a/pkg/kn/commands/flags/sink.go +++ b/pkg/kn/commands/flags/sink.go @@ -149,7 +149,7 @@ func parseSink(sink string) (string, string, string) { // SinkToString prepares a sink for list output func SinkToString(sink duckv1.Destination) string { if sink.Ref != nil { - if sink.Ref.Kind == "Service" { + if sink.Ref.Kind == "Service" && strings.HasPrefix(sink.Ref.APIVersion, sinkMappings["ksvc"].Group) { return fmt.Sprintf("ksvc:%s", sink.Ref.Name) } else { return fmt.Sprintf("%s:%s", strings.ToLower(sink.Ref.Kind), sink.Ref.Name) diff --git a/pkg/kn/commands/flags/sink_test.go b/pkg/kn/commands/flags/sink_test.go index 5564a6812..3f63529d0 100644 --- a/pkg/kn/commands/flags/sink_test.go +++ b/pkg/kn/commands/flags/sink_test.go @@ -194,6 +194,13 @@ func TestSinkToString(t *testing.T) { Name: "default"}} expected = "broker:default" assert.Equal(t, expected, SinkToString(sink)) + sink = duckv1.Destination{ + Ref: &duckv1.KReference{Kind: "Service", + APIVersion: "v1", + Namespace: "my-namespace", + Name: "mysvc"}} + expected = "service:mysvc" + assert.Equal(t, expected, SinkToString(sink)) uri := "http://target.example.com" targetExampleCom, err := apis.ParseURL(uri) diff --git a/pkg/kn/commands/source/duck/multisourcelist_test.go b/pkg/kn/commands/source/duck/multisourcelist_test.go index 1e2fc5073..dad6c43fc 100644 --- a/pkg/kn/commands/source/duck/multisourcelist_test.go +++ b/pkg/kn/commands/source/duck/multisourcelist_test.go @@ -83,8 +83,9 @@ func newSourceUnstructuredObjWithSink(name, apiVersion, kind string) *unstructur "spec": map[string]interface{}{ "sink": map[string]interface{}{ "ref": map[string]interface{}{ - "kind": "Service", - "name": "foo", + "apiVersion": "serving.knative.dev/v1", + "kind": "Service", + "name": "foo", }, }, }, diff --git a/pkg/kn/commands/source/list_test.go b/pkg/kn/commands/source/list_test.go index ce7c2fe83..387444412 100644 --- a/pkg/kn/commands/source/list_test.go +++ b/pkg/kn/commands/source/list_test.go @@ -188,8 +188,9 @@ func newSourceUnstructuredObj(name, apiVersion, kind string) *unstructured.Unstr "spec": map[string]interface{}{ "sink": map[string]interface{}{ "ref": map[string]interface{}{ - "kind": "Service", - "name": "foo", + "apiVersion": "serving.knative.dev/v1", + "kind": "Service", + "name": "foo", }, }, },