operators

package
v0.0.0-...-0efd123 Latest Latest
Warning

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

Go to latest
Published: Apr 15, 2020 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Overview

Package operators contains all resource types of the operators.coreos.com API group.

Index

Constants

View Source
const (
	OperatorGroupAnnotationKey             = "olm.operatorGroup"
	OperatorGroupNamespaceAnnotationKey    = "olm.operatorNamespace"
	OperatorGroupTargetsAnnotationKey      = "olm.targetNamespaces"
	OperatorGroupProvidedAPIsAnnotationKey = "olm.providedAPIs"
)
View Source
const (
	// GroupName is the group name used in this package.
	GroupName = "operators.coreos.com"
	// GroupVersion is the group version used in this package.
	GroupVersion = runtime.APIVersionInternal
)
View Source
const (
	SubscriptionStateNone             = ""
	SubscriptionStateFailed           = "UpgradeFailed"
	SubscriptionStateUpgradeAvailable = "UpgradeAvailable"
	SubscriptionStateUpgradePending   = "UpgradePending"
	SubscriptionStateAtLatest         = "AtLatestKnown"
)
View Source
const (
	// NoCatalogSourcesFound is a reason string for Subscriptions with unhealthy CatalogSources due to none being available.
	NoCatalogSourcesFound = "NoCatalogSourcesFound"

	// AllCatalogSourcesHealthy is a reason string for Subscriptions that transitioned due to all CatalogSources being healthy.
	AllCatalogSourcesHealthy = "AllCatalogSourcesHealthy"

	// CatalogSourcesAdded is a reason string for Subscriptions that transitioned due to CatalogSources being added.
	CatalogSourcesAdded = "CatalogSourcesAdded"

	// CatalogSourcesUpdated is a reason string for Subscriptions that transitioned due to CatalogSource being updated.
	CatalogSourcesUpdated = "CatalogSourcesUpdated"

	// CatalogSourcesDeleted is a reason string for Subscriptions that transitioned due to CatalogSources being removed.
	CatalogSourcesDeleted = "CatalogSourcesDeleted"

	// UnhealthyCatalogSourceFound is a reason string for Subscriptions that transitioned because an unhealthy CatalogSource was found.
	UnhealthyCatalogSourceFound = "UnhealthyCatalogSourceFound"

	// ReferencedInstallPlanNotFound is a reason string for Subscriptions that transitioned due to a referenced InstallPlan not being found.
	ReferencedInstallPlanNotFound = "ReferencedInstallPlanNotFound"

	// InstallPlanNotYetReconciled is a reason string for Subscriptions that transitioned due to a referenced InstallPlan not being reconciled yet.
	InstallPlanNotYetReconciled = "InstallPlanNotYetReconciled"

	// InstallPlanFailed is a reason string for Subscriptions that transitioned due to a referenced InstallPlan failing without setting an explicit failure condition.
	InstallPlanFailed = "InstallPlanFailed"
)
View Source
const CatalogSourceKind = "CatalogSource"

CatalogSourceKind is the PascalCase name of a CatalogSource's kind.

View Source
const ClusterServiceVersionKind = "ClusterServiceVersion"

ClusterServiceVersionKind is the PascalCase name of a CSV's kind.

View Source
const InstallPlanKind = "InstallPlan"

InstallPlanKind is the PascalCase name of an InstallPlan's kind.

View Source
const OperatorGroupKind = "OperatorGroup"

OperatorGroupKind is the PascalCase name of an OperatorGroup's kind.

View Source
const SubscriptionKind = "Subscription"

SubscriptionKind is the PascalCase name of a Subscription's kind.

Variables

View Source
var (
	// SchemeBuilder initializes a scheme builder
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	// AddToScheme is a global function that registers this API group & version to a scheme
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var ErrInvalidInstallPlan = errors.New("the InstallPlan contains invalid data")

ErrInvalidInstallPlan is the error returned by functions that operate on InstallPlans when the InstallPlan does not contain totally valid data.

View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}

SchemeGroupVersion is group version used to register these objects

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type APIResourceReference

type APIResourceReference struct {
	Name    string
	Kind    string
	Version string
}

APIResourceReference is a Kubernetes resource type used by a custom resource

func (*APIResourceReference) DeepCopy

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

func (*APIResourceReference) DeepCopyInto

func (in *APIResourceReference) DeepCopyInto(out *APIResourceReference)

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

type APIServiceDefinitions

type APIServiceDefinitions struct {
	Owned    []APIServiceDescription
	Required []APIServiceDescription
}

APIServiceDefinitions declares all of the extension apis managed or required by an operator being ran by ClusterServiceVersion.

func (*APIServiceDefinitions) DeepCopy

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

func (*APIServiceDefinitions) DeepCopyInto

func (in *APIServiceDefinitions) DeepCopyInto(out *APIServiceDefinitions)

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

type APIServiceDescription

type APIServiceDescription struct {
	Name              string
	Group             string
	Version           string
	Kind              string
	DeploymentName    string
	ContainerPort     int32
	DisplayName       string
	Description       string
	Resources         []APIResourceReference
	StatusDescriptors []StatusDescriptor
	SpecDescriptors   []SpecDescriptor
	ActionDescriptors []ActionDescriptor
}

APIServiceDescription provides details to OLM about apis provided via aggregation

func (*APIServiceDescription) DeepCopy

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

func (*APIServiceDescription) DeepCopyInto

func (in *APIServiceDescription) DeepCopyInto(out *APIServiceDescription)

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

func (APIServiceDescription) GetName

func (d APIServiceDescription) GetName() string

GetName returns the name of an APIService as derived from its group and version.

type ActionDescriptor

type ActionDescriptor struct {
	Path         string
	DisplayName  string
	Description  string
	XDescriptors []string
	Value        json.RawMessage
}

ActionDescriptor describes a declarative action that can be performed on a custom resource instance

func (*ActionDescriptor) DeepCopy

func (in *ActionDescriptor) DeepCopy() *ActionDescriptor

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

func (*ActionDescriptor) DeepCopyInto

func (in *ActionDescriptor) DeepCopyInto(out *ActionDescriptor)

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

type AppLink struct {
	Name string
	URL  string
}

func (*AppLink) DeepCopy

func (in *AppLink) DeepCopy() *AppLink

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

func (*AppLink) DeepCopyInto

func (in *AppLink) DeepCopyInto(out *AppLink)

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

type Approval

type Approval string

Approval is the user approval policy for an InstallPlan.

const (
	ApprovalAutomatic Approval = "Automatic"
	ApprovalManual    Approval = "Manual"
)

type BundleLookup

