code: func createShortLivedBootstrapToken(client clientset.Interface) (string, error) {
  	tokenStr, err := bootstraputil.GenerateBootstrapToken()
  	if err != nil {
  		return "", errors.Wrap(err, "error generating token to upload certs")
  	}
  	token, err := kubeadmapi.NewBootstrapTokenString(tokenStr)
  	if err != nil {
  		return "", errors.Wrap(err, "error creating upload certs token")
  	}
  	tokens := []kubeadmapi.BootstrapToken{{
  		Token:       token,
  		Description: "Proxy for managing TTL for the kubeadm-certs secret",
  		TTL: &metav1.Duration{
  			Duration: kubeadmconstants.DefaultCertTokenDuration,
  		},
  	}}
  
  	if err := nodebootstraptokenphase.CreateNewTokens(client, tokens); err != nil {
  		return "", errors.Wrap(err, "error creating token")
  	}
  	return tokens[0].Token.ID, nil
  }
docs: // createShortLivedBootstrapToken creates the token used to manager kubeadm-certs
  // and return the tokenID