From 296a5641554aae3dcc01e4483498dab556d4aab0 Mon Sep 17 00:00:00 2001 From: Natasha Sarkar Date: Thu, 16 Sep 2021 11:46:58 -0700 Subject: [PATCH] deprecate some fn commands --- cmd/config/internal/commands/cmdwrap.go | 8 ++++++++ cmd/config/internal/commands/cmdxargs.go | 7 +++++++ cmd/config/internal/commands/sink.go | 9 +++++++++ cmd/config/internal/commands/source.go | 8 ++++++++ 4 files changed, 32 insertions(+) diff --git a/cmd/config/internal/commands/cmdwrap.go b/cmd/config/internal/commands/cmdwrap.go index ed4ae939024..8727446d9ee 100644 --- a/cmd/config/internal/commands/cmdwrap.go +++ b/cmd/config/internal/commands/cmdwrap.go @@ -5,6 +5,7 @@ package commands import ( "bytes" + "fmt" "io" "os" "path/filepath" @@ -47,6 +48,7 @@ Environment Variables: `, RunE: r.runE, + PreRunE: r.preRunE, SilenceUsage: true, FParseErrWhitelist: cobra.FParseErrWhitelist{UnknownFlags: true}, Args: cobra.MinimumNArgs(1), @@ -78,6 +80,12 @@ func WrapCommand() *cobra.Command { return GetWrapRunner().Command } +func (r *WrapRunner) preRunE(_ *cobra.Command, _ []string) error { + _, err := fmt.Fprintln(os.Stderr, `Command "wrap" is deprecated, this will no longer be available in kustomize v5. +See discussion in https://github.com/kubernetes-sigs/kustomize/issues/3953.`) + return err +} + func (r *WrapRunner) runE(c *cobra.Command, args []string) error { if r.getEnv == nil { r.getEnv = os.Getenv diff --git a/cmd/config/internal/commands/cmdxargs.go b/cmd/config/internal/commands/cmdxargs.go index ff00aa77ddb..0c7daeec733 100644 --- a/cmd/config/internal/commands/cmdxargs.go +++ b/cmd/config/internal/commands/cmdxargs.go @@ -60,6 +60,7 @@ $ kyaml cat pkg/ --function-config config.yaml --wrap-kind ResourceList | kyaml `, RunE: r.runE, + PreRunE: r.preRunE, SilenceUsage: true, FParseErrWhitelist: cobra.FParseErrWhitelist{UnknownFlags: true}, Args: cobra.MinimumNArgs(1), @@ -84,6 +85,12 @@ func XArgsCommand() *cobra.Command { return GetXArgsRunner().Command } +func (r *XArgsRunner) preRunE(_ *cobra.Command, _ []string) error { + _, err := fmt.Fprintln(os.Stderr, `Command "xargs" is deprecated, this will no longer be available in kustomize v5. +See discussion in https://github.com/kubernetes-sigs/kustomize/issues/3953.`) + return err +} + func (r *XArgsRunner) runE(c *cobra.Command, _ []string) error { if len(r.Args) == 0 { r.Args = os.Args diff --git a/cmd/config/internal/commands/sink.go b/cmd/config/internal/commands/sink.go index 9c2c6cd1398..1d34c31689b 100644 --- a/cmd/config/internal/commands/sink.go +++ b/cmd/config/internal/commands/sink.go @@ -4,7 +4,9 @@ package commands import ( + "fmt" "github.com/spf13/cobra" + "os" "sigs.k8s.io/kustomize/cmd/config/internal/generateddocs/commands" "sigs.k8s.io/kustomize/cmd/config/runner" "sigs.k8s.io/kustomize/kyaml/kio" @@ -20,6 +22,7 @@ func GetSinkRunner(name string) *SinkRunner { Long: commands.SinkLong, Example: commands.SinkExamples, RunE: r.runE, + PreRunE: r.preRunE, Args: cobra.MaximumNArgs(1), } runner.FixDocs(name, c) @@ -36,6 +39,12 @@ type SinkRunner struct { Command *cobra.Command } +func (r *SinkRunner) preRunE(c *cobra.Command, args []string) error { + _, err := fmt.Fprintln(os.Stderr, `Command "sink" is deprecated, this will no longer be available in kustomize v5. +See discussion in https://github.com/kubernetes-sigs/kustomize/issues/3953.`) + return err +} + func (r *SinkRunner) runE(c *cobra.Command, args []string) error { var outputs []kio.Writer if len(args) == 1 { diff --git a/cmd/config/internal/commands/source.go b/cmd/config/internal/commands/source.go index 935552503a0..bce021dea6f 100644 --- a/cmd/config/internal/commands/source.go +++ b/cmd/config/internal/commands/source.go @@ -5,6 +5,7 @@ package commands import ( "fmt" + "os" "github.com/spf13/cobra" "sigs.k8s.io/kustomize/cmd/config/internal/generateddocs/commands" @@ -22,6 +23,7 @@ func GetSourceRunner(name string) *SourceRunner { Long: commands.SourceLong, Example: commands.SourceExamples, RunE: r.runE, + PreRunE: r.preRunE, } runner.FixDocs(name, c) c.Flags().StringVar(&r.WrapKind, "wrap-kind", kio.ResourceListKind, @@ -47,6 +49,12 @@ type SourceRunner struct { Command *cobra.Command } +func (r *SourceRunner) preRunE(c *cobra.Command, args []string) error { + _, err := fmt.Fprintln(os.Stderr, `Command "source" is deprecated, this will no longer be available in kustomize v5. +See discussion in https://github.com/kubernetes-sigs/kustomize/issues/3953.`) + return err +} + func (r *SourceRunner) runE(c *cobra.Command, args []string) error { // if there is a function-config specified, emit it var functionConfig *yaml.RNode