From 4cb883863feb73ea5353891f905d13e5aa6c4854 Mon Sep 17 00:00:00 2001 From: Yujun Zhang Date: Mon, 9 Sep 2019 15:39:45 +0800 Subject: [PATCH] plugin/go-getter: support urls including `:` --- .../someteam.example.com/v1/gogetter/GoGetter | 2 +- .../v1/gogetter/GoGetter_test.go | 30 +++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/plugin/someteam.example.com/v1/gogetter/GoGetter b/plugin/someteam.example.com/v1/gogetter/GoGetter index efdd566d3..ba164fc77 100755 --- a/plugin/someteam.example.com/v1/gogetter/GoGetter +++ b/plugin/someteam.example.com/v1/gogetter/GoGetter @@ -28,7 +28,7 @@ function parseYaml { local file=$1 while read -r line do - local k=${line%:*} + local k=${line%%:*} local v=${line#*:} local t=${v#"${v%%[![:space:]]*}"} # trim leading space diff --git a/plugin/someteam.example.com/v1/gogetter/GoGetter_test.go b/plugin/someteam.example.com/v1/gogetter/GoGetter_test.go index c7dc97012..7f5fc502c 100644 --- a/plugin/someteam.example.com/v1/gogetter/GoGetter_test.go +++ b/plugin/someteam.example.com/v1/gogetter/GoGetter_test.go @@ -44,6 +44,36 @@ metadata: `) } + +func TestGoGetterUrl(t *testing.T) { + tc := plugins_test.NewEnvForTest(t).Set() + defer tc.Reset() + + tc.BuildExecPlugin( + "someteam.example.com", "v1", "GoGetter") + + th := kusttest_test.NewKustTestPluginHarness(t, "/app") + + m := th.LoadAndRunGenerator(` +apiVersion: someteam.example.com/v1 +kind: GoGetter +metadata: + name: example +url: https://github.com/kustless/kustomize-examples/archive/master.zip +subPath: kustomize-examples-master +`) + + th.AssertActualEqualsExpected(m, ` +apiVersion: v1 +data: + altGreeting: Good Morning! + enableRisky: "false" +kind: ConfigMap +metadata: + name: remote-cm +`) +} + func TestGoGetterCommand(t *testing.T) { tc := plugins_test.NewEnvForTest(t).Set() defer tc.Reset()