This repository was archived by the owner on Mar 3, 2025. It is now read-only.

Description
We took another look at the existing fields in the API and came up with a set of changes which would enhance clarity and reduce complexity of the types.
- Instead of using
unionDiscriminator directives + validations for discriminated unions, use CEL expressions, similar to: https://github.com/operator-framework/operator-controller/blob/75bb03dda3a49a2b6813243fee7152886f8919b8/api/v1alpha1/clusterextension_types.go#L80
- delete
config/base/crd/patches/catalog_validation.yaml
- delete
ClusterCatalogStatus.ObservedGeneration and uses. In a future effort we will want to evaluate new-available-content by comparing new/last hashes, so this is the wrong direction.
- enum validation statement for
CatalogSource.SourceType should use the field name Image instead of the JSON name
- remove
omitempty from ClusterCatalogSpec.Priority so that printcols will display '0' when defaulting
- use
ResolvedImageSource.Ref instead of ResolvedRef, and delete ResolvedRef
- delete
ResolvedImageSource.LastUnpacked as this duplicates tracking in the root (and redirect any references to use the root)
- rename
status.source.image.lastPollAttempt as lastSuccessfulPollAttempt to clarify intent