refine the cluster-machines-ready machine readiness criteria, take status.nodeRef into account
I've observed the following case during a rolling update:
$ k get machines
NAME CLUSTER NODENAME PROVIDERID PHASE AGE VERSION
management-cluster-control-plane-fjjrd management-cluster openstack:///1e5574bd-f26d-4acb-8820-861520a4acac Provisioned 36m v1.28.8
management-cluster-control-plane-jrrmc management-cluster management-cluster-cp-6731d2e4cd-7xdzw openstack:///7c0b626a-0d8d-472b-ada0-4bafa754f744 Running 166m v1.28.8
management-cluster-control-plane-ssn88 management-cluster management-cluster-cp-6731d2e4cd-vfths openstack:///66402fb4-b146-458b-bf45-5933f800d012 Running 166m v1.28.8
management-cluster-control-plane-vffnk management-cluster management-cluster-cp-6731d2e4cd-dr5ln openstack:///4be7fb33-8dac-47e6-b332-0de67cb9d027 Running 46m v1.28
This illustrates that to confirm that a machine is fully ready, we should also check for nodeRef.name.
Edited by Thomas Morin