type BundleLookup struct {
	// Path refers to the location of a bundle to pull.
	// It's typically an image reference.
	Path string
	// Identifier is the catalog-unique name of the operator (the name of the CSV for bundles that contain CSVs)
	Identifier string
	// Replaces is the name of the bundle to replace with the one found at Path.
	Replaces string
	// CatalogSourceRef is a reference to the CatalogSource the bundle path was resolved from.
	CatalogSourceRef *corev1.ObjectReference
	// Conditions represents the overall state of a BundleLookup.
	// +optional
	Conditions []BundleLookupCondition
}

BundleLookup is a request to pull and unpackage the content of a bundle to the cluster.

func (*BundleLookup) DeepCopy

func (in *BundleLookup) DeepCopy() *BundleLookup

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

func (*BundleLookup) DeepCopyInto

func (in *BundleLookup) DeepCopyInto(out *BundleLookup)

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

func (BundleLookup) GetCondition

func (b BundleLookup) GetCondition(conditionType BundleLookupConditionType) BundleLookupCondition

GetCondition returns the BundleLookupCondition of the given type if it exists in the BundleLookup's Conditions. Returns a condition of the given type with a ConditionStatus of "Unknown" if not found.

func (*BundleLookup) RemoveCondition

func (b *BundleLookup) RemoveCondition(conditionType BundleLookupConditionType)

RemoveCondition removes the BundleLookupCondition of the given type from the BundleLookup's Conditions if it exists.

func (*BundleLookup) SetCondition

SetCondition replaces the existing BundleLookupCondition of the same type, or adds it if it was not found.

type BundleLookupCondition

type BundleLookupCondition struct {
	// Type of condition.
	Type BundleLookupConditionType
	// Status of the condition, one of True, False, Unknown.
	Status corev1.ConditionStatus
	// The reason for the condition's last transition.
	// +optional
	Reason string
	// A human readable message indicating details about the transition.
	// +optional
	Message string
	// Last time the condition was probed
	// +optional
	LastUpdateTime *metav1.Time
	// Last time the condition transitioned from one status to another.
	// +optional
	LastTransitionTime *metav1.Time
}

func (*BundleLookupCondition) DeepCopy

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

func (*BundleLookupCondition) DeepCopyInto

func (in *BundleLookupCondition) DeepCopyInto(out *BundleLookupCondition)

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

type BundleLookupConditionType

type BundleLookupConditionType string

BundleLookupConditionType is a category of the overall state of a BundleLookup.

const (
	// BundleLookupPending describes BundleLookups that are not complete.
	BundleLookupPending BundleLookupConditionType = "BundleLookupPending"
)

type CRDDescription

type CRDDescription struct {
	Name              string
	Version           string
	Kind              string
	DisplayName       string
	Description       string
	Resources         []APIResourceReference
	StatusDescriptors []StatusDescriptor
	SpecDescriptors   []SpecDescriptor
	ActionDescriptors []ActionDescriptor
}

CRDDescription provides details to OLM about the CRDs

func (*CRDDescription) DeepCopy

func (in *CRDDescription) DeepCopy() *CRDDescription

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

func (*CRDDescription) DeepCopyInto

func (in *CRDDescription) DeepCopyInto(out *CRDDescription)

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

type CatalogSource

type CatalogSource struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   CatalogSourceSpec
	Status CatalogSourceStatus
}

CatalogSource is a repository of CSVs, CRDs, and operator packages.

func (*CatalogSource) Address

func (c *CatalogSource) Address() string

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.

func (*CatalogSource) DeepCopyObject

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

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

type CatalogSourceList

type CatalogSourceList struct {
	metav1.TypeMeta
	metav1.ListMeta

	Items []CatalogSource
}

CatalogSourceList is a list of CatalogSource resources.

func (*CatalogSourceList) DeepCopy

func (in *CatalogSourceList) DeepCopy() *CatalogSourceList

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

func (*CatalogSourceList) DeepCopyInto

func (in *CatalogSourceList) DeepCopyInto(out *CatalogSourceList)

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

func (*CatalogSourceList) DeepCopyObject

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

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

type CatalogSourceSpec

type CatalogSourceSpec struct {
	// SourceType is the type of source
	SourceType SourceType

	// ConfigMap is the name of the ConfigMap to be used to back a configmap-server registry.
	// Only used when SourceType = SourceTypeConfigmap or SourceTypeInternal.
	// +Optional
	ConfigMap string

	// Address is a host that OLM can use to connect to a pre-existing registry.
	// Format: <registry-host or ip>:<port>
	// Only used when SourceType = SourceTypeGrpc.
	// Ignored when the Image field is set.
	// +Optional
	Address string

	// Image is an operator-registry container image to instantiate a registry-server with.
	// Only used when SourceType = SourceTypeGrpc.
	// If present, the address field is ignored.
	// +Optional
	Image string

	// UpdateStrategy defines how updated catalog source images can be discovered
	// Consists of an interval that defines polling duration and an embedded strategy type
	// +Optional
	UpdateStrategy *UpdateStrategy

	// Secrets represent set of secrets that can be used to access the contents of the catalog.
	// It is best to keep this list small, since each will need to be tried for every catalog entry.
	// +Optional
	Secrets []string

	// Metadata
	DisplayName string
	Description string
	Publisher   string
	Icon        Icon
}

func (*CatalogSourceSpec) DeepCopy

func (in *CatalogSourceSpec) DeepCopy() *CatalogSourceSpec

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

func (*CatalogSourceSpec) DeepCopyInto

func (in *CatalogSourceSpec) DeepCopyInto(out *CatalogSourceSpec)

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

type CatalogSourceStatus

type CatalogSourceStatus struct {
	Message                 string          `json:"message,omitempty"`
	Reason                  ConditionReason `json:"reason,omitempty"`
	ConfigMapResource       *ConfigMapResourceReference
	RegistryServiceStatus   *RegistryServiceStatus
	GRPCConnectionState     *GRPCConnectionState
	LatestImageRegistryPoll *metav1.Time
}

func (*CatalogSourceStatus) DeepCopy

func (in *CatalogSourceStatus) DeepCopy() *CatalogSourceStatus

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

func (*CatalogSourceStatus) DeepCopyInto

func (in *CatalogSourceStatus) DeepCopyInto(out *CatalogSourceStatus)

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

type ClusterServiceVersion

type ClusterServiceVersion struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   ClusterServiceVersionSpec
	Status ClusterServiceVersionStatus
}

ClusterServiceVersion is a Custom Resource of type `ClusterServiceVersionSpec`.

func (*ClusterServiceVersion) DeepCopy

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

func (*ClusterServiceVersion) DeepCopyInto

func (in *ClusterServiceVersion) DeepCopyInto(out *ClusterServiceVersion)

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

func (*ClusterServiceVersion) DeepCopyObject

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

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

