mirror of https://github.com/k3s-io/k3s
Merge pull request #74780 from pytimer/kubeadm-reduce
kubeadm: reduce some functions number of parameterspull/564/head
commit
1f6ea0455b
|
@ -140,7 +140,7 @@ func NewCmdInit(out io.Writer, initOptions *initOptions) *cobra.Command {
|
|||
// adds flags to the init command
|
||||
// init command local flags could be eventually inherited by the sub-commands automatically generated for phases
|
||||
AddInitConfigFlags(cmd.Flags(), initOptions.externalcfg, &initOptions.featureGatesString)
|
||||
AddInitOtherFlags(cmd.Flags(), &initOptions.cfgPath, &initOptions.skipTokenPrint, &initOptions.dryRun, &initOptions.uploadCerts, &initOptions.ignorePreflightErrors)
|
||||
AddInitOtherFlags(cmd.Flags(), initOptions)
|
||||
initOptions.bto.AddTokenFlag(cmd.Flags())
|
||||
initOptions.bto.AddTTLFlag(cmd.Flags())
|
||||
options.AddImageMetaFlags(cmd.Flags(), &initOptions.externalcfg.ImageRepository)
|
||||
|
@ -225,27 +225,22 @@ func AddInitConfigFlags(flagSet *flag.FlagSet, cfg *kubeadmapiv1beta1.InitConfig
|
|||
|
||||
// AddInitOtherFlags adds init flags that are not bound to a configuration file to the given flagset
|
||||
// Note: All flags that are not bound to the cfg object should be allowed in cmd/kubeadm/app/apis/kubeadm/validation/validation.go
|
||||
func AddInitOtherFlags(
|
||||
flagSet *flag.FlagSet,
|
||||
cfgPath *string,
|
||||
skipTokenPrint, dryRun, uploadCerts *bool,
|
||||
ignorePreflightErrors *[]string,
|
||||
) {
|
||||
options.AddConfigFlag(flagSet, cfgPath)
|
||||
func AddInitOtherFlags(flagSet *flag.FlagSet, initOptions *initOptions) {
|
||||
options.AddConfigFlag(flagSet, &initOptions.cfgPath)
|
||||
flagSet.StringSliceVar(
|
||||
ignorePreflightErrors, options.IgnorePreflightErrors, *ignorePreflightErrors,
|
||||
&initOptions.ignorePreflightErrors, options.IgnorePreflightErrors, initOptions.ignorePreflightErrors,
|
||||
"A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks.",
|
||||
)
|
||||
flagSet.BoolVar(
|
||||
skipTokenPrint, options.SkipTokenPrint, *skipTokenPrint,
|
||||
&initOptions.skipTokenPrint, options.SkipTokenPrint, initOptions.skipTokenPrint,
|
||||
"Skip printing of the default bootstrap token generated by 'kubeadm init'.",
|
||||
)
|
||||
flagSet.BoolVar(
|
||||
dryRun, options.DryRun, *dryRun,
|
||||
&initOptions.dryRun, options.DryRun, initOptions.dryRun,
|
||||
"Don't apply any changes; just output what would be done.",
|
||||
)
|
||||
flagSet.BoolVar(
|
||||
uploadCerts, options.UploadCerts, *uploadCerts,
|
||||
&initOptions.uploadCerts, options.UploadCerts, initOptions.uploadCerts,
|
||||
"Upload certfificates to kubeadm-certs secret.",
|
||||
)
|
||||
}
|
||||
|
@ -476,8 +471,8 @@ func (d *initData) Tokens() []string {
|
|||
return tokens
|
||||
}
|
||||
|
||||
func printJoinCommand(out io.Writer, adminKubeConfigPath, token, key string, skipTokenPrint, uploadCerts bool) error {
|
||||
joinCommand, err := cmdutil.GetJoinCommand(adminKubeConfigPath, token, key, skipTokenPrint, uploadCerts)
|
||||
func printJoinCommand(out io.Writer, adminKubeConfigPath, token string, i *initData) error {
|
||||
joinCommand, err := cmdutil.GetJoinCommand(adminKubeConfigPath, token, i.certificateKey, i.skipTokenPrint, i.uploadCerts)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -496,7 +491,7 @@ func showJoinCommand(i *initData, out io.Writer) error {
|
|||
|
||||
// Prints the join command, multiple times in case the user has multiple tokens
|
||||
for _, token := range i.Tokens() {
|
||||
if err := printJoinCommand(out, adminKubeConfigPath, token, i.certificateKey, i.skipTokenPrint, i.uploadCerts); err != nil {
|
||||
if err := printJoinCommand(out, adminKubeConfigPath, token, i); err != nil {
|
||||
return errors.Wrap(err, "failed to print join command")
|
||||
}
|
||||
}
|
||||
|
|
|
@ -195,7 +195,7 @@ func NewCmdJoin(out io.Writer, joinOptions *joinOptions) *cobra.Command {
|
|||
}
|
||||
|
||||
addJoinConfigFlags(cmd.Flags(), joinOptions.externalcfg)
|
||||
addJoinOtherFlags(cmd.Flags(), &joinOptions.cfgPath, &joinOptions.ignorePreflightErrors, &joinOptions.controlPlane, &joinOptions.token, &joinOptions.certificateKey)
|
||||
addJoinOtherFlags(cmd.Flags(), joinOptions)
|
||||
|
||||
joinRunner.AppendPhase(phases.NewPreflightPhase())
|
||||
joinRunner.AppendPhase(phases.NewControlPlanePreparePhase())
|
||||
|
@ -257,32 +257,25 @@ func addJoinConfigFlags(flagSet *flag.FlagSet, cfg *kubeadmapiv1beta1.JoinConfig
|
|||
}
|
||||
|
||||
// addJoinOtherFlags adds join flags that are not bound to a configuration file to the given flagset
|
||||
func addJoinOtherFlags(
|
||||
flagSet *flag.FlagSet,
|
||||
cfgPath *string,
|
||||
ignorePreflightErrors *[]string,
|
||||
controlPlane *bool,
|
||||
token *string,
|
||||
certificateKey *string,
|
||||
) {
|
||||
func addJoinOtherFlags(flagSet *flag.FlagSet, joinOptions *joinOptions) {
|
||||
flagSet.StringVar(
|
||||
cfgPath, options.CfgPath, *cfgPath,
|
||||
&joinOptions.cfgPath, options.CfgPath, joinOptions.cfgPath,
|
||||
"Path to kubeadm config file.",
|
||||
)
|
||||
flagSet.StringSliceVar(
|
||||
ignorePreflightErrors, options.IgnorePreflightErrors, *ignorePreflightErrors,
|
||||
&joinOptions.ignorePreflightErrors, options.IgnorePreflightErrors, joinOptions.ignorePreflightErrors,
|
||||
"A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks.",
|
||||
)
|
||||
flagSet.StringVar(
|
||||
token, options.TokenStr, "",
|
||||
&joinOptions.token, options.TokenStr, "",
|
||||
"Use this token for both discovery-token and tls-bootstrap-token when those values are not provided.",
|
||||
)
|
||||
flagSet.BoolVar(
|
||||
controlPlane, options.ControlPlane, *controlPlane,
|
||||
&joinOptions.controlPlane, options.ControlPlane, joinOptions.controlPlane,
|
||||
"Create a new control plane instance on this node",
|
||||
)
|
||||
flagSet.StringVar(
|
||||
certificateKey, options.CertificateKey, "",
|
||||
&joinOptions.certificateKey, options.CertificateKey, "",
|
||||
"Use this key to decrypt the certificate secrets uploaded by init.",
|
||||
)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue