Let's not mix too many things in here mturansk. I think addon progressive rollout, while planned for this quarter and needed for other purpose, will not bring much for hypershift operator.
Hypershift operator is not an OCM addon itself. The current deployment model is to deploy it as an ACM addon. To allow fast fixes rollouts, an "overrride" configmap can be managed by OSDFM to set the hypershift image and image-tag.
So we end up with
- team interdependencies: hypershift team needs to talk to either ACM and/or OSDFM to deploy something
- progressive rollout challenges for overrides
My proposal in PR 1990 is to give back autonnomy to the hypershift team by relying on as standard as possible app-interface saas deployment mechanisms, allowing progressive rollout:
- hypershift-operator repo generates/contains a template of a SelectorSyncSet which everything that's needed for hypershift operator to run, except specific configs to be delivered via secrets
- a set of app-interface saas-files to configure the deployment of that template onto all hive shards, accross environments and defined sectors
- gated (and automated) promotions through environment and sectors with standard validation Jobs defined in app-interface saas-files. What those jobs do is to be defined, as Alberto mentioned. They can check RHOBS metrics, possibly access management clusters if they run for example on the backplane clusters. They can also access OCM to create HC if that's really what we want.
Such a SSS deployment relies on:
- Labels on Hive ClusterDeployment for the cluster type (we have that already) and the sector (the current PR relies on a region label, but can be changed to whatever)
- Some data in secrets for the AWS region and external-dns txt-owner-id. This data should be provided by OSD FM at setup time only, via CS SyncSet API. OSD FM already provides this info to ACM today here.
- we can optionally set external-dns domain-filter via a secret as well, since the set of Route53 could be changed by an other component like CS
- ACM still needs to register the management clusters as hypershift clusters to enable auto-registration of HostedClusters. I believe that is fine with the current configuration.
- and the validation job definition mentioned above.
Documented in https://docs.google.com/document/d/1pLN7Rekuee3KGcMjnwumgA0QOsJCF2GeirHsmj8ikM4/edit#heading=h.23xqy0q8f8zg