v1alpha1

package
v3.11.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Sep 13, 2018 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Overview

Package v1alpha1 implements all the required types and methods for parsing resources for v1alpha1 versioned ClusterServiceVersions.

+k8s:deepcopy-gen=package +groupName=operators.coreos.com

Index

Constants

View Source
const (
	CatalogSourceCRDAPIVersion = operators.GroupName + "/" + GroupVersion
	CatalogSourceKind          = "CatalogSource"
)
View Source
const (
	ClusterServiceVersionAPIVersion = operators.GroupName + "/" + GroupVersion
	ClusterServiceVersionKind       = "ClusterServiceVersion"
)
View Source
const (
	InstallPlanKind       = "InstallPlan"
	InstallPlanAPIVersion = operators.GroupName + "/" + GroupVersion
)
View Source
const (
	GroupName    = "operators.coreos.com"
	GroupVersion = "v1alpha1"
)
View Source
const (
	SubscriptionKind          = "Subscription"
	SubscriptionCRDAPIVersion = operators.GroupName + "/" + GroupVersion
)
View Source
const (
	SubscriptionStateNone             = ""
	SubscriptionStateFailed           = "UpgradeFailed"
	SubscriptionStateUpgradeAvailable = "UpgradeAvailable"
	SubscriptionStateUpgradePending   = "UpgradePending"
	SubscriptionStateAtLatest         = "AtLatestKnown"
)

Variables

View Source
var (
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	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: operators.GroupName, Version: GroupVersion}

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 ActionDescriptor

type ActionDescriptor struct {
	Path         string           `json:"path"`
	DisplayName  string           `json:"displayName,omitempty"`
	Description  string           `json:"description,omitempty"`
	XDescriptors []string         `json:"x-descriptors,omitempty"`
	Value        *json.RawMessage `json:"value,omitempty"`
}

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 `json:"name,omitempty"`
	URL  string `json:"url,omitempty"`
}

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 CRDDescription

type CRDDescription struct {
	Name              string                 `json:"name"`
	Version           string                 `json:"version"`
	Kind              string                 `json:"kind"`
	DisplayName       string                 `json:"displayName,omitempty"`
	Description       string                 `json:"description,omitempty"`
	Resources         []CRDResourceReference `json:"resources,omitempty"`
	StatusDescriptors []StatusDescriptor     `json:"statusDescriptors,omitempty"`
	SpecDescriptors   []SpecDescriptor       `json:"specDescriptors,omitempty"`
	ActionDescriptor  []ActionDescriptor     `json:"actionDescriptors,omitempty"`
}

CRDDescription provides details to ALM 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 CRDResourceReference

type CRDResourceReference struct {
	Name    string `json:"name"`
	Kind    string `json:"kind"`
	Version string `json:"version"`
}

CRDResourceReference is a Kubernetes resource type used by a custom resource

func (*CRDResourceReference) DeepCopy

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

func (*CRDResourceReference) DeepCopyInto

func (in *CRDResourceReference) DeepCopyInto(out *CRDResourceReference)

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

type CatalogSource

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

	Spec   CatalogSourceSpec   `json:"spec"`
	Status CatalogSourceStatus `json:"status"`
}

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +genclient

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 `json:",inline"`
	metav1.ListMeta `json:"metadata"`

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

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

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 string   `json:"sourceType"`
	ConfigMap  string   `json:"configMap,omitempty"`
	Secrets    []string `json:"secrets,omitempty"`

	// Metadata
	DisplayName string `json:"displayName,omitempty"`
	Description string `json:"description,omitempty"`
	Publisher   string `json:"publisher,omitempty"`
	Icon        Icon   `json:"icon,omitempty"`
}

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 {
	ConfigMapResource *ConfigMapResourceReference `json:"configMapReference,omitempty"`
	LastSync          metav1.Time                 `json:"lastSync,omitempty"`
}

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   `json:",inline"`
	metav1.ObjectMeta `json:"metadata"`

	Spec   ClusterServiceVersionSpec   `json:"spec"`
	Status ClusterServiceVersionStatus `json:"status"`
}

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +genclient 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) 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) IsObsolete

func (c *ClusterServiceVersion) IsObsolete() bool

IsObsolete returns if this CSV is being replaced or is marked for deletion

