Skip to content

API Reference

Packages

olm.operatorframework.io/core

Package api is the internal version of the API.

olm.operatorframework.io/v1alpha1

Package v1alpha1 contains API Schema definitions for the core v1alpha1 API group

Resource Types

CatalogSource

CatalogSource is a discriminated union of possible sources for a Catalog. CatalogSource contains the sourcing information for a Catalog

Appears in: - ClusterCatalogSpec

Field Description Default Validation
type SourceType type is a required reference to the type of source the catalog is sourced from.

Allowed values are ["Image"]

When this field is set to "Image", the ClusterCatalog content will be sourced from an OCI image.
When using an image source, the image field must be set and must be the only field defined for this type.
Enum: [Image]
Required: {}
image ImageSource image is used to configure how catalog contents are sourced from an OCI image. This field must be set when type is set to "Image" and must be the only field defined for this type.

ClusterCatalog

ClusterCatalog enables users to make File-Based Catalog (FBC) catalog data available to the cluster. For more information on FBC, see https://olm.operatorframework.io/docs/reference/file-based-catalogs/#docs

Appears in: - ClusterCatalogList

Field Description Default Validation
apiVersion string olm.operatorframework.io/v1alpha1
kind string ClusterCatalog
kind string Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec ClusterCatalogSpec
status ClusterCatalogStatus

ClusterCatalogList

ClusterCatalogList contains a list of ClusterCatalog

Field Description Default Validation
apiVersion string olm.operatorframework.io/v1alpha1
kind string ClusterCatalogList
kind string Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items ClusterCatalog array

ClusterCatalogSpec

ClusterCatalogSpec defines the desired state of ClusterCatalog

Appears in: - ClusterCatalog

Field Description Default Validation
source CatalogSource source is a required field that allows the user to define the source of a Catalog that contains catalog metadata in the File-Based Catalog (FBC) format.

Below is a minimal example of a ClusterCatalogSpec that sources a catalog from an image:

source:
type: Image
image:
ref: quay.io/operatorhubio/catalog:latest

For more information on FBC, see https://olm.operatorframework.io/docs/reference/file-based-catalogs/#docs
priority integer priority is an optional field that allows the user to define a priority for a ClusterCatalog.
A ClusterCatalog's priority is used by clients as a tie-breaker between ClusterCatalogs that meet the client's requirements.
For example, in the case where multiple ClusterCatalogs provide the same bundle.
A higher number means higher priority. Negative number as also accepted.
When omitted, the default priority is 0.
0

ClusterCatalogStatus

ClusterCatalogStatus defines the observed state of ClusterCatalog

Appears in: - ClusterCatalog

Field Description Default Validation
conditions Condition array conditions is a representation of the current state for this ClusterCatalog.
The status is represented by a set of "conditions".

Each condition is generally structured in the following format:
- Type: a string representation of the condition type. More or less the condition "name".
- Status: a string representation of the state of the condition. Can be one of ["True", "False", "Unknown"].
- Reason: a string representation of the reason for the current state of the condition. Typically useful for building automation around particular Type+Reason combinations.
- Message: a human-readable message that further elaborates on the state of the condition.

The current set of condition types are:
- "Unpacked", epresents whether, or not, the catalog contents have been successfully unpacked.
- "Deleted", represents whether, or not, the catalog contents have been successfully deleted.

The current set of reasons are:
- "UnpackPending", this reason is set on the "Unpack" condition when unpacking the catalog has not started.
- "Unpacking", this reason is set on the "Unpack" condition when the catalog is being unpacked.
- "UnpackSuccessful", this reason is set on the "Unpack" condition when unpacking the catalog is successful and the catalog metadata is available to the cluster.
- "FailedToStore", this reason is set on the "Unpack" condition when an error has been encountered while storing the contents of the catalog.
- "FailedToDelete", this reason is set on the "Delete" condition when an error has been encountered while deleting the contents of the catalog.
resolvedSource ResolvedCatalogSource resolvedSource contains information about the resolved source based on the source type.

Below is an example of a resolved source for an image source:
resolvedSource:

image:
lastPollAttempt: "2024-09-10T12:22:13Z"
lastUnpacked: "2024-09-10T12:22:13Z"
ref: quay.io/operatorhubio/catalog:latest
resolvedRef: quay.io/operatorhubio/catalog@sha256:c7392b4be033da629f9d665fec30f6901de51ce3adebeff0af579f311ee5cf1b
type: Image
contentURL string contentURL is a cluster-internal URL from which on-cluster components
can read the content of a catalog
lastUnpacked Time lastUnpacked represents the time when the
ClusterCatalog object was last unpacked successfully.

ImageSource

ImageSource enables users to define the information required for sourcing a Catalog from an OCI image

Appears in: - CatalogSource

Field Description Default Validation
ref string ref is a required field that allows the user to define the reference to a container image containing Catalog contents.
Examples:
ref: quay.io/operatorhubio/catalog:latest # image reference
ref: quay.io/operatorhubio/catalog@sha256:c7392b4be033da629f9d665fec30f6901de51ce3adebeff0af579f311ee5cf1b # image reference with sha256 digest
pollInterval Duration pollInterval is an optional field that allows the user to set the interval at which the image source should be polled for new content.
It must be specified as a duration.
It must not be specified for a catalog image referenced by a sha256 digest.
Examples:
pollInterval: 1h # poll the image source every hour
pollInterval: 30m # poll the image source every 30 minutes
pollInterval: 1h30m # poll the image source every 1 hour and 30 minutes

When omitted, the image will not be polled for new content.
Format: duration

ResolvedCatalogSource

ResolvedCatalogSource is a discriminated union of resolution information for a Catalog. ResolvedCatalogSource contains the information about a sourced Catalog

Appears in: - ClusterCatalogStatus

Field Description Default Validation
type SourceType type is a reference to the type of source the catalog is sourced from.

It will be set to one of the following values: ["Image"].

When this field is set to "Image", information about the resolved image source will be set in the 'image' field.
Enum: [Image]
Required: {}
image ResolvedImageSource image is a field containing resolution information for a catalog sourced from an image.

ResolvedImageSource

ResolvedImageSource provides information about the resolved source of a Catalog sourced from an image.

Appears in: - ResolvedCatalogSource

Field Description Default Validation
ref string ref contains the resolved sha256 image ref containing Catalog contents.
lastSuccessfulPollAttempt Time lastSuccessfulPollAttempt is the time when the resolved source was last successfully polled for new content.

SourceType

Underlying type: string

SourceType defines the type of source used for catalogs.

Appears in: - CatalogSource - ResolvedCatalogSource

Field Description
Image