From cfb0c5efade5fe0a755657de1c55bb20c463c3ce Mon Sep 17 00:00:00 2001 From: jregan Date: Tue, 23 Apr 2019 23:16:23 -0700 Subject: [PATCH] Make plugin dir match Go conventions. --- examples/kvSourceGoPlugin.md | 4 ++-- k8sdeps/kv/plugin/registry.go | 2 +- pkg/plugins/compiler_test.go | 16 ++++++++++++++++ pkg/plugins/execplugin_test.go | 2 +- pkg/plugins/loader_test.go | 5 +++-- pkg/target/chartinflatorexecplugin_test.go | 8 ++++---- pkg/target/generatorplugin_test.go | 4 ++-- .../v1 => plugin/builtin}/ChartInflatorExec | 0 .../v1 => plugin/builtin}/SecretGenerator.go | 0 .../someteam.example.com/v1/ConfigMapGenerator | 0 .../someteam.example.com/v1/DatePrefixer.go | 0 .../someteam.example.com/v1/PrintWorkDir | 0 .../someteam.example.com/v1/SedTransformer | 0 .../someteam.example.com/v1/ServiceGenerator.go | 0 .../someteam.example.com/v1/StringPrefixer.go | 0 .../someteam.example.com/v1/kvMaker.go | 0 16 files changed, 29 insertions(+), 12 deletions(-) rename {plugins/kustomize.config.k8s.io/v1 => plugin/builtin}/ChartInflatorExec (100%) rename {plugins/kustomize.config.k8s.io/v1 => plugin/builtin}/SecretGenerator.go (100%) rename {plugins => plugin}/someteam.example.com/v1/ConfigMapGenerator (100%) rename {plugins => plugin}/someteam.example.com/v1/DatePrefixer.go (100%) rename {plugins => plugin}/someteam.example.com/v1/PrintWorkDir (100%) rename {plugins => plugin}/someteam.example.com/v1/SedTransformer (100%) rename {plugins => plugin}/someteam.example.com/v1/ServiceGenerator.go (100%) rename {plugins => plugin}/someteam.example.com/v1/StringPrefixer.go (100%) rename {plugins => plugin}/someteam.example.com/v1/kvMaker.go (100%) diff --git a/examples/kvSourceGoPlugin.md b/examples/kvSourceGoPlugin.md index 76a41d721..d5870687f 100644 --- a/examples/kvSourceGoPlugin.md +++ b/examples/kvSourceGoPlugin.md @@ -210,7 +210,7 @@ Plugins that generate KV pairs for kustomize must be installed at > ``` -> $XDG_CONFIG_HOME/kustomize/plugins/kvSource +> $XDG_CONFIG_HOME/kustomize/plugin/kvSource > ``` `XDG_CONFIG_HOME` is an environment variable @@ -227,7 +227,7 @@ Compile and install the plugin: ``` -kvSources=$DEMO_HOME/kustomize/plugins/kvSources +kvSources=$DEMO_HOME/kustomize/plugin/kvSources mkdir -p $kvSources go build -buildmode plugin \ -o $kvSources/kvMaker.so \ diff --git a/k8sdeps/kv/plugin/registry.go b/k8sdeps/kv/plugin/registry.go index 342692725..0c0274314 100644 --- a/k8sdeps/kv/plugin/registry.go +++ b/k8sdeps/kv/plugin/registry.go @@ -33,7 +33,7 @@ type Registry struct { const ( PluginSymbol = "KustomizePlugin" - PluginRoot = "plugins" + PluginRoot = "plugin" pluginTypeGo = types.PluginType("go") pluginTypeBuiltIn = types.PluginType("builtin") ) diff --git a/pkg/plugins/compiler_test.go b/pkg/plugins/compiler_test.go index b836f6481..990d2b5b0 100644 --- a/pkg/plugins/compiler_test.go +++ b/pkg/plugins/compiler_test.go @@ -36,6 +36,7 @@ func TestCompiler(t *testing.T) { if configRoot != c.ObjRoot() { t.Errorf("unexpected objRoot %s", c.ObjRoot()) } + expectObj := filepath.Join( c.ObjRoot(), "someteam.example.com", "v1", "DatePrefixer.so") @@ -49,6 +50,21 @@ func TestCompiler(t *testing.T) { if !RecentFileExists(expectObj) { t.Errorf("didn't find expected obj file %s", expectObj) } + + expectObj = filepath.Join( + c.ObjRoot(), + "builtin", "", "SecretGenerator.so") + if FileExists(expectObj) { + t.Errorf("obj file should not exist yet: %s", expectObj) + } + err = c.Compile("builtin", "", "SecretGenerator") + if err != nil { + t.Error(err) + } + if !RecentFileExists(expectObj) { + t.Errorf("didn't find expected obj file %s", expectObj) + } + err = os.RemoveAll(c.ObjRoot()) if err != nil { t.Errorf( diff --git a/pkg/plugins/execplugin_test.go b/pkg/plugins/execplugin_test.go index e5f423b13..169865494 100644 --- a/pkg/plugins/execplugin_test.go +++ b/pkg/plugins/execplugin_test.go @@ -53,7 +53,7 @@ s/$BAR/bar/g p.Config(ldr, rf, pluginConfig) - expected := "/kustomize/plugins/someteam.example.com/v1/SedTransformer" + expected := "/kustomize/plugin/someteam.example.com/v1/SedTransformer" if !strings.HasSuffix(p.name, expected) { t.Fatalf("expected suffix '%s', got '%s'", expected, p.name) } diff --git a/pkg/plugins/loader_test.go b/pkg/plugins/loader_test.go index f2faf9438..bc7625f20 100644 --- a/pkg/plugins/loader_test.go +++ b/pkg/plugins/loader_test.go @@ -29,7 +29,8 @@ import ( ) const ( - secretGenerator = `apiVersion: kustomize.config.k8s.io/v1 + secretGenerator = ` +apiVersion: builtin kind: SecretGenerator metadata: name: secretGenerator @@ -59,7 +60,7 @@ func TestLoader(t *testing.T) { defer tc.Reset() tc.BuildGoPlugin( - "kustomize.config.k8s.io", "v1", "SecretGenerator") + "builtin", "", "SecretGenerator") tc.BuildGoPlugin( "someteam.example.com", "v1", "ServiceGenerator") diff --git a/pkg/target/chartinflatorexecplugin_test.go b/pkg/target/chartinflatorexecplugin_test.go index b66803abc..0333d6b8f 100644 --- a/pkg/target/chartinflatorexecplugin_test.go +++ b/pkg/target/chartinflatorexecplugin_test.go @@ -27,7 +27,7 @@ import ( // This is an example of using a helm chart as a base, // inflating it and then customizing it with a nameprefix // applied to all its resources. -// +// // The helm chart used is downloaded from // https://github.com/helm/charts/tree/master/stable/minecraft // with each test run, so it's a bit brittle as that @@ -36,13 +36,13 @@ import ( // This test requires having the helm binary on the PATH. // // TODO: Download and inflate the chart, and check that -// in for the test. +// in for the test. func TestChartInflatorExecPlugin(t *testing.T) { tc := plugintest_test.NewPluginTestEnv(t).Set() defer tc.Reset() tc.BuildExecPlugin( - "kustomize.config.k8s.io", "v1", "ChartInflatorExec") + "builtin", "", "ChartInflatorExec") th := NewKustTestHarnessWithPluginConfig( t, "/app", plugin.ActivePluginConfig()) @@ -53,7 +53,7 @@ namePrefix: LOOOOOOOONG- `) th.writeF("/app/chartInflatorExec.yaml", ` -apiVersion: kustomize.config.k8s.io/v1 +apiVersion: builtin kind: ChartInflatorExec metadata: name: notImportantHere diff --git a/pkg/target/generatorplugin_test.go b/pkg/target/generatorplugin_test.go index b98796203..42810e910 100644 --- a/pkg/target/generatorplugin_test.go +++ b/pkg/target/generatorplugin_test.go @@ -67,7 +67,7 @@ spec: func writeSecretGeneratorConfig(th *KustTestHarness, root string) { th.writeF(filepath.Join(root, "secretGenerator.yaml"), ` -apiVersion: kustomize.config.k8s.io/v1 +apiVersion: builtin kind: SecretGenerator metadata: name: secretGenerator @@ -102,7 +102,7 @@ func TestSecretGenerator(t *testing.T) { defer tc.Reset() tc.BuildGoPlugin( - "kustomize.config.k8s.io", "v1", "SecretGenerator") + "builtin", "", "SecretGenerator") th := NewKustTestHarnessWithPluginConfig( t, "/app", plugin.ActivePluginConfig()) diff --git a/plugins/kustomize.config.k8s.io/v1/ChartInflatorExec b/plugin/builtin/ChartInflatorExec similarity index 100% rename from plugins/kustomize.config.k8s.io/v1/ChartInflatorExec rename to plugin/builtin/ChartInflatorExec diff --git a/plugins/kustomize.config.k8s.io/v1/SecretGenerator.go b/plugin/builtin/SecretGenerator.go similarity index 100% rename from plugins/kustomize.config.k8s.io/v1/SecretGenerator.go rename to plugin/builtin/SecretGenerator.go diff --git a/plugins/someteam.example.com/v1/ConfigMapGenerator b/plugin/someteam.example.com/v1/ConfigMapGenerator similarity index 100% rename from plugins/someteam.example.com/v1/ConfigMapGenerator rename to plugin/someteam.example.com/v1/ConfigMapGenerator diff --git a/plugins/someteam.example.com/v1/DatePrefixer.go b/plugin/someteam.example.com/v1/DatePrefixer.go similarity index 100% rename from plugins/someteam.example.com/v1/DatePrefixer.go rename to plugin/someteam.example.com/v1/DatePrefixer.go diff --git a/plugins/someteam.example.com/v1/PrintWorkDir b/plugin/someteam.example.com/v1/PrintWorkDir similarity index 100% rename from plugins/someteam.example.com/v1/PrintWorkDir rename to plugin/someteam.example.com/v1/PrintWorkDir diff --git a/plugins/someteam.example.com/v1/SedTransformer b/plugin/someteam.example.com/v1/SedTransformer similarity index 100% rename from plugins/someteam.example.com/v1/SedTransformer rename to plugin/someteam.example.com/v1/SedTransformer diff --git a/plugins/someteam.example.com/v1/ServiceGenerator.go b/plugin/someteam.example.com/v1/ServiceGenerator.go similarity index 100% rename from plugins/someteam.example.com/v1/ServiceGenerator.go rename to plugin/someteam.example.com/v1/ServiceGenerator.go diff --git a/plugins/someteam.example.com/v1/StringPrefixer.go b/plugin/someteam.example.com/v1/StringPrefixer.go similarity index 100% rename from plugins/someteam.example.com/v1/StringPrefixer.go rename to plugin/someteam.example.com/v1/StringPrefixer.go diff --git a/plugins/someteam.example.com/v1/kvMaker.go b/plugin/someteam.example.com/v1/kvMaker.go similarity index 100% rename from plugins/someteam.example.com/v1/kvMaker.go rename to plugin/someteam.example.com/v1/kvMaker.go