func (ClusterServiceVersion) GetAllAPIServiceDescriptions

func (csv ClusterServiceVersion) GetAllAPIServiceDescriptions() []APIServiceDescription

GetAllAPIServiceDescriptions returns a deduplicated set of APIServiceDescriptions that is the union of the owned and required APIServiceDescriptions.

Descriptions with the same name prefer the value in Owned. Descriptions are returned in alphabetical order.

func (ClusterServiceVersion) GetAllCRDDescriptions

func (csv ClusterServiceVersion) GetAllCRDDescriptions() []CRDDescription

GetAllCRDDescriptions returns a deduplicated set of CRDDescriptions that is the union of the owned and required CRDDescriptions.

Descriptions with the same name prefer the value in Owned. Descriptions are returned in alphabetical order.

func (ClusterServiceVersion) GetOwnedAPIServiceDescriptions

func (csv ClusterServiceVersion) GetOwnedAPIServiceDescriptions() []APIServiceDescription

GetOwnedAPIServiceDescriptions returns a deduplicated set of owned APIServiceDescriptions

Descriptions are returned in alphabetical order.

func (ClusterServiceVersion) GetRequiredAPIServiceDescriptions

func (csv ClusterServiceVersion) GetRequiredAPIServiceDescriptions() []APIServiceDescription

GetRequiredAPIServiceDescriptions returns a deduplicated set of required APIServiceDescriptions with the intersection of required and owned removed Equivalent to the set subtraction required - owned

Descriptions are returned in alphabetical order.

func (ClusterServiceVersion) OwnsAPIService

func (csv ClusterServiceVersion) OwnsAPIService(name string) bool

OwnsAPIService determines whether the current CSV owns a paritcular APIService.

func (ClusterServiceVersion) OwnsCRD

func (csv ClusterServiceVersion) OwnsCRD(name string) bool

OwnsCRD determines whether the current CSV owns a paritcular CRD.

type ClusterServiceVersionCondition

type ClusterServiceVersionCondition struct {
	// Condition of the ClusterServiceVersion
	Phase ClusterServiceVersionPhase
	// A human readable message indicating details about why the ClusterServiceVersion is in this condition.
	// +optional
	Message string
	// A brief CamelCase message indicating details about why the ClusterServiceVersion is in this state.
	// e.g. 'RequirementsNotMet'
	// +optional
	Reason ConditionReason
	// Last time we updated the status
	// +optional
	LastUpdateTime *metav1.Time
	// Last time the status transitioned from one status to another.
	// +optional
	LastTransitionTime *metav1.Time
}

Conditions appear in the status as a record of state transitions on the ClusterServiceVersion

func (*ClusterServiceVersionCondition) DeepCopy

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

func (*ClusterServiceVersionCondition) DeepCopyInto

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

type ClusterServiceVersionList

type ClusterServiceVersionList struct {
	metav1.TypeMeta
	metav1.ListMeta

	Items []ClusterServiceVersion
}

ClusterServiceVersionList represents a list of ClusterServiceVersions.

func (*ClusterServiceVersionList) DeepCopy

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

func (*ClusterServiceVersionList) DeepCopyInto

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

func (*ClusterServiceVersionList) DeepCopyObject

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

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

type ClusterServiceVersionPhase

type ClusterServiceVersionPhase string

ClusterServiceVersionPhase is a label for the condition of a ClusterServiceVersion at the current time.

const (
	CSVPhaseNone = ""
	// CSVPhasePending means the csv has been accepted by the system, but the install strategy has not been attempted.
	// This is likely because there are unmet requirements.
	CSVPhasePending ClusterServiceVersionPhase = "Pending"
	// CSVPhaseInstallReady means that the requirements are met but the install strategy has not been run.
	CSVPhaseInstallReady ClusterServiceVersionPhase = "InstallReady"
	// CSVPhaseInstalling means that the install strategy has been initiated but not completed.
	CSVPhaseInstalling ClusterServiceVersionPhase = "Installing"
	// CSVPhaseSucceeded means that the resources in the CSV were created successfully.
	CSVPhaseSucceeded ClusterServiceVersionPhase = "Succeeded"
	// CSVPhaseFailed means that the install strategy could not be successfully completed.
	CSVPhaseFailed ClusterServiceVersionPhase = "Failed"
	// CSVPhaseUnknown means that for some reason the state of the csv could not be obtained.
	CSVPhaseUnknown ClusterServiceVersionPhase = "Unknown"
	// CSVPhaseReplacing means that a newer CSV has been created and the csv's resources will be transitioned to a new owner.
	CSVPhaseReplacing ClusterServiceVersionPhase = "Replacing"
	// CSVPhaseDeleting means that a CSV has been replaced by a new one and will be checked for safety before being deleted
	CSVPhaseDeleting ClusterServiceVersionPhase = "Deleting"
	// CSVPhaseAny matches all other phases in CSV queries
	CSVPhaseAny ClusterServiceVersionPhase = ""
)

These are the valid phases of ClusterServiceVersion

type ClusterServiceVersionSpec

type ClusterServiceVersionSpec struct {
	InstallStrategy           NamedInstallStrategy
	Version                   version.OperatorVersion
	Maturity                  string
	CustomResourceDefinitions CustomResourceDefinitions
	APIServiceDefinitions     APIServiceDefinitions
	NativeAPIs                []metav1.GroupVersionKind
	MinKubeVersion            string
	DisplayName               string
	Description               string
	Keywords                  []string
	Maintainers               []Maintainer
	Provider                  AppLink
	Links                     []AppLink
	Icon                      []Icon

	// InstallModes specify supported installation types
	// +optional
	InstallModes []InstallMode

	// The name of a CSV this one replaces. Should match the `metadata.Name` field of the old CSV.
	// +optional
	Replaces string

	// Map of string keys and values that can be used to organize and categorize
	// (scope and select) objects.
	// +optional
	Labels map[string]string

	// Annotations is an unstructured key value map stored with a resource that may be
	// set by external tools to store and retrieve arbitrary metadata.
	// +optional
	Annotations map[string]string

	// Label selector for related resources.
	// +optional
	Selector *metav1.LabelSelector
}

ClusterServiceVersionSpec declarations tell OLM how to install an operator that can manage apps for a given version.

func (*ClusterServiceVersionSpec) DeepCopy

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

func (*ClusterServiceVersionSpec) DeepCopyInto

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

type ClusterServiceVersionStatus

