Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the dhcp v1alpha1 API group +kubebuilder:object:generate=true +groupName=addons.managed.openshift.io
Common structs objects
Index ¶
- Constants
- Variables
- type AddOnStatusCondition
- type AdditionalCatalogSource
- type Addon
- func (in *Addon) DeepCopy() *Addon
- func (in *Addon) DeepCopyInto(out *Addon)
- func (in *Addon) DeepCopyObject() runtime.Object
- func (a *Addon) GetInstallOLMCommon() (AddonInstallOLMCommon, error)
- func (a *Addon) IsAvailable() bool
- func (a *Addon) SetUpgradePolicyStatus(val AddonUpgradePolicyValue)
- func (a *Addon) UpgradeCompleteForCurrentVersion() bool
- type AddonInstallOLMAllNamespaces
- type AddonInstallOLMCommon
- type AddonInstallOLMOwnNamespace
- type AddonInstallSpec
- type AddonInstallType
- type AddonInstance
- type AddonInstanceCondition
- type AddonInstanceHealthyReason
- type AddonInstanceInstalledReason
- type AddonInstanceList
- type AddonInstanceReadyToBeDeleted
- type AddonInstanceSpec
- type AddonInstanceStatus
- type AddonList
- type AddonNamespace
- type AddonOperator
- type AddonOperatorFeatureToggles
- type AddonOperatorList
- type AddonOperatorOCM
- type AddonOperatorSpec
- type AddonOperatorStatus
- type AddonPackageOperator
- type AddonPhase
- type AddonSecretPropagation
- type AddonSecretPropagationReference
- type AddonSpec
- type AddonStatus
- type AddonUpgradePolicy
- type AddonUpgradePolicyStatus
- type AddonUpgradePolicyValue
- type ClusterSecretReference
- type EnvObject
- type MonitoringFederationSpec
- type MonitoringSpec
- type MonitoringStackSpec
- type OCMAddOnStatus
- type OCMAddOnStatusHash
- type RHOBSRemoteWriteConfigSpec
- type SubscriptionConfig
Constants ¶
const ( DefaultAddonInstanceName = "addon-instance" DefaultAddonInstanceHeartbeatUpdatePeriod = 10 * time.Second )
const ( // Addon operator is ready AddonOperatorReasonReady = "AddonOperatorReady" // Addon operator has paused reconciliation AddonOperatorReasonPaused = "AddonOperatorPaused" // Addon operator has resumed reconciliation AddonOperatorReasonUnpaused = "AddonOperatorUnpaused" )
AddonOperator condition reasons
const ( // Available condition indicates that the AddonOperator alive and well. AddonOperatorAvailable = "Available" // Paused condition indicates that the AddonOperator is paused entirely. AddonOperatorPaused = "Paused" )
const ( DeleteAnnotationFlag = "addons.managed.openshift.io/delete" DeleteTimeoutDuration = "addons.managed.openshift.io/deletetimeout" )
Annotation keys for delete signal from OCM.
const ( // Addon as fully reconciled AddonReasonFullyReconciled = "FullyReconciled" // Addon is terminating AddonReasonTerminating = "Terminating" // Addon has a configurtion error AddonReasonConfigError = "ConfigurationError" // Addon has paused reconciliation AddonReasonPaused = "AddonPaused" // Addon has an unready Catalog source AddonReasonUnreadyCatalogSource = "UnreadyCatalogSource" // Addon has an unready additional Catalog source AddonReasonUnreadyAdditionalCatalogSource = "UnreadyAdditionalCatalogSource" // Addon has unready namespaces AddonReasonUnreadyNamespaces = "UnreadyNamespaces" // Addon has unready metrics federation AddonReasonUnreadyMonitoringFederation = "UnreadyMonitoringFederation" // Addon has unready monitoring stack AddonReasonUnreadyMonitoringStack = "UnreadyMonitoringStack" // Addon has unready ClusterPackageTemplate AddonReasonUnreadyClusterPackageTemplate = "UnreadyClusterPackageTemplate" // Addon has unready CSV AddonReasonUnreadyCSV = "UnreadyCSV" // CSV for the addon is missing AddonReasonMissingCSV = "MissingCSV" // Addon cannot find a referenced secret to propagate AddonReasonMissingSecretForPropagation = "MissingSecretForPropagation" // Addon upgrade has started. AddonReasonUpgradeStarted = "AddonUpgradeStarted" // Addon upgrade has succeeded. AddonReasonUpgradeSucceeded = "AddonUpgradeSucceeded" // Addon has successfully been uninstalled. AddonReasonInstalled = "AddonInstalled" // Addon has successfully been uninstalled. AddonReasonNotInstalled = "AddonNotInstalled" // Addon is ready to be deleted. AddonReasonReadyToBeDeleted = "AddonReadyToBeDeleted" // Addon is not yet ready to deleted. AddonReasonNotReadyToBeDeleted = "AddonNotReadyToBeDeleted" // Addon has timed out waiting for acknowledgement from the underlying addon. AddonReasonDeletionTimedOut = "AddonReasonDeletionTimedOut" // Addon instance is not yet installed. AddonReasonInstanceNotInstalled = "AddonInstanceNotInstalled" // Addon instance has been successfully installed. AddonReasonInstanceInstalled = "AddonInstanceInstalled" // Addon's Install Plan is pending due to some condition such as a manual approval. AddonReasonInstallPlanPending = "AddonInstallPlanPending" )
const ( // Available condition indicates that all resources for the Addon are reconciled and healthy Available = "Available" // Paused condition indicates that the reconciliation of resources for the Addon(s) has paused Paused = "Paused" // UpgradeStarted condition indicates that the addon upgrade has started. UpgradeStarted = "UpgradeStarted" // UpgradeSucceeded condition indicates that the addon upgrade has succeeded. UpgradeSucceeded = "UpgradeSucceeded" // Installed condition indicates that the addon has been installed successfully // and was available atleast once. Installed = "Installed" // ReadyToBeDeleted condition indicates whether the addon is ready to be deleted or not. ReadyToBeDeleted = "ReadyToBeDeleted" // DeleteTimeout condition indicates whether an addon has timed out waiting for an delete acknowledgement // from underlying addon. DeleteTimeout = "DeleteTimeout" )
const (
DefaultAddonOperatorName = "addon-operator"
)
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: group, Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder runtime.SchemeBuilder // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type AddOnStatusCondition ¶
type AddOnStatusCondition struct { StatusType string `json:"status_type"` StatusValue metav1.ConditionStatus `json:"status_value"` Reason string `json:"reason"` Message string `json:"message"` }
func (*AddOnStatusCondition) DeepCopy ¶
func (in *AddOnStatusCondition) DeepCopy() *AddOnStatusCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddOnStatusCondition.
func (*AddOnStatusCondition) DeepCopyInto ¶
func (in *AddOnStatusCondition) DeepCopyInto(out *AddOnStatusCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdditionalCatalogSource ¶
type AdditionalCatalogSource struct { // Name of the additional catalog source // +kubebuilder:validation:MinLength=1 Name string `json:"name"` // Image url of the additional catalog source // +kubebuilder:validation:MinLength=1 Image string `json:"image"` }
func (*AdditionalCatalogSource) DeepCopy ¶
func (in *AdditionalCatalogSource) DeepCopy() *AdditionalCatalogSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdditionalCatalogSource.
func (*AdditionalCatalogSource) DeepCopyInto ¶
func (in *AdditionalCatalogSource) DeepCopyInto(out *AdditionalCatalogSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Addon ¶
type Addon struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AddonSpec `json:"spec,omitempty"` // +kubebuilder:default={phase:Pending} Status AddonStatus `json:"status,omitempty"` }
Addon is the Schema for the Addons API
**Example** ```yaml apiVersion: addons.managed.openshift.io/v1alpha1 kind: Addon metadata:
name: reference-addon
spec:
displayName: An amazing example addon! namespaces: - name: reference-addon install: type: OLMOwnNamespace olmOwnNamespace: namespace: reference-addon packageName: reference-addon channel: alpha catalogSourceImage: quay.io/osd-addons/reference-addon-index@sha256:58cb1c4478a150dc44e6c179d709726516d84db46e4e130a5227d8b76456b5bd
```
+kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"
func (*Addon) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Addon.
func (*Addon) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Addon) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Addon) GetInstallOLMCommon ¶
func (a *Addon) GetInstallOLMCommon() (AddonInstallOLMCommon, error)
Gets the AddonInstallOLMCommon by Install Type
func (*Addon) IsAvailable ¶
func (*Addon) SetUpgradePolicyStatus ¶
func (a *Addon) SetUpgradePolicyStatus(val AddonUpgradePolicyValue)
func (*Addon) UpgradeCompleteForCurrentVersion ¶
type AddonInstallOLMAllNamespaces ¶
type AddonInstallOLMAllNamespaces struct {
AddonInstallOLMCommon `json:",inline"`
}
AllNamespaces specific Addon installation parameters.
func (*AddonInstallOLMAllNamespaces) DeepCopy ¶
func (in *AddonInstallOLMAllNamespaces) DeepCopy() *AddonInstallOLMAllNamespaces
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstallOLMAllNamespaces.
func (*AddonInstallOLMAllNamespaces) DeepCopyInto ¶
func (in *AddonInstallOLMAllNamespaces) DeepCopyInto(out *AddonInstallOLMAllNamespaces)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonInstallOLMCommon ¶
type AddonInstallOLMCommon struct { // Namespace to install the Addon into. // +kubebuilder:validation:MinLength=1 Namespace string `json:"namespace"` // Defines the CatalogSource image. // +kubebuilder:validation:MinLength=1 CatalogSourceImage string `json:"catalogSourceImage"` // Channel for the Subscription object. // +kubebuilder:validation:MinLength=1 Channel string `json:"channel"` // Name of the package to install via OLM. // OLM will resove this package name to install the matching bundle. // +kubebuilder:validation:MinLength=1 PackageName string `json:"packageName"` // Reference to a secret of type kubernetes.io/dockercfg or kubernetes.io/dockerconfigjson // in the addon operators installation namespace. // The secret referenced here, will be made available to the addon in the addon installation namespace, // as addon-pullsecret prior to installing the addon itself. PullSecretName string `json:"pullSecretName,omitempty"` // Configs to be passed to subscription OLM object // +optional Config *SubscriptionConfig `json:"config,omitempty"` // Additional catalog source objects to be created in the cluster // +optional AdditionalCatalogSources []AdditionalCatalogSource `json:"additionalCatalogSources,omitempty"` }
Common Addon installation parameters.
func (*AddonInstallOLMCommon) DeepCopy ¶
func (in *AddonInstallOLMCommon) DeepCopy() *AddonInstallOLMCommon
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstallOLMCommon.
func (*AddonInstallOLMCommon) DeepCopyInto ¶
func (in *AddonInstallOLMCommon) DeepCopyInto(out *AddonInstallOLMCommon)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonInstallOLMOwnNamespace ¶
type AddonInstallOLMOwnNamespace struct {
AddonInstallOLMCommon `json:",inline"`
}
OwnNamespace specific Addon installation parameters.
func (*AddonInstallOLMOwnNamespace) DeepCopy ¶
func (in *AddonInstallOLMOwnNamespace) DeepCopy() *AddonInstallOLMOwnNamespace
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstallOLMOwnNamespace.
func (*AddonInstallOLMOwnNamespace) DeepCopyInto ¶
func (in *AddonInstallOLMOwnNamespace) DeepCopyInto(out *AddonInstallOLMOwnNamespace)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonInstallSpec ¶
type AddonInstallSpec struct { // Type of installation. // +kubebuilder:validation:Enum={"OLMOwnNamespace","OLMAllNamespaces"} Type AddonInstallType `json:"type"` // OLMAllNamespaces config parameters. Present only if Type = OLMAllNamespaces. OLMAllNamespaces *AddonInstallOLMAllNamespaces `json:"olmAllNamespaces,omitempty"` // OLMOwnNamespace config parameters. Present only if Type = OLMOwnNamespace. OLMOwnNamespace *AddonInstallOLMOwnNamespace `json:"olmOwnNamespace,omitempty"` }
AddonInstallSpec defines the desired Addon installation type.
func (*AddonInstallSpec) DeepCopy ¶
func (in *AddonInstallSpec) DeepCopy() *AddonInstallSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstallSpec.
func (*AddonInstallSpec) DeepCopyInto ¶
func (in *AddonInstallSpec) DeepCopyInto(out *AddonInstallSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonInstallType ¶
type AddonInstallType string
const ( // All namespaces on the cluster (default) // installs the Operator in the default openshift-operators namespace to // watch and be made available to all namespaces in the cluster. // Maps directly to the OLM default install mode "all namespaces". OLMAllNamespaces AddonInstallType = "OLMAllNamespaces" // Installs the operator into a specific namespace. // The Operator will only watch and be made available for use in this single namespace. // Maps directly to the OLM install mode "specific namespace" OLMOwnNamespace AddonInstallType = "OLMOwnNamespace" )
type AddonInstance ¶
type AddonInstance struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AddonInstanceSpec `json:"spec,omitempty"` Status AddonInstanceStatus `json:"status,omitempty"` }
AddonInstance is a managed service facing interface to get configuration and report status back.
**Example** ```yaml apiVersion: addons.managed.openshift.io/v1alpha1 kind: AddonInstance metadata:
name: addon-instance namespace: my-addon-namespace
spec:
heartbeatUpdatePeriod: 30s
status:
lastHeartbeatTime: 2021-10-11T08:14:50Z conditions: - type: addons.managed.openshift.io/Healthy status: "True"
``` +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Last Heartbeat",type="date",JSONPath=".status.lastHeartbeatTime" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"
func (*AddonInstance) DeepCopy ¶
func (in *AddonInstance) DeepCopy() *AddonInstance
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstance.
func (*AddonInstance) DeepCopyInto ¶
func (in *AddonInstance) DeepCopyInto(out *AddonInstance)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddonInstance) DeepCopyObject ¶
func (in *AddonInstance) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AddonInstanceCondition ¶
type AddonInstanceCondition string
AddonInstanceCondition is a condition Type used by AddonInstance status conditions.
const ( // AddonInstanceHealthy tracks the general health of an Addon. // // If false the service is degraded to a point that manual intervention is likely. // Higher level controllers are advised to stop actions that might further worsen the state of the service. // For example: delaying upgrades until the status is cleared. AddonInstanceConditionHealthy AddonInstanceCondition = "Healthy" // AddonInstanceDegraded reports partial lose of functionallity which otherwise // does not affect the availability of an addon. AddonInstanceConditionDegraded AddonInstanceCondition = "Degraded" // AddonInstanceConditionInstalled reports installation status as either // 'True' or 'False' with additional detail provided thorugh messages // while condition is still 'False'. AddonInstanceConditionInstalled AddonInstanceCondition = "Installed" // ReadyToBeDeleted condition indicates whether the addon is ready to be deleted or not. AddonInstanceConditionReadyToBeDeleted AddonInstanceCondition = "ReadyToBeDeleted" )
AddonInstance Conditions
func (AddonInstanceCondition) String ¶
func (c AddonInstanceCondition) String() string
type AddonInstanceHealthyReason ¶
type AddonInstanceHealthyReason string
AddonInstanceHealthyReason is a condition reason used by AddonInstance status conditions when condition type is AddonInstanceConditionHealthy.
const ( // AddonInstanceHealthyReasonReceivingHeartbeats is a status condition // reason used when heartbeats are received within the configured // threshold. AddonInstanceHealthyReasonReceivingHeartbeats AddonInstanceHealthyReason = "ReceivingHeartbeats" // AddonInstanceHealthyReasonPendingFirstHeartbeat is a status condition // reason used before the first heartbeat has been received from the addon. AddonInstanceHealthyReasonPendingFirstHeartbeat AddonInstanceHealthyReason = "PendingFirstHeartbeat" // AddonInstanceHealthyReasonHeatbeatTimeout is a status condition // reason when the last received timeout was not received before // the configured threshold. AddonInstanceHealthyReasonHeartbeatTimeout AddonInstanceHealthyReason = "HeartbeatTimeout" )
func (AddonInstanceHealthyReason) String ¶
func (r AddonInstanceHealthyReason) String() string
type AddonInstanceInstalledReason ¶
type AddonInstanceInstalledReason string
AddonInstanceInstalledReason is a condition reason used by AddonInstance status conditions when condition type is AddonInstanceConditionInstalled.
const ( // AddonInstanceInstalledReasonSetupComplete is a status condition // reason used when addon installation setup work is complete. AddonInstanceInstalledReasonSetupComplete AddonInstanceInstalledReason = "SetupComplete" // AddonInstanceInstalledReasonTeardownComplete is a status condition // reason used when addon installation teardown work is complete. AddonInstanceInstalledReasonTeardownComplete AddonInstanceInstalledReason = "TeardownComplete" // AddonInstanceInstalledReasonBlocked is a status condition // reason used when addon installation is blocked. AddonInstanceInstalledReasonBlocked AddonInstanceInstalledReason = "Blocked" )
func (AddonInstanceInstalledReason) String ¶
func (r AddonInstanceInstalledReason) String() string
type AddonInstanceList ¶
type AddonInstanceList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AddonInstance `json:"items"` }
AddonInstanceList contains a list of AddonInstances +kubebuilder:object:root=true
func (*AddonInstanceList) DeepCopy ¶
func (in *AddonInstanceList) DeepCopy() *AddonInstanceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstanceList.
func (*AddonInstanceList) DeepCopyInto ¶
func (in *AddonInstanceList) DeepCopyInto(out *AddonInstanceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddonInstanceList) DeepCopyObject ¶
func (in *AddonInstanceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AddonInstanceReadyToBeDeleted ¶
type AddonInstanceReadyToBeDeleted string
const ( // Addon is ready to be deleted. AddonInstanceReasonReadyToBeDeleted AddonInstanceReadyToBeDeleted = "AddonReadyToBeDeleted" // Addon is not yet ready to deleted. AddonInstanceReasonNotReadyToBeDeleted AddonInstanceReadyToBeDeleted = "AddonNotReadyToBeDeleted" )
func (AddonInstanceReadyToBeDeleted) String ¶
func (r AddonInstanceReadyToBeDeleted) String() string
type AddonInstanceSpec ¶
type AddonInstanceSpec struct { // This field indicates whether the addon is marked for deletion. // +optional MarkedForDeletion bool `json:"markedForDeletion"` // The periodic rate at which heartbeats are expected to be received by the AddonInstance object // +kubebuilder:default="10s" HeartbeatUpdatePeriod metav1.Duration `json:"heartbeatUpdatePeriod,omitempty"` }
AddonInstanceSpec defines the configuration to consider while taking AddonInstance-related decisions such as HeartbeatTimeouts
func (*AddonInstanceSpec) DeepCopy ¶
func (in *AddonInstanceSpec) DeepCopy() *AddonInstanceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstanceSpec.
func (*AddonInstanceSpec) DeepCopyInto ¶
func (in *AddonInstanceSpec) DeepCopyInto(out *AddonInstanceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonInstanceStatus ¶
type AddonInstanceStatus struct { // The most recent generation observed by the controller. ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Conditions is a list of status conditions ths object is in. Conditions []metav1.Condition `json:"conditions,omitempty"` // Timestamp of the last reported status check // +optional LastHeartbeatTime metav1.Time `json:"lastHeartbeatTime"` }
AddonInstanceStatus defines the observed state of Addon
func (*AddonInstanceStatus) DeepCopy ¶
func (in *AddonInstanceStatus) DeepCopy() *AddonInstanceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstanceStatus.
func (*AddonInstanceStatus) DeepCopyInto ¶
func (in *AddonInstanceStatus) DeepCopyInto(out *AddonInstanceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonList ¶
type AddonList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Addon `json:"items"` }
AddonList contains a list of Addon +kubebuilder:object:root=true
func (*AddonList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonList.
func (*AddonList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddonList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AddonNamespace ¶
type AddonNamespace struct { // Name of the KubernetesNamespace. // +kubebuilder:validation:MinLength=1 Name string `json:"name"` // Labels to be added to the namespace // +optional Labels map[string]string `json:"labels,omitempty"` // Annotations to be added to the namespace // +optional Annotations map[string]string `json:"annotations,omitempty"` }
func (*AddonNamespace) DeepCopy ¶
func (in *AddonNamespace) DeepCopy() *AddonNamespace
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonNamespace.
func (*AddonNamespace) DeepCopyInto ¶
func (in *AddonNamespace) DeepCopyInto(out *AddonNamespace)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonOperator ¶
type AddonOperator struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AddonOperatorSpec `json:"spec,omitempty"` // +kubebuilder:default={phase:Pending} Status AddonOperatorStatus `json:"status,omitempty"` }
AddonOperator is the Schema for the AddonOperator API +kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"
func (*AddonOperator) DeepCopy ¶
func (in *AddonOperator) DeepCopy() *AddonOperator
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonOperator.
func (*AddonOperator) DeepCopyInto ¶
func (in *AddonOperator) DeepCopyInto(out *AddonOperator)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddonOperator) DeepCopyObject ¶
func (in *AddonOperator) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AddonOperatorFeatureToggles ¶
type AddonOperatorFeatureToggles struct { // Feature toggle for enabling/disabling experimental features in the addon-operator // +optional ExperimentalFeatures bool `json:"experimentalFeatures"` }
func (*AddonOperatorFeatureToggles) DeepCopy ¶
func (in *AddonOperatorFeatureToggles) DeepCopy() *AddonOperatorFeatureToggles
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonOperatorFeatureToggles.
func (*AddonOperatorFeatureToggles) DeepCopyInto ¶
func (in *AddonOperatorFeatureToggles) DeepCopyInto(out *AddonOperatorFeatureToggles)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonOperatorList ¶
type AddonOperatorList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AddonOperator `json:"items"` }
AddonOperatorList contains a list of AddonOperators +kubebuilder:object:root=true
func (*AddonOperatorList) DeepCopy ¶
func (in *AddonOperatorList) DeepCopy() *AddonOperatorList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonOperatorList.
func (*AddonOperatorList) DeepCopyInto ¶
func (in *AddonOperatorList) DeepCopyInto(out *AddonOperatorList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddonOperatorList) DeepCopyObject ¶
func (in *AddonOperatorList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AddonOperatorOCM ¶
type AddonOperatorOCM struct { // Root of the OCM API Endpoint. Endpoint string `json:"endpoint"` // Secret to authenticate to the OCM API Endpoint. // Only supports secrets of type "kubernetes.io/dockerconfigjson" // https://kubernetes.io/docs/concepts/configuration/secret/#secret-types Secret ClusterSecretReference `json:"secret"` }
OCM specific configuration.
func (*AddonOperatorOCM) DeepCopy ¶
func (in *AddonOperatorOCM) DeepCopy() *AddonOperatorOCM
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonOperatorOCM.
func (*AddonOperatorOCM) DeepCopyInto ¶
func (in *AddonOperatorOCM) DeepCopyInto(out *AddonOperatorOCM)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonOperatorSpec ¶
type AddonOperatorSpec struct { // Pause reconciliation on all Addons in the cluster // when set to True // +optional Paused bool `json:"pause"` // [DEPRECATED] Specification of the feature toggles supported by the addon-operator // +optional FeatureToggles AddonOperatorFeatureToggles `json:"featureToggles"` // Specification of the feature toggles supported by the addon-operator in the form of a comma-separated string // +optional FeatureFlags string `json:"featureFlags"` // OCM specific configuration. // Setting this subconfig will enable deeper OCM integration. // e.g. push status reporting, etc. // +optional OCM *AddonOperatorOCM `json:"ocm,omitempty"` }
AddonOperatorSpec defines the desired state of Addon operator.
func (*AddonOperatorSpec) DeepCopy ¶
func (in *AddonOperatorSpec) DeepCopy() *AddonOperatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonOperatorSpec.
func (*AddonOperatorSpec) DeepCopyInto ¶
func (in *AddonOperatorSpec) DeepCopyInto(out *AddonOperatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonOperatorStatus ¶
type AddonOperatorStatus struct { // The most recent generation observed by the controller. ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Conditions is a list of status conditions ths object is in. Conditions []metav1.Condition `json:"conditions,omitempty"` // Timestamp of the last reported status check // +optional LastHeartbeatTime metav1.Time `json:"lastHeartbeatTime"` // DEPRECATED: This field is not part of any API contract // it will go away as soon as kubectl can print conditions! // Human readable status - please use .Conditions from code Phase AddonPhase `json:"phase,omitempty"` }
AddonOperatorStatus defines the observed state of Addon
func (*AddonOperatorStatus) DeepCopy ¶
func (in *AddonOperatorStatus) DeepCopy() *AddonOperatorStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonOperatorStatus.
func (*AddonOperatorStatus) DeepCopyInto ¶
func (in *AddonOperatorStatus) DeepCopyInto(out *AddonOperatorStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonPackageOperator ¶
type AddonPackageOperator struct {
Image string `json:"image"`
}
func (*AddonPackageOperator) DeepCopy ¶
func (in *AddonPackageOperator) DeepCopy() *AddonPackageOperator
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonPackageOperator.
func (*AddonPackageOperator) DeepCopyInto ¶
func (in *AddonPackageOperator) DeepCopyInto(out *AddonPackageOperator)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonPhase ¶
type AddonPhase string
const ( PhasePending AddonPhase = "Pending" PhaseReady AddonPhase = "Ready" PhaseTerminating AddonPhase = "Terminating" PhaseError AddonPhase = "Error" )
Well-known Addon Phases for printing a Status in kubectl, see deprecation notice in AddonStatus for details.
type AddonSecretPropagation ¶
type AddonSecretPropagation struct {
Secrets []AddonSecretPropagationReference `json:"secrets"`
}
func (*AddonSecretPropagation) DeepCopy ¶
func (in *AddonSecretPropagation) DeepCopy() *AddonSecretPropagation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonSecretPropagation.
func (*AddonSecretPropagation) DeepCopyInto ¶
func (in *AddonSecretPropagation) DeepCopyInto(out *AddonSecretPropagation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonSecretPropagationReference ¶
type AddonSecretPropagationReference struct { // Source secret name in the Addon Operator install namespace. SourceSecret corev1.LocalObjectReference `json:"sourceSecret"` // Destination secret name in every Addon namespace. DestinationSecret corev1.LocalObjectReference `json:"destinationSecret"` }
func (*AddonSecretPropagationReference) DeepCopy ¶
func (in *AddonSecretPropagationReference) DeepCopy() *AddonSecretPropagationReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonSecretPropagationReference.
func (*AddonSecretPropagationReference) DeepCopyInto ¶
func (in *AddonSecretPropagationReference) DeepCopyInto(out *AddonSecretPropagationReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonSpec ¶
type AddonSpec struct { // Human readable name for this addon. // +kubebuilder:validation:MinLength=1 DisplayName string `json:"displayName"` // Version of the Addon to deploy. // Used for reporting via status and metrics. // +optional Version string `json:"version,omitempty"` // Pause reconciliation of Addon when set to True // +optional Paused bool `json:"pause"` // Defines a list of Kubernetes Namespaces that belong to this Addon. // Namespaces listed here will be created prior to installation of the Addon and // will be removed from the cluster when the Addon is deleted. // Collisions with existing Namespaces will result in the existing Namespaces // being adopted. Namespaces []AddonNamespace `json:"namespaces,omitempty"` // Labels to be applied to all resources. CommonLabels map[string]string `json:"commonLabels,omitempty"` // Annotations to be applied to all resources. CommonAnnotations map[string]string `json:"commonAnnotations,omitempty"` // Correlation ID for co-relating current AddonCR revision and reported status. // +optional CorrelationID string `json:"correlationID,omitempty"` // Defines how an Addon is installed. // This field is immutable. Install AddonInstallSpec `json:"install"` // Defines whether the addon needs acknowledgment from the underlying // addon's operator before deletion. // +optional DeleteAckRequired bool `json:"deleteAckRequired"` // Defines if the addon needs installation acknowledgment // from its corresponding addon instance. // +optional InstallAckRequired bool `json:"installAckRequired"` // UpgradePolicy enables status reporting via upgrade policies. UpgradePolicy *AddonUpgradePolicy `json:"upgradePolicy,omitempty"` // Defines how an addon is monitored. Monitoring *MonitoringSpec `json:"monitoring,omitempty"` // Settings for propagating secrets from the Addon Operator install namespace into Addon namespaces. SecretPropagation *AddonSecretPropagation `json:"secretPropagation,omitempty"` // defines the PackageOperator image as part of the addon Spec AddonPackageOperator *AddonPackageOperator `json:"packageOperator,omitempty"` }
AddonSpec defines the desired state of Addon.
func (*AddonSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonSpec.
func (*AddonSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonStatus ¶
type AddonStatus struct { // The most recent generation observed by the controller. ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Conditions is a list of status conditions ths object is in. Conditions []metav1.Condition `json:"conditions,omitempty"` // DEPRECATED: This field is not part of any API contract // it will go away as soon as kubectl can print conditions! // Human readable status - please use .Conditions from code Phase AddonPhase `json:"phase,omitempty"` // Tracks last reported upgrade policy status. // +optional UpgradePolicy *AddonUpgradePolicyStatus `json:"upgradePolicy,omitempty"` // Tracks the last addon status reported to OCM. // +optional OCMReportedStatusHash *OCMAddOnStatusHash `json:"ocmReportedStatusHash,omitempty"` // Observed version of the Addon on the cluster, only present when .spec.version is populated. // +optional ObservedVersion string `json:"observedVersion,omitempty"` // Namespaced name of the csv(available) that was last observed. // +optional LastObservedAvailableCSV string `json:"lastObservedAvailableCSV,omitempty"` }
AddonStatus defines the observed state of Addon
func (*AddonStatus) DeepCopy ¶
func (in *AddonStatus) DeepCopy() *AddonStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonStatus.
func (*AddonStatus) DeepCopyInto ¶
func (in *AddonStatus) DeepCopyInto(out *AddonStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonUpgradePolicy ¶
type AddonUpgradePolicy struct { // Upgrade policy id. ID string `json:"id"` }
func (*AddonUpgradePolicy) DeepCopy ¶
func (in *AddonUpgradePolicy) DeepCopy() *AddonUpgradePolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonUpgradePolicy.
func (*AddonUpgradePolicy) DeepCopyInto ¶
func (in *AddonUpgradePolicy) DeepCopyInto(out *AddonUpgradePolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonUpgradePolicyStatus ¶
type AddonUpgradePolicyStatus struct { // Upgrade policy id. ID string `json:"id"` // Upgrade policy value. Value AddonUpgradePolicyValue `json:"value"` // Upgrade Policy Version. // +optional Version string `json:"version,omitempty"` // The most recent generation a status update was based on. ObservedGeneration int64 `json:"observedGeneration"` }
Tracks the last state last reported to the Upgrade Policy endpoint.
func (*AddonUpgradePolicyStatus) DeepCopy ¶
func (in *AddonUpgradePolicyStatus) DeepCopy() *AddonUpgradePolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonUpgradePolicyStatus.
func (*AddonUpgradePolicyStatus) DeepCopyInto ¶
func (in *AddonUpgradePolicyStatus) DeepCopyInto(out *AddonUpgradePolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonUpgradePolicyValue ¶
type AddonUpgradePolicyValue string
const ( AddonUpgradePolicyValueStarted AddonUpgradePolicyValue = "started" AddonUpgradePolicyValueCompleted AddonUpgradePolicyValue = "completed" )
type ClusterSecretReference ¶
type ClusterSecretReference struct { // Name of the secret object. Name string `json:"name"` // Namespace of the secret object. Namespace string `json:"namespace"` }
References a secret on the cluster.
func (*ClusterSecretReference) DeepCopy ¶
func (in *ClusterSecretReference) DeepCopy() *ClusterSecretReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSecretReference.
func (*ClusterSecretReference) DeepCopyInto ¶
func (in *ClusterSecretReference) DeepCopyInto(out *ClusterSecretReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvObject ¶
type EnvObject struct { // Name of the environment variable // +kubebuilder:validation:MinLength=1 Name string `json:"name"` // Value of the environment variable // +kubebuilder:validation:MinLength=1 Value string `json:"value"` }
func (*EnvObject) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvObject.
func (*EnvObject) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MonitoringFederationSpec ¶
type MonitoringFederationSpec struct { // Namespace where the prometheus server is running. // +kubebuilder:validation:MinLength=1 Namespace string `json:"namespace"` // The name of the service port fronting the prometheus server. // +kubebuilder:validation:MinLength=1 PortName string `json:"portName"` // List of series names to federate from the prometheus server. // +listType:set MatchNames []string `json:"matchNames"` // List of labels used to discover the prometheus server(s) to be federated. // +kubebuilder:validation:MinProperties=1 MatchLabels map[string]string `json:"matchLabels"` }
func (*MonitoringFederationSpec) DeepCopy ¶
func (in *MonitoringFederationSpec) DeepCopy() *MonitoringFederationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitoringFederationSpec.
func (*MonitoringFederationSpec) DeepCopyInto ¶
func (in *MonitoringFederationSpec) DeepCopyInto(out *MonitoringFederationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MonitoringSpec ¶
type MonitoringSpec struct { // Configuration parameters to be injected in the ServiceMonitor used for federation. // The target prometheus server found by matchLabels needs to serve service-ca signed TLS traffic // (https://docs.openshift.com/container-platform/4.6/security/certificate_types_descriptions/service-ca-certificates.html), // and it needs to be runing inside the namespace specified by `.monitoring.federation.namespace` // with the service name 'prometheus'. Federation *MonitoringFederationSpec `json:"federation,omitempty"` // Settings For Monitoring Stack // +optional MonitoringStack *MonitoringStackSpec `json:"monitoringStack,omitempty"` }
func (*MonitoringSpec) DeepCopy ¶
func (in *MonitoringSpec) DeepCopy() *MonitoringSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitoringSpec.
func (*MonitoringSpec) DeepCopyInto ¶
func (in *MonitoringSpec) DeepCopyInto(out *MonitoringSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MonitoringStackSpec ¶
type MonitoringStackSpec struct { // Settings for RHOBS Remote Write // +optional RHOBSRemoteWriteConfig *RHOBSRemoteWriteConfigSpec `json:"rhobsRemoteWriteConfig,omitempty"` }
func (*MonitoringStackSpec) DeepCopy ¶
func (in *MonitoringStackSpec) DeepCopy() *MonitoringStackSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitoringStackSpec.
func (*MonitoringStackSpec) DeepCopyInto ¶
func (in *MonitoringStackSpec) DeepCopyInto(out *MonitoringStackSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OCMAddOnStatus ¶
type OCMAddOnStatus struct { // ID of the addon. AddonID string `json:"addonID"` // Correlation ID for co-relating current AddonCR revision and reported status. CorrelationID string `json:"correlationID"` // Version of the addon AddonVersion string `json:"version"` // Reported addon status conditions StatusConditions []AddOnStatusCondition `json:"statusConditions"` // The most recent generation a status update was based on. ObservedGeneration int64 `json:"observedGeneration"` }
Struct used to hash the reported addon status (along with correlationID).
func (*OCMAddOnStatus) DeepCopy ¶
func (in *OCMAddOnStatus) DeepCopy() *OCMAddOnStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCMAddOnStatus.
func (*OCMAddOnStatus) DeepCopyInto ¶
func (in *OCMAddOnStatus) DeepCopyInto(out *OCMAddOnStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OCMAddOnStatusHash ¶
type OCMAddOnStatusHash struct { // Hash of the last reported status. StatusHash string `json:"statusHash"` // The most recent generation a status update was based on. ObservedGeneration int64 `json:"observedGeneration"` }
func (*OCMAddOnStatusHash) DeepCopy ¶
func (in *OCMAddOnStatusHash) DeepCopy() *OCMAddOnStatusHash
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCMAddOnStatusHash.
func (*OCMAddOnStatusHash) DeepCopyInto ¶
func (in *OCMAddOnStatusHash) DeepCopyInto(out *OCMAddOnStatusHash)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RHOBSRemoteWriteConfigSpec ¶
type RHOBSRemoteWriteConfigSpec struct { // RHOBS endpoints where your data is sent to // It varies by environment: // - Staging: https://observatorium-mst.stage.api.openshift.com/api/metrics/v1/<tenant id>/api/v1/receive // - Production: https://observatorium-mst.api.openshift.com/api/metrics/v1/<tenant id>/api/v1/receive URL string `json:"url"` // OAuth2 config for the remote write URL // +optional OAuth2 *monv1.OAuth2 `json:"oauth2,omitempty"` // List of metrics to push to RHOBS. // Any metric not listed here is dropped. Allowlist []string `json:"allowlist,omitempty"` }
func (*RHOBSRemoteWriteConfigSpec) DeepCopy ¶
func (in *RHOBSRemoteWriteConfigSpec) DeepCopy() *RHOBSRemoteWriteConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RHOBSRemoteWriteConfigSpec.
func (*RHOBSRemoteWriteConfigSpec) DeepCopyInto ¶
func (in *RHOBSRemoteWriteConfigSpec) DeepCopyInto(out *RHOBSRemoteWriteConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SubscriptionConfig ¶
type SubscriptionConfig struct { // Array of env variables to be passed to the subscription object. EnvironmentVariables []EnvObject `json:"env"` }
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.