in pkg/clusters/clusters.go [106:117]
func (m *clusterMigrator) Validate(ctx context.Context) error {
_, valid := getVersions(m.serverConfig, m.releaseChannel, ControlPlane)
if err := isUpgrade(m.resolvedDesiredControlPlaneVersion, m.cluster.CurrentMasterVersion, valid, true); err != nil {
return fmt.Errorf("validation error for Cluster %s: %w", m.ResourcePath(), err)
}
log.Infof("Upgrade for Cluster %s is valid; desired: %q (%s), current: %s",
m.ResourcePath(), m.opts.DesiredControlPlaneVersion, m.resolvedDesiredControlPlaneVersion, m.cluster.CurrentMasterVersion)
log.Infof("Validate NodePool upgrade(s) for Cluster %s", m.ResourcePath())
sem := make(chan struct{}, m.opts.ConcurrentNodePools)
return migrate.Validate(ctx, sem, m.children...)
}