Documentation
¶
Index ¶
- Constants
- func SetDeprecationStatus(ext *ocv1.ClusterExtension, bundleName string, ...)
- func SetStatusCondition(conditions *[]metav1.Condition, condition metav1.Condition)
- type Applier
- type BoxcutterRevisionStatesGetter
- type CatalogCache
- type CatalogCachePopulator
- type ClusterCatalogReconciler
- type ClusterExtensionReconciler
- type ClusterExtensionRevisionReconciler
- type ControllerBuilderOption
- type HelmRevisionStatesGetter
- type RevisionEngine
- type RevisionMetadata
- type RevisionStates
- type RevisionStatesGetter
- type Sourcerer
- type StorageMigrator
Constants ¶
const ( ClusterExtensionCleanupUnpackCacheFinalizer = "olm.operatorframework.io/cleanup-unpack-cache" ClusterExtensionCleanupContentManagerCacheFinalizer = "olm.operatorframework.io/cleanup-contentmanager-cache" )
const (
ClusterExtensionRevisionOwnerLabel = "olm.operatorframework.io/owner"
)
Variables ¶
This section is empty.
Functions ¶
func SetDeprecationStatus ¶
func SetDeprecationStatus(ext *ocv1.ClusterExtension, bundleName string, deprecation *declcfg.Deprecation)
SetDeprecationStatus will set the appropriate deprecation statuses for a ClusterExtension based on the provided bundle
Types ¶
type Applier ¶
type Applier interface {
// Apply applies the content in the provided fs.FS using the configuration of the provided ClusterExtension.
// It also takes in a map[string]string to be applied to all applied resources as labels and another
// map[string]string used to create a unique identifier for a stored reference to the resources created.
Apply(context.Context, fs.FS, *ocv1.ClusterExtension, map[string]string, map[string]string) (bool, string, error)
}
type BoxcutterRevisionStatesGetter ¶
func (*BoxcutterRevisionStatesGetter) GetRevisionStates ¶
func (d *BoxcutterRevisionStatesGetter) GetRevisionStates(ctx context.Context, ext *ocv1.ClusterExtension) (*RevisionStates, error)
type CatalogCache ¶
type CatalogCachePopulator ¶
type ClusterCatalogReconciler ¶
type ClusterCatalogReconciler struct {
client.Client
CatalogCache CatalogCache
CatalogCachePopulator CatalogCachePopulator
}
ClusterCatalogReconciler reconciles a ClusterCatalog object
func (*ClusterCatalogReconciler) SetupWithManager ¶
func (r *ClusterCatalogReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type ClusterExtensionReconciler ¶
type ClusterExtensionReconciler struct {
client.Client
Resolver resolve.Resolver
ImageCache imageutil.Cache
ImagePuller imageutil.Puller
StorageMigrator StorageMigrator
Applier Applier
RevisionStatesGetter RevisionStatesGetter
Finalizers crfinalizer.Finalizers
}
ClusterExtensionReconciler reconciles a ClusterExtension object
func (*ClusterExtensionReconciler) Reconcile ¶
func (r *ClusterExtensionReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)
The operator controller needs to watch all the bundle objects and reconcile accordingly. Though not ideal, but these permissions are required. This has been taken from rukpak, and an issue was created before to discuss it: https://github.com/operator-framework/rukpak/issues/800.
func (*ClusterExtensionReconciler) SetupWithManager ¶
func (r *ClusterExtensionReconciler) SetupWithManager(mgr ctrl.Manager, opts ...ControllerBuilderOption) (crcontroller.Controller, error)
SetupWithManager sets up the controller with the Manager.
type ClusterExtensionRevisionReconciler ¶
type ClusterExtensionRevisionReconciler struct {
Client client.Client
RevisionEngine RevisionEngine
TrackingCache trackingCache
}
ClusterExtensionRevisionReconciler actions individual snapshots of ClusterExtensions, as part of the boxcutter integration.
func (*ClusterExtensionRevisionReconciler) SetupWithManager ¶
func (c *ClusterExtensionRevisionReconciler) SetupWithManager(mgr ctrl.Manager) error
type ControllerBuilderOption ¶
func WithOwns ¶
func WithOwns(obj client.Object) ControllerBuilderOption
type HelmRevisionStatesGetter ¶
type HelmRevisionStatesGetter struct {
helmclient.ActionClientGetter
}
func (*HelmRevisionStatesGetter) GetRevisionStates ¶
func (d *HelmRevisionStatesGetter) GetRevisionStates(ctx context.Context, ext *ocv1.ClusterExtension) (*RevisionStates, error)
type RevisionEngine ¶
type RevisionEngine interface {
Teardown(ctx context.Context, rev machinerytypes.Revision, opts ...machinerytypes.RevisionTeardownOption) (machinery.RevisionTeardownResult, error)
Reconcile(ctx context.Context, rev machinerytypes.Revision, opts ...machinerytypes.RevisionReconcileOption) (machinery.RevisionResult, error)
}
type RevisionMetadata ¶
type RevisionMetadata struct {
Package string
Image string
ocv1.BundleMetadata
}
type RevisionStates ¶
type RevisionStates struct {
Installed *RevisionMetadata
RollingOut []*RevisionMetadata
}
type RevisionStatesGetter ¶
type RevisionStatesGetter interface {
GetRevisionStates(ctx context.Context, ext *ocv1.ClusterExtension) (*RevisionStates, error)
}