Interface KubernetesClusterProvider.ServerGroupUpdateFacet

Enclosing interface:
KubernetesClusterProvider

public static interface KubernetesClusterProvider.ServerGroupUpdateFacet
Implement this facet to reconcile cluster-level state after a server group is updated — most commonly to swap node ComputeServerTypes and layouts when a cluster transitions between managed and unmanaged, and to regenerate API credentials as a result. The host service invokes this facet after the inherited core update has run.

This is the seam currently represented by updateServerGroup (EKS, AKS, GKE), where each managed offering reassigns its own provider-specific master/worker types.

When this facet returns success and the cluster is now managed, the host service enqueues a serverGroupRefresh job so any regenerated credentials are picked up immediately — the facet does not need to (and cannot) trigger that refresh itself.

  • Method Details

    • updateServerGroup

      ServiceResponse updateServerGroup(ComputeServerGroup cluster, Map opts)
      Reconcile cluster-level state after a server group update. Runs after the inherited core update. A managed offering typically swaps the master/worker ComputeServerTypes (and the cluster layout/type set) between their managed and unmanaged variants, reconciles any namespace-pool ResourcePermission, and, when switching to managed, clears the cluster service token so credentials are regenerated on the follow-up refresh.
      Parameters:
      cluster - the cluster that was updated
      opts - the update options that were applied
      Returns:
      a ServiceResponse indicating success or failure