func (ClusterServiceVersion) OwnsCRD

func (csv ClusterServiceVersion) OwnsCRD(name string) bool

OwnsCRD determines whether the current CSV owns a paritcular CRD.

func (*ClusterServiceVersion) SetPhase

func (c *ClusterServiceVersion) SetPhase(phase ClusterServiceVersionPhase, reason ConditionReason, message string)

SetPhase sets the current phase and adds a condition if necessary

func (*ClusterServiceVersion) SetRequirementStatus

func (c *ClusterServiceVersion) SetRequirementStatus(statuses []RequirementStatus)

SetRequirementStatus adds the status of all requirements to the CSV status

type ClusterServiceVersionCondition

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

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 `json:",inline"`
	metav1.ListMeta `json:"metadata"`

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

ClusterServiceVersionList represents a list of ClusterServiceVersions. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

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"
)

These are the valid phases of ClusterServiceVersion

type ClusterServiceVersionSpec

type ClusterServiceVersionSpec struct {
	InstallStrategy           NamedInstallStrategy      `json:"install"`
	Version                   semver.Version            `json:"version,omitempty"`
	Maturity                  string                    `json:"maturity,omitempty"`
	CustomResourceDefinitions CustomResourceDefinitions `json:"customresourcedefinitions,omitempty"`
	DisplayName               string                    `json:"displayName"`
	Description               string                    `json:"description,omitempty"`
	Keywords                  []string                  `json:"keywords,omitempty"`
	Maintainers               []Maintainer              `json:"maintainers,omitempty"`
	Provider                  AppLink                   `json:"provider,omitempty"`
	Links                     []AppLink                 `json:"links,omitempty"`
	Icon                      []Icon                    `json:"icon,omitempty"`

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

	// Map of string keys and values that can be used to organize and categorize
	// (scope and select) objects.
	// +optional
	Labels map[string]string `json:"labels,omitempty" protobuf:"bytes,11,rep,name=labels"`

	// 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 `json:"annotations,omitempty" protobuf:"bytes,12,rep,name=annotations"`

	// Label selector for related resources.
	// +optional
	Selector *metav1.LabelSelector `json:"selector,omitempty" protobuf:"bytes,2,opt,name=selector"`
}

ClusterServiceVersionSpec declarations tell the ALM how to install an operator that can manage apps for given version and AppType.

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 `json:"phase,omitempty"`
	// A human readable message indicating details about why the ClusterServiceVersion is in this condition.
	// +optional
	Message string `json:"message,omitempty"`
	// A brief CamelCase message indicating details about why the ClusterServiceVersion is in this state.
	// e.g. 'RequirementsNotMet'
	// +optional
	Reason ConditionReason `json:"reason,omitempty"`
	// Last time we updated the status
	// +optional
	LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty"`
	// Last time the status transitioned from one status to another.
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
	// List of conditions, a history of state transitions
	Conditions []ClusterServiceVersionCondition `json:"conditions,omitempty"`
	// The status of each requirement for this CSV
	RequirementStatus []RequirementStatus `json:"requirementStatus,omitempty"`
}

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"
)
const (
	SubscriptionReasonInvalidCatalog   ConditionReason = "InvalidCatalog"
	SubscriptionReasonUpgradeSucceeded ConditionReason = "UpgradeSucceeded"
)

type ConfigMapResourceReference

type ConfigMapResourceReference struct {
	Name      string `json:"name"`
	Namespace string `json:"namespace"`

	UID             types.UID `json:"uid,omitempty"`
	ResourceVersion string    `json:"resourceVersion,omitempty"`
}

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 `json:"owned,omitempty"`
	Required []CRDDescription `json:"required,omitempty"`
}

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 Icon

