code: func controlPlaneNodesReady(client clientset.Interface) error {
  	selector := labels.SelectorFromSet(labels.Set(map[string]string{
  		constants.LabelNodeRoleMaster: "",
  	}))
  	controlPlanes, err := client.CoreV1().Nodes().List(metav1.ListOptions{
  		LabelSelector: selector.String(),
  	})
  	if err != nil {
  		return errors.Wrap(err, "couldn't list control-planes in cluster")
  	}
  
  	if len(controlPlanes.Items) == 0 {
  		return errors.New("failed to find any nodes with a control-plane role")
  	}
  
  	notReadyControlPlanes := getNotReadyNodes(controlPlanes.Items)
  	if len(notReadyControlPlanes) != 0 {
  		return errors.Errorf("there are NotReady control-planes in the cluster: %v", notReadyControlPlanes)
  	}
  	return nil
  }
docs: // controlPlaneNodesReady checks whether all control-plane Nodes in the cluster are in the Running state