From 8d2ef8eb50273b61c8dec9002fc3548a692d3725 Mon Sep 17 00:00:00 2001 From: AllenZMC Date: Tue, 15 Mar 2022 23:13:35 +0800 Subject: [PATCH] Implement flags grouping for karmada-aggregated-apiserver Signed-off-by: AllenZMC Implement flags grouping for karmada-aggregated-apiserver Signed-off-by: AllenZMC --- .../app/aggregated-apiserver.go | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/cmd/aggregated-apiserver/app/aggregated-apiserver.go b/cmd/aggregated-apiserver/app/aggregated-apiserver.go index 04c976a54ef0..c6719da4415f 100644 --- a/cmd/aggregated-apiserver/app/aggregated-apiserver.go +++ b/cmd/aggregated-apiserver/app/aggregated-apiserver.go @@ -2,12 +2,15 @@ package app import ( "context" - "flag" "os" "github.com/spf13/cobra" + cliflag "k8s.io/component-base/cli/flag" + "k8s.io/component-base/term" "github.com/karmada-io/karmada/cmd/aggregated-apiserver/app/options" + "github.com/karmada-io/karmada/pkg/sharedcli" + "github.com/karmada-io/karmada/pkg/sharedcli/klogflag" "github.com/karmada-io/karmada/pkg/version/sharedcommand" ) @@ -32,8 +35,20 @@ func NewAggregatedApiserverCommand(ctx context.Context) *cobra.Command { }, } - opts.AddFlags(cmd.Flags()) + fss := cliflag.NamedFlagSets{} + + genericFlagSet := fss.FlagSet("generic") + opts.AddFlags(genericFlagSet) + + // Set klog flags + logsFlagSet := fss.FlagSet("logs") + klogflag.Add(logsFlagSet) + cmd.AddCommand(sharedcommand.NewCmdVersion(os.Stdout, "karmada-aggregated-apiserver")) - cmd.Flags().AddGoFlagSet(flag.CommandLine) + cmd.Flags().AddFlagSet(genericFlagSet) + cmd.Flags().AddFlagSet(logsFlagSet) + + cols, _, _ := term.TerminalSize(cmd.OutOrStdout()) + sharedcli.SetUsageAndHelpFunc(cmd, fss, cols) return cmd }