type ClusterServiceVersionStatus struct {
	// Current condition of the ClusterServiceVersion
	Phase ClusterServiceVersionPhase
	// A human readable message indicating details about why the ClusterServiceVersion is in this condition.
	// +optional
	Message string
	// A brief CamelCase message indicating details about why the ClusterServiceVersion is in this state.
	// e.g. 'RequirementsNotMet'
	// +optional
	Reason ConditionReason
	// Last time we updated the status
	// +optional
	LastUpdateTime *metav1.Time
	// Last time the status transitioned from one status to another.
	// +optional
	LastTransitionTime *metav1.Time
	// List of conditions, a history of state transitions
	Conditions []ClusterServiceVersionCondition
	// The status of each requirement for this CSV
	RequirementStatus []RequirementStatus
	// Last time the owned APIService certs were updated
	// +optional
	CertsLastUpdated *metav1.Time
	// Time the owned APIService certs will rotate next
	// +optional
	CertsRotateAt *metav1.Time
}

ClusterServiceVersionStatus represents information about the status of a pod. Status may trail the actual state of a system.

func (*ClusterServiceVersionStatus) DeepCopy

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

func (*ClusterServiceVersionStatus) DeepCopyInto

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

type ConditionReason

type ConditionReason string

ConditionReason is a camelcased reason for the state transition

const (
	CSVReasonRequirementsUnknown                         ConditionReason = "RequirementsUnknown"
	CSVReasonRequirementsNotMet                          ConditionReason = "RequirementsNotMet"
	CSVReasonRequirementsMet                             ConditionReason = "AllRequirementsMet"
	CSVReasonOwnerConflict                               ConditionReason = "OwnerConflict"
	CSVReasonComponentFailed                             ConditionReason = "InstallComponentFailed"
	CSVReasonInvalidStrategy                             ConditionReason = "InvalidInstallStrategy"
	CSVReasonWaiting                                     ConditionReason = "InstallWaiting"
	CSVReasonInstallSuccessful                           ConditionReason = "InstallSucceeded"
	CSVReasonInstallCheckFailed                          ConditionReason = "InstallCheckFailed"
	CSVReasonComponentUnhealthy                          ConditionReason = "ComponentUnhealthy"
	CSVReasonBeingReplaced                               ConditionReason = "BeingReplaced"
	CSVReasonReplaced                                    ConditionReason = "Replaced"
	CSVReasonNeedsReinstall                              ConditionReason = "NeedsReinstall"
	CSVReasonNeedsCertRotation                           ConditionReason = "NeedsCertRotation"
	CSVReasonAPIServiceResourceIssue                     ConditionReason = "APIServiceResourceIssue"
	CSVReasonAPIServiceResourcesNeedReinstall            ConditionReason = "APIServiceResourcesNeedReinstall"
	CSVReasonAPIServiceInstallFailed                     ConditionReason = "APIServiceInstallFailed"
	CSVReasonCopied                                      ConditionReason = "Copied"
	CSVReasonInvalidInstallModes                         ConditionReason = "InvalidInstallModes"
	CSVReasonNoTargetNamespaces                          ConditionReason = "NoTargetNamespaces"
	CSVReasonUnsupportedOperatorGroup                    ConditionReason = "UnsupportedOperatorGroup"
	CSVReasonNoOperatorGroup                             ConditionReason = "NoOperatorGroup"
	CSVReasonTooManyOperatorGroups                       ConditionReason = "TooManyOperatorGroups"
	CSVReasonInterOperatorGroupOwnerConflict             ConditionReason = "InterOperatorGroupOwnerConflict"
	CSVReasonCannotModifyStaticOperatorGroupProvidedAPIs ConditionReason = "CannotModifyStaticOperatorGroupProvidedAPIs"
)
const (
	SubscriptionReasonInvalidCatalog   ConditionReason = "InvalidCatalog"
	SubscriptionReasonUpgradeSucceeded ConditionReason = "UpgradeSucceeded"
)

type ConfigMapResourceReference

type ConfigMapResourceReference struct {
	Name            string
	Namespace       string
	UID             types.UID
	ResourceVersion string
	LastUpdateTime  metav1.Time
}

func (*ConfigMapResourceReference) DeepCopy

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

func (*ConfigMapResourceReference) DeepCopyInto

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

type CustomResourceDefinitions

type CustomResourceDefinitions struct {
	Owned    []CRDDescription
	Required []CRDDescription
}

CustomResourceDefinitions declares all of the CRDs managed or required by an operator being ran by ClusterServiceVersion.

If the CRD is present in the Owned list, it is implicitly required.

func (*CustomResourceDefinitions) DeepCopy

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

func (*CustomResourceDefinitions) DeepCopyInto

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

type DependentStatus

type DependentStatus struct {
	Group   string
	Version string
	Kind    string
	Status  StatusReason
	UUID    string
	Message string
}

DependentStatus is the status for a dependent requirement (to prevent infinite nesting)

func (*DependentStatus) DeepCopy

func (in *DependentStatus) DeepCopy() *DependentStatus

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

func (*DependentStatus) DeepCopyInto

func (in *DependentStatus) DeepCopyInto(out *DependentStatus)

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

type GRPCConnectionState

type GRPCConnectionState struct {
	Address           string
	LastObservedState string
	LastConnectTime   metav1.Time
}

func (*GRPCConnectionState) DeepCopy

func (in *GRPCConnectionState) DeepCopy() *GRPCConnectionState

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

func (*GRPCConnectionState) DeepCopyInto

func (in *GRPCConnectionState) DeepCopyInto(out *GRPCConnectionState)

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

type Icon

type Icon struct {
	Data      string
	MediaType string
}

func (*Icon) DeepCopy

func (in *Icon) DeepCopy() *Icon

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

func (*Icon) DeepCopyInto

func (in *Icon) DeepCopyInto(out *Icon)

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

type InstallMode

type InstallMode struct {
	Type      InstallModeType
	Supported bool
}

InstallMode associates an InstallModeType with a flag representing if the CSV supports it

func (*InstallMode) DeepCopy

func (in *InstallMode) DeepCopy() *InstallMode

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

func (*InstallMode) DeepCopyInto

func (in *InstallMode) DeepCopyInto(out *InstallMode)

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

type InstallModeSet

type InstallModeSet map[InstallModeType]bool

InstallModeSet is a mapping of unique InstallModeTypes to whether they are supported.

func (InstallModeSet) DeepCopy

func (in InstallModeSet) DeepCopy() InstallModeSet

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

func (InstallModeSet) DeepCopyInto

func (in InstallModeSet) DeepCopyInto(out *InstallModeSet)

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

type InstallModeType

type InstallModeType string

InstallModeType is a supported type of install mode for CSV installation

const (
	// InstallModeTypeOwnNamespace indicates that the operator can be a member of an `OperatorGroup` that selects its own namespace.
	InstallModeTypeOwnNamespace InstallModeType = "OwnNamespace"
	// InstallModeTypeSingleNamespace indicates that the operator can be a member of an `OperatorGroup` that selects one namespace.
	InstallModeTypeSingleNamespace InstallModeType = "SingleNamespace"
	// InstallModeTypeMultiNamespace indicates that the operator can be a member of an `OperatorGroup` that selects more than one namespace.
	InstallModeTypeMultiNamespace InstallModeType = "MultiNamespace"
	// InstallModeTypeAllNamespaces indicates that the operator can be a member of an `OperatorGroup` that selects all namespaces (target namespace set is the empty string "").
	InstallModeTypeAllNamespaces InstallModeType = "AllNamespaces"

	InstallStrategyNameDeployment = "deployment"
)

type InstallPlan

type InstallPlan struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   InstallPlanSpec
	Status InstallPlanStatus
}

InstallPlan defines the installation of a set of operators.

func (*InstallPlan) DeepCopy

func (in *InstallPlan) DeepCopy() *InstallPlan

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

func (*InstallPlan) DeepCopyInto

func (in *InstallPlan) DeepCopyInto(out *InstallPlan)

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

func (*InstallPlan) DeepCopyObject

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

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

func (*InstallPlan) EnsureCatalogSource

func (p *InstallPlan) EnsureCatalogSource(sourceName string)

EnsureCatalogSource ensures that a CatalogSource is present in the Status block of an InstallPlan.

type InstallPlanCondition

type InstallPlanCondition struct {
	Type               InstallPlanConditionType
	Status             corev1.ConditionStatus // True, False, or Unknown
	LastUpdateTime     *metav1.Time
	LastTransitionTime *metav1.Time
	Reason             InstallPlanConditionReason
	Message            string
}

InstallPlanCondition represents the overall status of the execution of an InstallPlan.

func (*InstallPlanCondition) DeepCopy

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

func (*InstallPlanCondition) DeepCopyInto

func (in *InstallPlanCondition) DeepCopyInto(out *InstallPlanCondition)

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

type InstallPlanConditionReason

type InstallPlanConditionReason string

ConditionReason is a camelcased reason for the state transition.

const (
	InstallPlanReasonPlanUnknown        InstallPlanConditionReason = "PlanUnknown"
	InstallPlanReasonInstallCheckFailed InstallPlanConditionReason = "InstallCheckFailed"
	InstallPlanReasonDependencyConflict InstallPlanConditionReason = "DependenciesConflict"
	InstallPlanReasonComponentFailed    InstallPlanConditionReason = "InstallComponentFailed"
)

type InstallPlanConditionType

type InstallPlanConditionType string

InstallPlanConditionType describes the state of an InstallPlan at a certain point as a whole.

const (
	InstallPlanResolved  InstallPlanConditionType = "Resolved"
	InstallPlanInstalled InstallPlanConditionType = "Installed"
)

type InstallPlanList

type InstallPlanList struct {
	metav1.TypeMeta
	metav1.ListMeta

	Items []InstallPlan
}

InstallPlanList is a list of InstallPlan resources.

func (*InstallPlanList) DeepCopy

func (in *InstallPlanList) DeepCopy() *InstallPlanList

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

func (*InstallPlanList) DeepCopyInto

func (in *InstallPlanList) DeepCopyInto(out *InstallPlanList)

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

func (*InstallPlanList) DeepCopyObject

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

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

type InstallPlanPhase

type InstallPlanPhase string

InstallPlanPhase is the current status of a InstallPlan as a whole.

const (
	InstallPlanPhaseNone             InstallPlanPhase = ""
	InstallPlanPhasePlanning         InstallPlanPhase = "Planning"
	InstallPlanPhaseRequiresApproval InstallPlanPhase = "RequiresApproval"
	InstallPlanPhaseInstalling       InstallPlanPhase = "Installing"
	InstallPlanPhaseComplete         InstallPlanPhase = "Complete"
	InstallPlanPhaseFailed           InstallPlanPhase = "Failed"
)

type InstallPlanReference

type InstallPlanReference struct {
	APIVersion string
	Kind       string
	Name       string
	UID        types.UID
}

func NewInstallPlanReference

func NewInstallPlanReference(ref *corev1.ObjectReference) *InstallPlanReference

NewInstallPlanReference returns an InstallPlanReference for the given ObjectReference.

func (*InstallPlanReference) DeepCopy

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

func (*InstallPlanReference) DeepCopyInto

func (in *InstallPlanReference) DeepCopyInto(out *InstallPlanReference)

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

type InstallPlanSpec

type InstallPlanSpec struct {
	CatalogSource              string
	CatalogSourceNamespace     string
	ClusterServiceVersionNames []string
	Approval                   Approval
	Approved                   bool
	Generation                 int
}

InstallPlanSpec defines a set of Application resources to be installed

func (*InstallPlanSpec) DeepCopy

func (in *InstallPlanSpec) DeepCopy() *InstallPlanSpec

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

func (*InstallPlanSpec) DeepCopyInto

func (in *InstallPlanSpec) DeepCopyInto(out *InstallPlanSpec)

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

type InstallPlanStatus

type InstallPlanStatus struct {
	Phase          InstallPlanPhase
	Conditions     []InstallPlanCondition
	CatalogSources []string
	Plan           []*Step
	// BundleLookups is the set of in-progress requests to pull and unpackage bundle content to the cluster.
	// +optional
	BundleLookups []BundleLookup
	// AttenuatedServiceAccountRef references the service account that is used
	// to do scoped operator install.
	AttenuatedServiceAccountRef *corev1.ObjectReference
}

InstallPlanStatus represents the information about the status of steps required to complete installation.

Status may trail the actual state of a system.

func (*InstallPlanStatus) CSVManifestsMatch

func (s *InstallPlanStatus) CSVManifestsMatch(steps []*Step) bool

ManifestsMatch returns true if the CSV manifests in the StepResources of the given list of steps matches those in the InstallPlanStatus.

func (*InstallPlanStatus) DeepCopy

func (in *InstallPlanStatus) DeepCopy() *InstallPlanStatus

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

func (*InstallPlanStatus) DeepCopyInto

func (in *InstallPlanStatus) DeepCopyInto(out *InstallPlanStatus)

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

func (InstallPlanStatus) GetCondition

func (s InstallPlanStatus) GetCondition(conditionType InstallPlanConditionType) InstallPlanCondition

GetCondition returns the InstallPlanCondition of the given type if it exists in the InstallPlanStatus' Conditions. Returns a condition of the given type with a ConditionStatus of "Unknown" if not found.

func (InstallPlanStatus) NeedsRequeue

func (s InstallPlanStatus) NeedsRequeue() bool

func (*InstallPlanStatus) SetCondition

SetCondition adds or updates a condition, using `Type` as merge key.

type Maintainer

type Maintainer struct {
	Name  string
	Email string
}

func (*Maintainer) DeepCopy

func (in *Maintainer) DeepCopy() *Maintainer

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

func (*Maintainer) DeepCopyInto

func (in *Maintainer) DeepCopyInto(out *Maintainer)

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

type NamedInstallStrategy

type NamedInstallStrategy struct {
	StrategyName string
	StrategySpec StrategyDetailsDeployment
}

NamedInstallStrategy represents the block of an ClusterServiceVersion resource where the install strategy is specified.

func (*NamedInstallStrategy) DeepCopy

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

func (*NamedInstallStrategy) DeepCopyInto

func (in *NamedInstallStrategy) DeepCopyInto(out *NamedInstallStrategy)

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

type OperatorGroup

type OperatorGroup struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   OperatorGroupSpec
	Status OperatorGroupStatus
}

OperatorGroup is the unit of multitenancy for OLM managed operators. It constrains the installation of operators in its namespace to a specified set of target namespaces.

func (*OperatorGroup) BuildTargetNamespaces

func (o *OperatorGroup) BuildTargetNamespaces() string

func (*OperatorGroup) DeepCopy

func (in *OperatorGroup) DeepCopy() *OperatorGroup

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

func (*OperatorGroup) DeepCopyInto

func (in *OperatorGroup) DeepCopyInto(out *OperatorGroup)

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

func (*OperatorGroup) DeepCopyObject

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

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

type OperatorGroupList

type OperatorGroupList struct {
	metav1.TypeMeta
	metav1.ListMeta

	Items []OperatorGroup
}

OperatorGroupList is a list of OperatorGroup resources.

func (*OperatorGroupList) DeepCopy

func (in *OperatorGroupList) DeepCopy() *OperatorGroupList

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

func (*OperatorGroupList) DeepCopyInto

func (in *OperatorGroupList) DeepCopyInto(out *OperatorGroupList)

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

func (*OperatorGroupList) DeepCopyObject

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

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

type OperatorGroupSpec

type OperatorGroupSpec struct {
	// Selector selects the OperatorGroup's target namespaces.
	// +optional
	Selector *metav1.LabelSelector

	// TargetNamespaces is an explicit set of namespaces to target.
	// If it is set, Selector is ignored.
	// +optional
	TargetNamespaces []string

	// ServiceAccountName is the admin specified service account which will be
	// used to deploy operator(s) in this operator group.
	ServiceAccountName string

	// Static tells OLM not to update the OperatorGroup's providedAPIs annotation
	// +optional
	StaticProvidedAPIs bool
}

OperatorGroupSpec is the spec for an OperatorGroup resource.

func (*OperatorGroupSpec) DeepCopy

func (in *OperatorGroupSpec) DeepCopy() *OperatorGroupSpec

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

func (*OperatorGroupSpec) DeepCopyInto

func (in *OperatorGroupSpec) DeepCopyInto(out *OperatorGroupSpec)

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

type OperatorGroupStatus

type OperatorGroupStatus struct {
	// Namespaces is the set of target namespaces for the OperatorGroup.
	Namespaces []string

	// ServiceAccountRef references the service account object specified.
	ServiceAccountRef *corev1.ObjectReference

	// LastUpdated is a timestamp of the last time the OperatorGroup's status was Updated.
	LastUpdated *metav1.Time
}

OperatorGroupStatus is the status for an OperatorGroupResource.

func (*OperatorGroupStatus) DeepCopy

func (in *OperatorGroupStatus) DeepCopy() *OperatorGroupStatus

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

func (*OperatorGroupStatus) DeepCopyInto

func (in *OperatorGroupStatus) DeepCopyInto(out *OperatorGroupStatus)

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

type RegistryPoll

type RegistryPoll struct {
	// Interval is used to determine the time interval between checks of the latest catalog source version.
	// The catalog operator polls to see if a new version of the catalog source is available.
	// If available, the latest image is pulled and gRPC traffic is directed to the latest catalog source.
	Interval *metav1.Duration
}

func (*RegistryPoll) DeepCopy

func (in *RegistryPoll) DeepCopy() *RegistryPoll

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

func (*RegistryPoll) DeepCopyInto

func (in *RegistryPoll) DeepCopyInto(out *RegistryPoll)

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

type RegistryServiceStatus

type RegistryServiceStatus struct {
	Protocol         string
	ServiceName      string
	ServiceNamespace string
	Port             string
	CreatedAt        metav1.Time
}

func (*RegistryServiceStatus) Address

func (s *RegistryServiceStatus) Address() string

func (*RegistryServiceStatus) DeepCopy

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

func (*RegistryServiceStatus) DeepCopyInto

func (in *RegistryServiceStatus) DeepCopyInto(out *RegistryServiceStatus)

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

type RequirementStatus

type RequirementStatus struct {
	Group      string
	Version    string
	Kind       string
	Name       string
	Status     StatusReason
	Message    string
	UUID       string
	Dependents []DependentStatus
}

func (*RequirementStatus) DeepCopy

func (in *RequirementStatus) DeepCopy() *RequirementStatus

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

func (*RequirementStatus) DeepCopyInto

func (in *RequirementStatus) DeepCopyInto(out *RequirementStatus)

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

type SourceType

type SourceType string

SourceType indicates the type of backing store for a CatalogSource

const (
	// SourceTypeInternal (deprecated) specifies a CatalogSource of type SourceTypeConfigmap
	SourceTypeInternal SourceType = "internal"

	// SourceTypeConfigmap specifies a CatalogSource that generates a configmap-server registry
	SourceTypeConfigmap SourceType = "configmap"

	// SourceTypeGrpc specifies a CatalogSource that can use an operator registry image to generate a
	// registry-server or connect to a pre-existing registry at an address.
	SourceTypeGrpc SourceType = "grpc"
)

type SpecDescriptor

type SpecDescriptor struct {
	Path         string
	DisplayName  string
	Description  string
	XDescriptors []string
	Value        json.RawMessage
}

SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it

func (*SpecDescriptor) DeepCopy

func (in *SpecDescriptor) DeepCopy() *SpecDescriptor

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

func (*SpecDescriptor) DeepCopyInto

func (in *SpecDescriptor) DeepCopyInto(out *SpecDescriptor)

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

type StatusDescriptor

type StatusDescriptor struct {
	Path         string
	DisplayName  string
	Description  string
	XDescriptors []string
	Value        json.RawMessage
}

StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it

func (*StatusDescriptor) DeepCopy

func (in *StatusDescriptor) DeepCopy() *StatusDescriptor

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

func (*StatusDescriptor) DeepCopyInto

func (in *StatusDescriptor) DeepCopyInto(out *StatusDescriptor)

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