type Icon struct {
	Data      string `json:"base64data"`
	MediaType string `json:"mediatype"`
}

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 InstallPlan

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

	Spec   InstallPlanSpec   `json:"spec"`
	Status InstallPlanStatus `json:"status"`
}

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +genclient

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   `json:"type,omitempty"`
	Status             corev1.ConditionStatus     `json:"status,omitempty"` // True, False, or Unknown
	LastUpdateTime     metav1.Time                `json:"lastUpdateTime,omitempty"`
	LastTransitionTime metav1.Time                `json:"lastTransitionTime,omitempty"`
	Reason             InstallPlanConditionReason `json:"reason,omitempty"`
	Message            string                     `json:"message,omitempty"`
}

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 `json:",inline"`
	metav1.ListMeta `json:"metadata"`

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

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

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    `json:"apiVersion"`
	Kind       string    `json:"kind"`
	Name       string    `json:"name"`
	UID        types.UID `json:"uuid"`
}

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   `json:"source"`
	CatalogSourceNamespace     string   `json:"sourceNamespace"`
	ClusterServiceVersionNames []string `json:"clusterServiceVersionNames"`
	Approval                   Approval `json:"approval"`
	Approved                   bool     `json:"approved"`
}

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       `json:"phase"`
	Conditions     []InstallPlanCondition `json:"conditions,omitempty"`
	CatalogSources []string               `json:"catalogSources"`
	Plan           []Step                 `json:"plan,omitempty"`
}

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

Status may trail the actual state of a system.

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) SetCondition

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

type Maintainer

type Maintainer struct {
	Name  string `json:"name,omitempty"`
	Email string `json:"email,omitempty"`
}

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          `json:"strategy"`
	StrategySpecRaw json.RawMessage `json:"spec,omitempty"`
}

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 RequirementStatus

type RequirementStatus struct {
	Group   string `json:"group"`
	Version string `json:"version"`
	Kind    string `json:"kind"`
	Name    string `json:"name"`
	Status  string `json:"status"`
	UUID    string `json:"uuid,omitempty"`
}

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 SpecDescriptor

type SpecDescriptor struct {
	Path         string           `json:"path"`
	DisplayName  string           `json:"displayName,omitempty"`
	Description  string           `json:"description,omitempty"`
	XDescriptors []string         `json:"x-descriptors,omitempty"`
	Value        *json.RawMessage `json:"value,omitempty"`
}

SpecDescriptor describes a field in a spec block of a CRD so that ALM 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           `json:"path"`
	DisplayName  string           `json:"displayName,omitempty"`
	Description  string           `json:"description,omitempty"`
	XDescriptors []string         `json:"x-descriptors,omitempty"`
	Value        *json.RawMessage `json:"value,omitempty"`
}

StatusDescriptor describes a field in a status block of a CRD so that ALM 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 Step

type Step struct {
	Resolving string       `json:"resolving"`
	Resource  StepResource `json:"resource"`
	Status    StepStatus   `json:"status"`
}

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

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.

type StepResource

type StepResource struct {
	CatalogSource          string `json:"sourceName"`
	CatalogSourceNamespace string `json:"sourceNamespace"`
	Group                  string `json:"group"`
	Version                string `json:"version"`
	Kind                   string `json:"kind"`
	Name                   string `json:"name"`
	Manifest               string `json:"manifest,omitempty"`
}

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

func NewStepResourceFromCSV

func NewStepResourceFromCSV(csv *ClusterServiceVersion) (StepResource, error)

NewStepResourceFromCSV creates an unresolved Step for the provided CSV.

func NewStepResourcesFromCRD

func NewStepResourcesFromCRD(crd *v1beta1.CustomResourceDefinition) ([]StepResource, error)

NewStepResourceFromCRD creates an unresolved Step for the provided CRD.

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.

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"
)

type Subscription

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

	Spec   *SubscriptionSpec  `json:"spec"`
	Status SubscriptionStatus `json:"status"`
}

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +genclient

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 SubscriptionList

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

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

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

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   `json:"source"`
	CatalogSourceNamespace string   `json:"sourceNamespace"`
	Package                string   `json:"name"`
	Channel                string   `json:"channel,omitempty"`
	StartingCSV            string   `json:"startingCSV,omitempty"`
	InstallPlanApproval    Approval `json:"installPlanApproval,omitempty"`
}

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   string                `json:"currentCSV,omitempty"`
	InstalledCSV string                `json:"installedCSV, omitempty"`
	Install      *InstallPlanReference `json:"installplan,omitempty"`

	State       SubscriptionState `json:"state,omitempty"`
	Reason      ConditionReason   `json:"reason,omitempty"`
	LastUpdated metav1.Time       `json:"lastUpdated"`
}

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.

Jump to

Keyboard shortcuts

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