Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the olm v1alpha1 API group +kubebuilder:object:generate=true +groupName=olm.operatorframework.io
Index ¶
Constants ¶
const ( // TODO(user): add more Types, here and into init() TypeInstalled = "Installed" TypeResolved = "Resolved" // TypeDeprecated is a rollup condition that is present when // any of the deprecated conditions are present. TypeDeprecated = "Deprecated" TypePackageDeprecated = "PackageDeprecated" TypeChannelDeprecated = "ChannelDeprecated" TypeBundleDeprecated = "BundleDeprecated" TypeUnpacked = "Unpacked" ReasonErrorGettingClient = "ErrorGettingClient" ReasonBundleLoadFailed = "BundleLoadFailed" ReasonInstallationFailed = "InstallationFailed" ReasonResolutionFailed = "ResolutionFailed" ReasonSuccess = "Success" ReasonDeprecated = "Deprecated" ReasonUpgradeFailed = "UpgradeFailed" ReasonUnpackSuccess = "UnpackSuccess" ReasonUnpackFailed = "UnpackFailed" ReasonErrorGettingReleaseState = "ErrorGettingReleaseState" )
Variables ¶
var ( ClusterExtensionGVK = SchemeBuilder.GroupVersion.WithKind("ClusterExtension") ClusterExtensionKind = ClusterExtensionGVK.Kind )
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "olm.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 BundleMetadata ¶ added in v0.10.0
func (*BundleMetadata) DeepCopy ¶ added in v0.10.0
func (in *BundleMetadata) DeepCopy() *BundleMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleMetadata.
func (*BundleMetadata) DeepCopyInto ¶ added in v0.10.0
func (in *BundleMetadata) DeepCopyInto(out *BundleMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CRDUpgradeSafetyPreflightConfig ¶ added in v0.11.0
type CRDUpgradeSafetyPreflightConfig struct {
//+kubebuilder:Required
// Disabled represents the state of the CRD upgrade safety preflight check being disabled/enabled.
Disabled bool `json:"disabled,omitempty"`
}
CRDUpgradeSafetyPreflightConfig is the configuration for CRD upgrade safety preflight check.
func (*CRDUpgradeSafetyPreflightConfig) DeepCopy ¶ added in v0.11.0
func (in *CRDUpgradeSafetyPreflightConfig) DeepCopy() *CRDUpgradeSafetyPreflightConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CRDUpgradeSafetyPreflightConfig.
func (*CRDUpgradeSafetyPreflightConfig) DeepCopyInto ¶ added in v0.11.0
func (in *CRDUpgradeSafetyPreflightConfig) DeepCopyInto(out *CRDUpgradeSafetyPreflightConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterExtension ¶ added in v0.9.0
type ClusterExtension struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ClusterExtensionSpec `json:"spec,omitempty"`
Status ClusterExtensionStatus `json:"status,omitempty"`
}
ClusterExtension is the Schema for the clusterextensions API
func (*ClusterExtension) DeepCopy ¶ added in v0.9.0
func (in *ClusterExtension) DeepCopy() *ClusterExtension
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterExtension.
func (*ClusterExtension) DeepCopyInto ¶ added in v0.9.0
func (in *ClusterExtension) DeepCopyInto(out *ClusterExtension)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterExtension) DeepCopyObject ¶ added in v0.9.0
func (in *ClusterExtension) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterExtensionList ¶ added in v0.9.0
type ClusterExtensionList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ClusterExtension `json:"items"`
}
ClusterExtensionList contains a list of ClusterExtension
func (*ClusterExtensionList) DeepCopy ¶ added in v0.9.0
func (in *ClusterExtensionList) DeepCopy() *ClusterExtensionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterExtensionList.
func (*ClusterExtensionList) DeepCopyInto ¶ added in v0.9.0
func (in *ClusterExtensionList) DeepCopyInto(out *ClusterExtensionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterExtensionList) DeepCopyObject ¶ added in v0.9.0
func (in *ClusterExtensionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterExtensionSpec ¶ added in v0.9.0
type ClusterExtensionSpec struct {
//+kubebuilder:validation:MaxLength:=48
//+kubebuilder:validation:Pattern:=^[a-z0-9]+(-[a-z0-9]+)*$
PackageName string `json:"packageName"`
//+kubebuilder:validation:MaxLength:=64
//+kubebuilder:validation:Pattern=`^(\s*(=||!=|>|<|>=|=>|<=|=<|~|~>|\^)\s*(v?(0|[1-9]\d*|[x|X|\*])(\.(0|[1-9]\d*|x|X|\*]))?(\.(0|[1-9]\d*|x|X|\*))?(-([0-9A-Za-z\-]+(\.[0-9A-Za-z\-]+)*))?(\+([0-9A-Za-z\-]+(\.[0-9A-Za-z\-]+)*))?)\s*)((?:\s+|,\s*|\s*\|\|\s*)(=||!=|>|<|>=|=>|<=|=<|~|~>|\^)\s*(v?(0|[1-9]\d*|x|X|\*])(\.(0|[1-9]\d*|x|X|\*))?(\.(0|[1-9]\d*|x|X|\*]))?(-([0-9A-Za-z\-]+(\.[0-9A-Za-z\-]+)*))?(\+([0-9A-Za-z\-]+(\.[0-9A-Za-z\-]+)*))?)\s*)*$`
//+kubebuilder:Optional
// Version is an optional semver constraint on the package version. If not specified, the latest version available of the package will be installed.
// If specified, the specific version of the package will be installed so long as it is available in any of the content sources available.
// Examples: 1.2.3, 1.0.0-alpha, 1.0.0-rc.1
//
// For more information on semver, please see https://semver.org/
Version string `json:"version,omitempty"`
//+kubebuilder:validation:MaxLength:=48
//+kubebuilder:validation:Pattern:=^[a-z0-9]+([\.-][a-z0-9]+)*$
// Channel constraint definition
Channel string `json:"channel,omitempty"`
//+kubebuilder:validation:Enum:=Enforce;Ignore
//+kubebuilder:default:=Enforce
//+kubebuilder:Optional
//
// Defines the policy for how to handle upgrade constraints
UpgradeConstraintPolicy UpgradeConstraintPolicy `json:"upgradeConstraintPolicy,omitempty"`
//+kubebuilder:validation:Pattern:=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
//+kubebuilder:validation:MaxLength:=63
//+kubebuilder:validation:XValidation:rule="self == oldSelf",message="installNamespace is immutable"
//
// installNamespace is the namespace where the bundle should be installed. However, note that
// the bundle may contain resources that are cluster-scoped or that are
// installed in a different namespace. This namespace is expected to exist.
InstallNamespace string `json:"installNamespace"`
//+kubebuilder:Optional
// Preflight defines the configuration of preflight checks.
Preflight *PreflightConfig `json:"preflight,omitempty"`
// ServiceAccount is used to install and manage resources.
// The service account is expected to exist in the InstallNamespace.
ServiceAccount ServiceAccountReference `json:"serviceAccount"`
}
ClusterExtensionSpec defines the desired state of ClusterExtension
func (*ClusterExtensionSpec) DeepCopy ¶ added in v0.9.0
func (in *ClusterExtensionSpec) DeepCopy() *ClusterExtensionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterExtensionSpec.
func (*ClusterExtensionSpec) DeepCopyInto ¶ added in v0.9.0
func (in *ClusterExtensionSpec) DeepCopyInto(out *ClusterExtensionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterExtensionStatus ¶ added in v0.9.0
type ClusterExtensionStatus struct {
// InstalledBundle should only be modified when a new bundle is successfully installed. This ensures that if there
// is a previously successfully installed a bundle, and an upgrade fails, it is still communicated that there is
// still a bundle that is currently installed and owned by the ClusterExtension.
// +optional
InstalledBundle *BundleMetadata `json:"installedBundle,omitempty"`
// +optional
ResolvedBundle *BundleMetadata `json:"resolvedBundle,omitempty"`
// +patchMergeKey=type
// +patchStrategy=merge
// +listType=map
// +listMapKey=type
Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
}
ClusterExtensionStatus defines the observed state of ClusterExtension.
func (*ClusterExtensionStatus) DeepCopy ¶ added in v0.9.0
func (in *ClusterExtensionStatus) DeepCopy() *ClusterExtensionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterExtensionStatus.
func (*ClusterExtensionStatus) DeepCopyInto ¶ added in v0.9.0
func (in *ClusterExtensionStatus) DeepCopyInto(out *ClusterExtensionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PreflightConfig ¶ added in v0.11.0
type PreflightConfig struct {
//+kubebuilder:Required
// CRDUpgradeSafety holds necessary configuration for the CRD Upgrade Safety preflight checks.
CRDUpgradeSafety *CRDUpgradeSafetyPreflightConfig `json:"crdUpgradeSafety,omitempty"`
}
PreflightConfig holds the configuration for the preflight checks.
func (*PreflightConfig) DeepCopy ¶ added in v0.11.0
func (in *PreflightConfig) DeepCopy() *PreflightConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreflightConfig.
func (*PreflightConfig) DeepCopyInto ¶ added in v0.11.0
func (in *PreflightConfig) DeepCopyInto(out *PreflightConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceAccountReference ¶ added in v0.12.0
type ServiceAccountReference struct {
// name is the metadata.name of the referenced serviceAccount object.
//+kubebuilder:validation:MaxLength:=253
//+kubebuilder:validation:Pattern:=^[a-z0-9]+([.|-][a-z0-9]+)*$
//+kubebuilder:validation:XValidation:rule="self == oldSelf",message="name is immutable"
Name string `json:"name"`
}
ServiceAccountReference references a serviceAccount.
func (*ServiceAccountReference) DeepCopy ¶ added in v0.12.0
func (in *ServiceAccountReference) DeepCopy() *ServiceAccountReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccountReference.
func (*ServiceAccountReference) DeepCopyInto ¶ added in v0.12.0
func (in *ServiceAccountReference) DeepCopyInto(out *ServiceAccountReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UpgradeConstraintPolicy ¶ added in v0.7.0
type UpgradeConstraintPolicy string
const ( // The extension will only upgrade if the new version satisfies // the upgrade constraints set by the package author. UpgradeConstraintPolicyEnforce UpgradeConstraintPolicy = "Enforce" // Unsafe option which allows an extension to be // upgraded or downgraded to any available version of the package and // ignore the upgrade path designed by package authors. // This assumes that users independently verify the outcome of the changes. // Use with caution as this can lead to unknown and potentially // disastrous results such as data loss. UpgradeConstraintPolicyIgnore UpgradeConstraintPolicy = "Ignore" )