type StatusReason

type StatusReason string

StatusReason is a camelcased reason for the status of a RequirementStatus or DependentStatus

const (
	RequirementStatusReasonPresent             StatusReason = "Present"
	RequirementStatusReasonNotPresent          StatusReason = "NotPresent"
	RequirementStatusReasonPresentNotSatisfied StatusReason = "PresentNotSatisfied"
	// The CRD is present but the Established condition is False (not available)
	RequirementStatusReasonNotAvailable StatusReason = "PresentNotAvailable"
	DependentStatusReasonSatisfied      StatusReason = "Satisfied"
	DependentStatusReasonNotSatisfied   StatusReason = "NotSatisfied"
)

type Step

type Step struct {
	Resolving string
	Resource  StepResource
	Status    StepStatus
}

Step represents the status of an individual step in an InstallPlan.

func OrderSteps

func OrderSteps(steps []*Step) []*Step

func (*Step) DeepCopy

func (in *Step) DeepCopy() *Step

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

func (*Step) DeepCopyInto

func (in *Step) DeepCopyInto(out *Step)

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

func (*Step) String

func (s *Step) String() string

type StepResource

type StepResource struct {
	CatalogSource          string
	CatalogSourceNamespace string
	Group                  string
	Version                string
	Kind                   string
	Name                   string
	Manifest               string
}

StepResource represents the status of a resource to be tracked by an InstallPlan.

func (*StepResource) DeepCopy

func (in *StepResource) DeepCopy() *StepResource

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

func (*StepResource) DeepCopyInto

func (in *StepResource) DeepCopyInto(out *StepResource)

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

func (StepResource) String

func (r StepResource) String() string

type StepStatus

type StepStatus string

StepStatus is the current status of a particular resource an in InstallPlan

const (
	StepStatusUnknown             StepStatus = "Unknown"
	StepStatusNotPresent          StepStatus = "NotPresent"
	StepStatusPresent             StepStatus = "Present"
	StepStatusCreated             StepStatus = "Created"
	StepStatusWaitingForAPI       StepStatus = "WaitingForApi"
	StepStatusUnsupportedResource StepStatus = "UnsupportedResource"
)

type StrategyDeploymentPermissions

type StrategyDeploymentPermissions struct {
	ServiceAccountName string
	Rules              []rbac.PolicyRule
}

StrategyDeploymentPermissions describe the rbac rules and service account needed by the install strategy

func (*StrategyDeploymentPermissions) DeepCopy

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

func (*StrategyDeploymentPermissions) DeepCopyInto

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

type StrategyDeploymentSpec

type StrategyDeploymentSpec struct {
	Name string
	Spec appsv1.DeploymentSpec
}

StrategyDeploymentSpec contains the name and spec for the deployment ALM should create

func (*StrategyDeploymentSpec) DeepCopy

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

func (*StrategyDeploymentSpec) DeepCopyInto

func (in *StrategyDeploymentSpec) DeepCopyInto(out *StrategyDeploymentSpec)

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

type StrategyDetailsDeployment

type StrategyDetailsDeployment struct {
	DeploymentSpecs    []StrategyDeploymentSpec
	Permissions        []StrategyDeploymentPermissions
	ClusterPermissions []StrategyDeploymentPermissions
}

StrategyDetailsDeployment represents the parsed details of a Deployment InstallStrategy.

func (*StrategyDetailsDeployment) DeepCopy

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

func (*StrategyDetailsDeployment) DeepCopyInto

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

func (*StrategyDetailsDeployment) GetStrategyName

func (d *StrategyDetailsDeployment) GetStrategyName() string

type Subscription

type Subscription struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   *SubscriptionSpec
	Status SubscriptionStatus
}

Subscription keeps operators up to date by tracking changes to Catalogs.

func (*Subscription) DeepCopy

func (in *Subscription) DeepCopy() *Subscription

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

func (*Subscription) DeepCopyInto

func (in *Subscription) DeepCopyInto(out *Subscription)

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

func (*Subscription) DeepCopyObject

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

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

func (*Subscription) GetInstallPlanApproval

func (s *Subscription) GetInstallPlanApproval() Approval

GetInstallPlanApproval gets the configured install plan approval or the default

type SubscriptionCatalogHealth

type SubscriptionCatalogHealth struct {
	// CatalogSourceRef is a reference to a CatalogSource.
	CatalogSourceRef *corev1.ObjectReference

	// LastUpdated represents the last time that the CatalogSourceHealth changed
	LastUpdated *metav1.Time

	// Healthy is true if the CatalogSource is healthy; false otherwise.
	Healthy bool
}

SubscriptionCatalogHealth describes the health of a CatalogSource the Subscription knows about.

func (*SubscriptionCatalogHealth) DeepCopy

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

func (*SubscriptionCatalogHealth) DeepCopyInto

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

func (SubscriptionCatalogHealth) Equals

Equals returns true if a SubscriptionCatalogHealth equals the one given, false otherwise. Equality is based SOLEY on health and UID.

type SubscriptionCondition

type SubscriptionCondition struct {
	// Type is the type of Subscription condition.
	Type SubscriptionConditionType

	// Status is the status of the condition, one of True, False, Unknown.
	Status corev1.ConditionStatus

	// Reason is a one-word CamelCase reason for the condition's last transition.
	// +optional
	Reason string

	// Message is a human-readable message indicating details about last transition.
	// +optional
	Message string

	// LastHeartbeatTime is the last time we got an update on a given condition
	// +optional
	LastHeartbeatTime *metav1.Time

	// LastTransitionTime is the last time the condition transit from one status to another
	// +optional
	LastTransitionTime *metav1.Time
}

SubscriptionCondition represents the latest available observations of a Subscription's state.

func (*SubscriptionCondition) DeepCopy

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

func (*SubscriptionCondition) DeepCopyInto

func (in *SubscriptionCondition) DeepCopyInto(out *SubscriptionCondition)

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

func (SubscriptionCondition) Equals

func (s SubscriptionCondition) Equals(condition SubscriptionCondition) bool

Equals returns true if a SubscriptionCondition equals the one given, false otherwise. Equality is determined by the equality of the type, status, reason, and message fields ONLY.

type SubscriptionConditionType

type SubscriptionConditionType string

