v1alpha1

package
v0.12.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 26, 2024 License: Apache-2.0 Imports: 4 Imported by: 2

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the core v1alpha1 API group +kubebuilder:object:generate=true +groupName=catalogd.operatorframework.io

Index

Constants

View Source
const (
	SourceTypeImage SourceType = "image"

	TypeUnpacked = "Unpacked"
	TypeDelete   = "Delete"

	ReasonUnpackPending       = "UnpackPending"
	ReasonUnpacking           = "Unpacking"
	ReasonUnpackSuccessful    = "UnpackSuccessful"
	ReasonUnpackFailed        = "UnpackFailed"
	ReasonStorageFailed       = "FailedToStore"
	ReasonStorageDeleteFailed = "FailedToDelete"

	PhasePending   = "Pending"
	PhaseUnpacking = "Unpacking"
	PhaseFailing   = "Failing"
	PhaseUnpacked  = "Unpacked"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "catalogd.operatorframework.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type Catalog

type Catalog struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   CatalogSpec   `json:"spec,omitempty"`
	Status CatalogStatus `json:"status,omitempty"`
}

Catalog is the Schema for the Catalogs API

func (*Catalog) DeepCopy

func (in *Catalog) DeepCopy() *Catalog

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Catalog.

func (*Catalog) DeepCopyInto

func (in *Catalog) DeepCopyInto(out *Catalog)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Catalog) DeepCopyObject

func (in *Catalog) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CatalogList

type CatalogList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []Catalog `json:"items"`
}

CatalogList contains a list of Catalog

func (*CatalogList) DeepCopy

func (in *CatalogList) DeepCopy() *CatalogList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CatalogList.

func (*CatalogList) DeepCopyInto

func (in *CatalogList) DeepCopyInto(out *CatalogList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CatalogList) DeepCopyObject

func (in *CatalogList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CatalogSource

type CatalogSource struct {
	// Type defines the kind of Catalog content being sourced.
	// +kubebuilder:validation:Enum=image
	Type SourceType `json:"type"`
	// Image is the catalog image that backs the content of this catalog.
	Image *ImageSource `json:"image,omitempty"`
}

CatalogSource contains the sourcing information for a Catalog

func (*CatalogSource) DeepCopy

func (in *CatalogSource) DeepCopy() *CatalogSource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CatalogSource.

func (*CatalogSource) DeepCopyInto

func (in *CatalogSource) DeepCopyInto(out *CatalogSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CatalogSpec

type CatalogSpec struct {
	// Source is the source of a Catalog that contains Operators' metadata in the FBC format
	// https://olm.operatorframework.io/docs/reference/file-based-catalogs/#docs
	Source CatalogSource `json:"source"`
}

CatalogSpec defines the desired state of Catalog +kubebuilder:validation:XValidation:rule="!has(self.source.image.pollInterval) || (self.source.image.ref.find('@sha256:') == \"\")",message="cannot specify PollInterval while using digest-based image"

func (*CatalogSpec) DeepCopy

func (in *CatalogSpec) DeepCopy() *CatalogSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CatalogSpec.

func (*CatalogSpec) DeepCopyInto

func (in *CatalogSpec) DeepCopyInto(out *CatalogSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CatalogStatus

type CatalogStatus struct {
	// Conditions store the status conditions of the Catalog instances
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`

	// ResolvedSource contains information about the resolved source
	ResolvedSource *ResolvedCatalogSource `json:"resolvedSource,omitempty"`
	// Phase represents a human-readable status of resolution of the content source.
	// It is not appropriate to use for business logic determination.
	Phase string `json:"phase,omitempty"`
	// ContentURL is a cluster-internal address that on-cluster components
	// can read the content of a catalog from
	ContentURL string `json:"contentURL,omitempty"`
	// observedGeneration is the most recent generation observed for this Catalog. It corresponds to the
	// Catalog's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

CatalogStatus defines the observed state of Catalog

func (*CatalogStatus) DeepCopy

func (in *CatalogStatus) DeepCopy() *CatalogStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CatalogStatus.

func (*CatalogStatus) DeepCopyInto

func (in *CatalogStatus) DeepCopyInto(out *CatalogStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ImageSource

type ImageSource struct {
	// Ref contains the reference to a container image containing Catalog contents.
	Ref string `json:"ref"`
	// PullSecret contains the name of the image pull secret in the namespace that catalogd is deployed.
	PullSecret string `json:"pullSecret,omitempty"`
	// PollInterval indicates the interval at which the image source should be polled for new content,
	// specified as a duration (e.g., "5m", "1h", "24h", "etc".). Note that PollInterval may not be
	// specified for a catalog image referenced by a sha256 digest.
	// +kubebuilder:validation:Format:=duration
	PollInterval *metav1.Duration `json:"pollInterval,omitempty"`
	// InsecureSkipTLSVerify indicates that TLS certificate validation should be skipped.
	// If this option is specified, the HTTPS protocol will still be used to
	// fetch the specified image reference.
	// This should not be used in a production environment.
	// +optional
	InsecureSkipTLSVerify bool `json:"insecureSkipTLSVerify,omitempty"`
}

ImageSource contains information required for sourcing a Catalog from an OCI image

func (*ImageSource) DeepCopy

func (in *ImageSource) DeepCopy() *ImageSource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageSource.

func (*ImageSource) DeepCopyInto

func (in *ImageSource) DeepCopyInto(out *ImageSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResolvedCatalogSource added in v0.8.0

type ResolvedCatalogSource struct {
	// Type defines the kind of Catalog content that was sourced.
	Type SourceType `json:"type"`
	// Image is the catalog image that backs the content of this catalog.
	Image *ResolvedImageSource `json:"image,omitempty"`
}

ResolvedCatalogSource contains the information about a sourced Catalog

func (*ResolvedCatalogSource) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResolvedCatalogSource.

func (*ResolvedCatalogSource) DeepCopyInto added in v0.8.0

func (in *ResolvedCatalogSource) DeepCopyInto(out *ResolvedCatalogSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResolvedImageSource added in v0.8.0

type ResolvedImageSource struct {
	// Ref contains the reference to a container image containing Catalog contents.
	Ref string `json:"ref"`
	// ResolvedRef contains the resolved sha256 image ref containing Catalog contents.
	ResolvedRef string `json:"resolvedRef"`
	// LastPollAtempt is the time when the source resolved was last polled for new content.
	LastPollAttempt metav1.Time `json:"lastPollAttempt"`
	// pullSecret exists to retain compatibility with the existing v1alpha1 APIs. It will be removed in v1alpha2.
	PullSecret string `json:"pullSecret,omitempty"`
}

ResolvedImageSource contains information about the sourced Catalog

func (*ResolvedImageSource) DeepCopy added in v0.8.0

func (in *ResolvedImageSource) DeepCopy() *ResolvedImageSource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResolvedImageSource.

func (*ResolvedImageSource) DeepCopyInto added in v0.8.0

func (in *ResolvedImageSource) DeepCopyInto(out *ResolvedImageSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SourceType

type SourceType string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL