From c610e3a3645ccf4b1abde77bc4ad5e64cbd3bc3d Mon Sep 17 00:00:00 2001 From: Donny Xia Date: Mon, 16 Nov 2020 17:18:56 -0800 Subject: [PATCH 1/2] Add command to list builtin plugins --- api/konfig/plugins.go | 13 +++++++++ kustomize/internal/commands/edit/all.go | 2 ++ .../commands/edit/listbuiltin/listbuiltin.go | 29 +++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100644 kustomize/internal/commands/edit/listbuiltin/listbuiltin.go diff --git a/api/konfig/plugins.go b/api/konfig/plugins.go index a42e5e296..157975860 100644 --- a/api/konfig/plugins.go +++ b/api/konfig/plugins.go @@ -9,6 +9,7 @@ import ( "runtime" "sigs.k8s.io/kustomize/api/filesys" + "sigs.k8s.io/kustomize/api/internal/plugins/builtinhelpers" "sigs.k8s.io/kustomize/api/types" ) @@ -157,3 +158,15 @@ func pwdEnv() string { } return "PWD" } + +// GetBuiltinPluginNames returns a list of builtin plugin names +func GetBuiltinPluginNames() []string { + var ret []string + for k := range builtinhelpers.GeneratorFactories { + ret = append(ret, k.String()) + } + for k := range builtinhelpers.TransformerFactories { + ret = append(ret, k.String()) + } + return ret +} diff --git a/kustomize/internal/commands/edit/all.go b/kustomize/internal/commands/edit/all.go index 61f24bdce..c43a98cd4 100644 --- a/kustomize/internal/commands/edit/all.go +++ b/kustomize/internal/commands/edit/all.go @@ -11,6 +11,7 @@ import ( "sigs.k8s.io/kustomize/api/loader" "sigs.k8s.io/kustomize/kustomize/v3/internal/commands/edit/add" "sigs.k8s.io/kustomize/kustomize/v3/internal/commands/edit/fix" + "sigs.k8s.io/kustomize/kustomize/v3/internal/commands/edit/listbuiltin" "sigs.k8s.io/kustomize/kustomize/v3/internal/commands/edit/remove" "sigs.k8s.io/kustomize/kustomize/v3/internal/commands/edit/set" ) @@ -46,6 +47,7 @@ func NewCmdEdit( v), fix.NewCmdFix(fSys), remove.NewCmdRemove(fSys, v), + listbuiltin.NewCmdListBuiltinPlugin(), ) return c } diff --git a/kustomize/internal/commands/edit/listbuiltin/listbuiltin.go b/kustomize/internal/commands/edit/listbuiltin/listbuiltin.go new file mode 100644 index 000000000..6cfca685a --- /dev/null +++ b/kustomize/internal/commands/edit/listbuiltin/listbuiltin.go @@ -0,0 +1,29 @@ +// Copyright 2020 The Kubernetes Authors. +// SPDX-License-Identifier: Apache-2.0 + +package listbuiltin + +import ( + "fmt" + + "github.com/spf13/cobra" + "sigs.k8s.io/kustomize/api/konfig" +) + +// NewCmdListBuiltinPlugin return an instance of list-builtin-plugin +// subcommand +func NewCmdListBuiltinPlugin() *cobra.Command { + cmd := &cobra.Command{ + Use: "list-builtin-plugin", + Short: "List the builtin plugins", + Long: "", + Run: func(cmd *cobra.Command, args []string) { + plugins := konfig.GetBuiltinPluginNames() + fmt.Print("Builtin plugins:\n\n") + for _, p := range plugins { + fmt.Printf(" * %s\n", p) + } + }, + } + return cmd +} From a12db91a106c51c3421d59ec5cc4785a03be1f7e Mon Sep 17 00:00:00 2001 From: Donny Xia Date: Wed, 18 Nov 2020 09:38:03 -0800 Subject: [PATCH 2/2] mark the list-builtin command alpha --- kustomize/internal/commands/edit/listbuiltin/listbuiltin.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kustomize/internal/commands/edit/listbuiltin/listbuiltin.go b/kustomize/internal/commands/edit/listbuiltin/listbuiltin.go index 6cfca685a..2ba481c56 100644 --- a/kustomize/internal/commands/edit/listbuiltin/listbuiltin.go +++ b/kustomize/internal/commands/edit/listbuiltin/listbuiltin.go @@ -14,8 +14,8 @@ import ( // subcommand func NewCmdListBuiltinPlugin() *cobra.Command { cmd := &cobra.Command{ - Use: "list-builtin-plugin", - Short: "List the builtin plugins", + Use: "alpha-list-builtin-plugin", + Short: "[Alpha] List the builtin plugins", Long: "", Run: func(cmd *cobra.Command, args []string) { plugins := konfig.GetBuiltinPluginNames()