SubscriptionConditionType indicates an explicit state condition about a Subscription in "abnormal-true" polarity form (see https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#typical-status-properties).

const (
	// SubscriptionCatalogSourcesUnhealthy indicates that some or all of the CatalogSources to be used in resolution are unhealthy.
	SubscriptionCatalogSourcesUnhealthy SubscriptionConditionType = "CatalogSourcesUnhealthy"

	// SubscriptionInstallPlanMissing indicates that a Subscription's InstallPlan is missing.
	SubscriptionInstallPlanMissing SubscriptionConditionType = "InstallPlanMissing"

	// SubscriptionInstallPlanPending indicates that a Subscription's InstallPlan is pending installation.
	SubscriptionInstallPlanPending SubscriptionConditionType = "InstallPlanPending"

	// SubscriptionInstallPlanFailed indicates that the installation of a Subscription's InstallPlan has failed.
	SubscriptionInstallPlanFailed SubscriptionConditionType = "InstallPlanFailed"
)

type SubscriptionConfig

type SubscriptionConfig struct {
	// Label selector for pods. Existing ReplicaSets whose pods are
	// selected by this will be the ones affected by this deployment.
	// It must match the pod template's labels.
	Selector *metav1.LabelSelector `json:"selector,omitempty"`

	// NodeSelector is a selector which must be true for the pod to fit on a node.
	// Selector which must match a node's labels for the pod to be scheduled on that node.
	// More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`

	// Compute Resources required by this container.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`

	// List of sources to populate environment variables in the container.
	// The keys defined within a source must be a C_IDENTIFIER. All invalid keys
	// will be reported as an event when the container is starting. When a key exists in multiple
	// sources, the value associated with the last source will take precedence.
	// Values defined by an Env with a duplicate key will take precedence.
	// Cannot be updated.
	// +optional
	EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"`
	// List of environment variables to set in the container.
	// Cannot be updated.
	// +optional
	// +patchMergeKey=name
	// +patchStrategy=merge
	Env []corev1.EnvVar `json:"env,omitempty"`

	// List of Volumes to set in the podSpec.
	// +optional
	Volumes []corev1.Volume `json:"volumes,omitempty"`

	// List of VolumeMounts to set in the container.
	// +optional
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`
}

SubscriptionConfig contains configuration specified for a subscription.

func (*SubscriptionConfig) DeepCopy

func (in *SubscriptionConfig) DeepCopy() *SubscriptionConfig

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

func (*SubscriptionConfig) DeepCopyInto

func (in *SubscriptionConfig) DeepCopyInto(out *SubscriptionConfig)

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

type SubscriptionList

type SubscriptionList struct {
	metav1.TypeMeta
	metav1.ListMeta

	Items []Subscription
}

SubscriptionList is a list of Subscription resources.

func (*SubscriptionList) DeepCopy

func (in *SubscriptionList) DeepCopy() *SubscriptionList

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

func (*SubscriptionList) DeepCopyInto

func (in *SubscriptionList) DeepCopyInto(out *SubscriptionList)

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

func (*SubscriptionList) DeepCopyObject

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

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

type SubscriptionSpec

type SubscriptionSpec struct {
	CatalogSource          string
	CatalogSourceNamespace string
	Package                string
	Channel                string
	StartingCSV            string
	InstallPlanApproval    Approval
	Config                 SubscriptionConfig
}

SubscriptionSpec defines an Application that can be installed

func (*SubscriptionSpec) DeepCopy

func (in *SubscriptionSpec) DeepCopy() *SubscriptionSpec

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

func (*SubscriptionSpec) DeepCopyInto

func (in *SubscriptionSpec) DeepCopyInto(out *SubscriptionSpec)

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

type SubscriptionState

type SubscriptionState string

SubscriptionState tracks when updates are available, installing, or service is up to date

type SubscriptionStatus

type SubscriptionStatus struct {
	// CurrentCSV is the CSV the Subscription is progressing to.
	// +optional
	CurrentCSV string

	// InstalledCSV is the CSV currently installed by the Subscription.
	// +optional
	InstalledCSV string

	// Install is a reference to the latest InstallPlan generated for the Subscription.
	// DEPRECATED: InstallPlanRef
	// +optional
	Install *InstallPlanReference

	// State represents the current state of the Subscription
	// +optional
	State SubscriptionState

	// Reason is the reason the Subscription was transitioned to its current state.
	// +optional
	Reason ConditionReason

	// InstallPlanGeneration is the current generation of the installplan
	// +optional
	InstallPlanGeneration int `json:"installPlanGeneration,omitempty"`

	// InstallPlanRef is a reference to the latest InstallPlan that contains the Subscription's current CSV.
	// +optional
	InstallPlanRef *corev1.ObjectReference

	// CatalogHealth contains the Subscription's view of its relevant CatalogSources' status.
	// It is used to determine SubscriptionStatusConditions related to CatalogSources.
	// +optional
	CatalogHealth []SubscriptionCatalogHealth

	// Conditions is a list of the latest available observations about a Subscription's current state.
	// +optional
	Conditions []SubscriptionCondition `hash:"set"`

	// LastUpdated represents the last time that the Subscription status was updated.
	LastUpdated metav1.Time
}

func (*SubscriptionStatus) DeepCopy

func (in *SubscriptionStatus) DeepCopy() *SubscriptionStatus

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

func (*SubscriptionStatus) DeepCopyInto

func (in *SubscriptionStatus) DeepCopyInto(out *SubscriptionStatus)

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

func (SubscriptionStatus) GetCondition

GetCondition returns the SubscriptionCondition of the given type if it exists in the SubscriptionStatus' Conditions. Returns a condition of the given type with a ConditionStatus of "Unknown" if not found.

func (*SubscriptionStatus) RemoveConditions

func (s *SubscriptionStatus) RemoveConditions(remove ...SubscriptionConditionType)

RemoveConditions removes any conditions of the given types from the SubscriptionStatus' Conditions.

func (*SubscriptionStatus) SetCondition

func (s *SubscriptionStatus) SetCondition(condition SubscriptionCondition)

SetCondition sets the given SubscriptionCondition in the SubscriptionStatus' Conditions.

type UpdateStrategy

type UpdateStrategy struct {
	*RegistryPoll
}

UpdateStrategy holds all the different types of catalog source update strategies Currently only registry polling strategy is implemented

func (*UpdateStrategy) DeepCopy

func (in *UpdateStrategy) DeepCopy() *UpdateStrategy

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

func (*UpdateStrategy) DeepCopyInto

func (in *UpdateStrategy) DeepCopyInto(out *UpdateStrategy)

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

Directories

Path Synopsis
Package v1 contains resources types for version v1 of the operators.coreos.com API group.
Package v1 contains resources types for version v1 of the operators.coreos.com API group.
Package v1alpha1 contains resources types for version v1alpha1 of the operators.coreos.com API group.
Package v1alpha1 contains resources types for version v1alpha1 of the operators.coreos.com API group.
Package v1alpha2 contains resources types for version v1alpha2 of the operators.coreos.com API group.
Package v1alpha2 contains resources types for version v1alpha2 of the operators.coreos.com API group.

Jump to

Keyboard shortcuts

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