code: func CreateBootstrapConfigMapIfNotExists(client clientset.Interface, file string) error {
  
  	fmt.Printf("[bootstrap-token] Creating the %q ConfigMap in the %q namespace\n", bootstrapapi.ConfigMapClusterInfo, metav1.NamespacePublic)
  
  	klog.V(1).Infoln("[bootstrap-token] loading admin kubeconfig")
  	adminConfig, err := clientcmd.LoadFromFile(file)
  	if err != nil {
  		return errors.Wrap(err, "failed to load admin kubeconfig")
  	}
  
  	adminCluster := adminConfig.Contexts[adminConfig.CurrentContext].Cluster
  	// Copy the cluster from admin.conf to the bootstrap kubeconfig, contains the CA cert and the server URL
  	klog.V(1).Infoln("[bootstrap-token] copying the cluster from admin.conf to the bootstrap kubeconfig")
  	bootstrapConfig := &clientcmdapi.Config{
  		Clusters: map[string]*clientcmdapi.Cluster{
  			"": adminConfig.Clusters[adminCluster],
  		},
  	}
  	bootstrapBytes, err := clientcmd.Write(*bootstrapConfig)
  	if err != nil {
  		return err
  	}
  
  	// Create or update the ConfigMap in the kube-public namespace
  	klog.V(1).Infoln("[bootstrap-token] creating/updating ConfigMap in kube-public namespace")
  	return apiclient.CreateOrUpdateConfigMap(client, &v1.ConfigMap{
  		ObjectMeta: metav1.ObjectMeta{
  			Name:      bootstrapapi.ConfigMapClusterInfo,
  			Namespace: metav1.NamespacePublic,
  		},
  		Data: map[string]string{
  			bootstrapapi.KubeConfigKey: string(bootstrapBytes),
  		},
  	})
  }
docs: // CreateBootstrapConfigMapIfNotExists creates the kube-public ConfigMap if it doesn't exist already