Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the heat v1beta1 API group +kubebuilder:object:generate=true +groupName=heat.openstack.org
Index ¶
- Constants
- Variables
- func SetupDefaults()
- func SetupHeatDefaults(defaults HeatDefaults)
- type APIOverrideSpec
- type Heat
- func (in *Heat) DeepCopy() *Heat
- func (in *Heat) DeepCopyInto(out *Heat)
- func (in *Heat) DeepCopyObject() runtime.Object
- func (r *Heat) Default()
- func (instance Heat) IsReady() bool
- func (instance Heat) RbacConditionsSet(c *condition.Condition)
- func (instance Heat) RbacNamespace() string
- func (instance Heat) RbacResourceName() string
- func (r *Heat) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (instance Heat) StatusConditionsList() condition.Conditions
- func (r *Heat) ValidateCreate() (admission.Warnings, error)
- func (r *Heat) ValidateDelete() (admission.Warnings, error)
- func (r *Heat) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type HeatAPI
- func (in *HeatAPI) DeepCopy() *HeatAPI
- func (in *HeatAPI) DeepCopyInto(out *HeatAPI)
- func (in *HeatAPI) DeepCopyObject() runtime.Object
- func (instance *HeatAPI) GetLastAppliedTopology() *topologyv1.TopoRef
- func (instance *HeatAPI) GetSpecTopologyRef() *topologyv1.TopoRef
- func (instance HeatAPI) IsReady() bool
- func (instance *HeatAPI) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)
- func (instance HeatAPI) StatusConditionsList() condition.Conditions
- type HeatAPIList
- type HeatAPISpec
- type HeatAPIStatus
- type HeatAPITemplate
- type HeatAPITemplateCore
- type HeatCfnAPI
- func (in *HeatCfnAPI) DeepCopy() *HeatCfnAPI
- func (in *HeatCfnAPI) DeepCopyInto(out *HeatCfnAPI)
- func (in *HeatCfnAPI) DeepCopyObject() runtime.Object
- func (instance *HeatCfnAPI) GetLastAppliedTopology() *topologyv1.TopoRef
- func (instance *HeatCfnAPI) GetSpecTopologyRef() *topologyv1.TopoRef
- func (instance HeatCfnAPI) IsReady() bool
- func (instance *HeatCfnAPI) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)
- func (instance *HeatCfnAPI) StatusConditionsList() condition.Conditions
- type HeatCfnAPIList
- type HeatCfnAPISpec
- type HeatCfnAPIStatus
- type HeatCfnAPITemplate
- type HeatCfnAPITemplateCore
- type HeatDefaults
- type HeatEngine
- func (in *HeatEngine) DeepCopy() *HeatEngine
- func (in *HeatEngine) DeepCopyInto(out *HeatEngine)
- func (in *HeatEngine) DeepCopyObject() runtime.Object
- func (instance *HeatEngine) GetLastAppliedTopology() *topologyv1.TopoRef
- func (instance *HeatEngine) GetSpecTopologyRef() *topologyv1.TopoRef
- func (instance HeatEngine) IsReady() bool
- func (instance *HeatEngine) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)
- func (instance HeatEngine) StatusConditionsList() condition.Conditions
- type HeatEngineList
- type HeatEngineSpec
- type HeatEngineStatus
- type HeatEngineTemplate
- type HeatEngineTemplateCore
- type HeatList
- type HeatServiceTemplate
- type HeatSpec
- func (in *HeatSpec) DeepCopy() *HeatSpec
- func (in *HeatSpec) DeepCopyInto(out *HeatSpec)
- func (spec *HeatSpec) Default()
- func (r *HeatSpec) ValidateCreate(basePath *field.Path, namespace string) field.ErrorList
- func (spec *HeatSpec) ValidateHeatTopology(basePath *field.Path, namespace string) field.ErrorList
- func (r *HeatSpec) ValidateUpdate(old HeatSpec, basePath *field.Path, annotations map[string]string, ...) field.ErrorList
- type HeatSpecBase
- type HeatSpecCore
- func (in *HeatSpecCore) DeepCopy() *HeatSpecCore
- func (in *HeatSpecCore) DeepCopyInto(out *HeatSpecCore)
- func (spec *HeatSpecCore) Default()
- func (spec *HeatSpecCore) SetDefaultRouteAnnotations(annotations map[string]string)
- func (r *HeatSpecCore) ValidateCreate(basePath *field.Path, namespace string) field.ErrorList
- func (spec *HeatSpecCore) ValidateHeatTopology(basePath *field.Path, namespace string) field.ErrorList
- func (r *HeatSpecCore) ValidateUpdate(old HeatSpecCore, basePath *field.Path, namespace string) field.ErrorList
- type HeatStatus
- type HeatTemplate
- type PasswordSelector
Constants ¶
const ( // HeatAPIReadyCondition ... HeatAPIReadyCondition condition.Type = "HeatAPIReady" // HeatCfnAPIReadyCondition ... HeatCfnAPIReadyCondition condition.Type = "HeatCfnAPIReady" // HeatEngineReadyCondition ... HeatEngineReadyCondition condition.Type = "HeatEngineReady" // HeatStackDomainReadyCondition ... HeatStackDomainReadyCondition condition.Type = "HeatStackDomainReady" )
const ( // // HeatAPIReady condition messages // // HeatAPIReadyInitMessage ... HeatAPIReadyInitMessage = "HeatAPI not started" // HeatAPIReadyErrorMessage ... HeatAPIReadyErrorMessage = "HeatAPI error occured %s" // // HeatCfnAPIReady condition messages // // HeatCfnAPIReadyInitMessage ... HeatCfnAPIReadyInitMessage = "HeatCfnAPI not started" // HeatCfnAPIReadyErrorMessage ... HeatCfnAPIReadyErrorMessage = "HeatCfnAPI error occured %s" // // HeatEngineReady condition messages // // HeatEngineReadyInitMessage ... HeatEngineReadyInitMessage = "HeatEngine not started" // HeatEngineReadyErrorMessage ... HeatEngineReadyErrorMessage = "HeatEngine error occured %s" // // HeatStackDomainReady condition messages // // HeatStackDomainReadyInitMessage HeatStackDomainReadyInitMessage = "HeatStackDomain not started" // HeatStackDomainReadyRunningMessage HeatStackDomainReadyRunningMessage = "HeatStackDomain creation in progress" // HeatStackDomainReadyMessage HeatStackDomainReadyMessage = "HeatStackDomain successfully created" // HeatStackDomainReadyErrorMessage HeatStackDomainReadyErrorMessage = "HeatStackDomain error occured %s" )
Common Messages used by API objects.
const ( // DbSyncHash hash DbSyncHash = "dbsync" // DeploymentHash hash used to detect changes DeploymentHash = "deployment" // HeatAPIContainerImage - default fall-back container image for HeatAPI if associated env var not provided HeatAPIContainerImage = "quay.io/podified-antelope-centos9/openstack-heat-api:current-podified" // HeatCfnAPIContainerImage - default fall-back container image for HeatCfnAPI if associated env var not provided HeatCfnAPIContainerImage = "quay.io/podified-antelope-centos9/openstack-heat-api-cfn:current-podified" // HeatEngineContainerImage - default fall-back container image for HeatEngine if associated env var not provided HeatEngineContainerImage = "quay.io/podified-antelope-centos9/openstack-heat-engine:current-podified" // HeatDatabaseMigrationAnnotation - Allows users to bypass the webhook validations for changes to databaseInstance HeatDatabaseMigrationAnnotation = "heat.openstack.org/database-migration" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "heat.openstack.org", Version: "v1beta1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func SetupDefaults ¶
func SetupDefaults()
SetupDefaults - initializes any CRD field defaults based on environment variables (the defaulting mechanism itself is implemented via webhooks)
func SetupHeatDefaults ¶
func SetupHeatDefaults(defaults HeatDefaults)
SetupHeatDefaults - initialize Heat spec defaults for use with either internal or external webhooks
Types ¶
type APIOverrideSpec ¶ added in v0.2.0
type APIOverrideSpec struct {
// Override configuration for the Service created to serve traffic to the cluster.
// The key must be the endpoint type (public, internal)
Service map[service.Endpoint]service.RoutedOverrideSpec `json:"service,omitempty"`
}
APIOverrideSpec to override the generated manifest of several child resources.
func (*APIOverrideSpec) DeepCopy ¶ added in v0.2.0
func (in *APIOverrideSpec) DeepCopy() *APIOverrideSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIOverrideSpec.
func (*APIOverrideSpec) DeepCopyInto ¶ added in v0.2.0
func (in *APIOverrideSpec) DeepCopyInto(out *APIOverrideSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Heat ¶
type Heat struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec HeatSpec `json:"spec,omitempty"`
Status HeatStatus `json:"status,omitempty"`
}
Heat is the Schema for the heats API
func (*Heat) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Heat.
func (*Heat) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Heat) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Heat) Default ¶
func (r *Heat) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (Heat) RbacConditionsSet ¶
RbacConditionsSet - set the conditions for the rbac object
func (Heat) RbacNamespace ¶
RbacNamespace - return the namespace
func (Heat) RbacResourceName ¶
RbacResourceName - return the name to be used for rbac objects (serviceaccount, role, rolebinding)
func (*Heat) SetupWebhookWithManager ¶
SetupWebhookWithManager sets up the webhook with the Manager
func (Heat) StatusConditionsList ¶ added in v0.5.0
func (instance Heat) StatusConditionsList() condition.Conditions
StatusConditionsList - Returns a list of conditions relevant to our Controller.
func (*Heat) ValidateCreate ¶
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*Heat) ValidateDelete ¶
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
type HeatAPI ¶
type HeatAPI struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec HeatAPISpec `json:"spec,omitempty"`
Status HeatAPIStatus `json:"status,omitempty"`
}
HeatAPI ...
func (*HeatAPI) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatAPI.
func (*HeatAPI) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HeatAPI) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*HeatAPI) GetLastAppliedTopology ¶ added in v0.6.0
func (instance *HeatAPI) GetLastAppliedTopology() *topologyv1.TopoRef
GetLastAppliedTopology - Returns the LastAppliedTopology Set in the Status
func (*HeatAPI) GetSpecTopologyRef ¶ added in v0.6.0
func (instance *HeatAPI) GetSpecTopologyRef() *topologyv1.TopoRef
GetSpecTopologyRef - Returns the LastAppliedTopology Set in the Status
func (*HeatAPI) SetLastAppliedTopology ¶ added in v0.6.0
func (instance *HeatAPI) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)
SetLastAppliedTopology - Sets the LastAppliedTopology value in the Status
func (HeatAPI) StatusConditionsList ¶ added in v0.5.0
func (instance HeatAPI) StatusConditionsList() condition.Conditions
StatusConditionsList - Returns a list of conditions relevant to our Controller.
type HeatAPIList ¶
type HeatAPIList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []HeatAPI `json:"items"`
}
HeatAPIList contains a list of HeatAPI
func (*HeatAPIList) DeepCopy ¶
func (in *HeatAPIList) DeepCopy() *HeatAPIList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatAPIList.
func (*HeatAPIList) DeepCopyInto ¶
func (in *HeatAPIList) DeepCopyInto(out *HeatAPIList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HeatAPIList) DeepCopyObject ¶
func (in *HeatAPIList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type HeatAPISpec ¶
type HeatAPISpec struct {
// +kubebuilder:validation:Required
// DatabaseHostname - Heat Database Hostname
DatabaseHostname string `json:"databaseHostname"`
// +kubebuilder:validation:Required
// TransportURLSecret - Secret containing RabbitMQ transportURL
TransportURLSecret string `json:"transportURLSecret"`
// +kubebuilder:validation:Required
// ServiceAccount - service account name used internally to provide Heat services the default SA name
ServiceAccount string `json:"serviceAccount"`
// Common input parameters for all Heat services
HeatTemplate `json:",inline"`
// Input parameters for the Heat API service
HeatAPITemplate `json:",inline"`
}
HeatAPISpec defines the desired state of HeatAPI
func (*HeatAPISpec) DeepCopy ¶
func (in *HeatAPISpec) DeepCopy() *HeatAPISpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatAPISpec.
func (*HeatAPISpec) DeepCopyInto ¶
func (in *HeatAPISpec) DeepCopyInto(out *HeatAPISpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatAPIStatus ¶
type HeatAPIStatus struct {
// Map of hashes to track e.g. job status
Hash map[string]string `json:"hash,omitempty"`
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
// ReadyCount of HeatAPI instances
ReadyCount int32 `json:"readyCount,omitempty"`
// ObservedGeneration - the most recent generation observed for this
// service. If the observed generation is less than the spec generation,
// then the controller has not processed the latest changes injected by
// the opentack-operator in the top-level CR (e.g. the ContainerImage)
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`
}
HeatAPIStatus defines the observed state of HeatAPI
func (*HeatAPIStatus) DeepCopy ¶
func (in *HeatAPIStatus) DeepCopy() *HeatAPIStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatAPIStatus.
func (*HeatAPIStatus) DeepCopyInto ¶
func (in *HeatAPIStatus) DeepCopyInto(out *HeatAPIStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatAPITemplate ¶
type HeatAPITemplate struct {
// +kubebuilder:validation:Required
// ContainerImage - Container Image URL
ContainerImage string `json:"containerImage"`
HeatAPITemplateCore `json:",inline"`
}
HeatAPITemplate defines the input parameters for the Heat API service
func (*HeatAPITemplate) DeepCopy ¶
func (in *HeatAPITemplate) DeepCopy() *HeatAPITemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatAPITemplate.
func (*HeatAPITemplate) DeepCopyInto ¶
func (in *HeatAPITemplate) DeepCopyInto(out *HeatAPITemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatAPITemplateCore ¶ added in v0.4.0
type HeatAPITemplateCore struct {
// +kubebuilder:validation:Optional
// Override, provides the ability to override the generated manifest of several child resources.
Override APIOverrideSpec `json:"override,omitempty"`
// +kubebuilder:validation:Optional
// +operator-sdk:csv:customresourcedefinitions:type=spec
// TLS - Parameters related to the TLS
TLS tls.API `json:"tls,omitempty"`
// Common input parameters for all Heat services
HeatServiceTemplate `json:",inline"`
}
HeatAPITemplateCore -
func (*HeatAPITemplateCore) DeepCopy ¶ added in v0.4.0
func (in *HeatAPITemplateCore) DeepCopy() *HeatAPITemplateCore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatAPITemplateCore.
func (*HeatAPITemplateCore) DeepCopyInto ¶ added in v0.4.0
func (in *HeatAPITemplateCore) DeepCopyInto(out *HeatAPITemplateCore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatCfnAPI ¶
type HeatCfnAPI struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec HeatCfnAPISpec `json:"spec,omitempty"`
Status HeatCfnAPIStatus `json:"status,omitempty"`
}
HeatCfnAPI ...
func (*HeatCfnAPI) DeepCopy ¶
func (in *HeatCfnAPI) DeepCopy() *HeatCfnAPI
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatCfnAPI.
func (*HeatCfnAPI) DeepCopyInto ¶
func (in *HeatCfnAPI) DeepCopyInto(out *HeatCfnAPI)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HeatCfnAPI) DeepCopyObject ¶
func (in *HeatCfnAPI) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*HeatCfnAPI) GetLastAppliedTopology ¶ added in v0.6.0
func (instance *HeatCfnAPI) GetLastAppliedTopology() *topologyv1.TopoRef
GetLastAppliedTopology - Returns the LastAppliedTopology Set in the Status
func (*HeatCfnAPI) GetSpecTopologyRef ¶ added in v0.6.0
func (instance *HeatCfnAPI) GetSpecTopologyRef() *topologyv1.TopoRef
GetSpecTopologyRef - Returns the LastAppliedTopology Set in the Status
func (HeatCfnAPI) IsReady ¶
func (instance HeatCfnAPI) IsReady() bool
IsReady - returns true if HeatCfnAPI is reconciled successfully
func (*HeatCfnAPI) SetLastAppliedTopology ¶ added in v0.6.0
func (instance *HeatCfnAPI) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)
SetLastAppliedTopology - Sets the LastAppliedTopology value in the Status
func (*HeatCfnAPI) StatusConditionsList ¶ added in v0.5.0
func (instance *HeatCfnAPI) StatusConditionsList() condition.Conditions
StatusConditionsList - Returns a list of conditions relevant to our Controller.
type HeatCfnAPIList ¶
type HeatCfnAPIList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []HeatCfnAPI `json:"items"`
}
HeatCfnAPIList contains a list of HeatCfnAPI
func (*HeatCfnAPIList) DeepCopy ¶
func (in *HeatCfnAPIList) DeepCopy() *HeatCfnAPIList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatCfnAPIList.
func (*HeatCfnAPIList) DeepCopyInto ¶
func (in *HeatCfnAPIList) DeepCopyInto(out *HeatCfnAPIList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HeatCfnAPIList) DeepCopyObject ¶
func (in *HeatCfnAPIList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type HeatCfnAPISpec ¶
type HeatCfnAPISpec struct {
// +kubebuilder:validation:Required
// DatabaseHostname - Heat Database Hostname
DatabaseHostname string `json:"databaseHostname"`
// +kubebuilder:validation:Required
// TransportURLSecret - Secret containing RabbitMQ transportURL
TransportURLSecret string `json:"transportURLSecret"`
// +kubebuilder:validation:Required
// ServiceAccount - service account name used internally to provide Heat services the default SA name
ServiceAccount string `json:"serviceAccount"`
// Common input parameters for all Heat services
HeatTemplate `json:",inline"`
// Input parameters for the Heat Cfn API service
HeatCfnAPITemplate `json:",inline"`
}
HeatCfnAPISpec defines the desired state of HeatCfnAPI
func (*HeatCfnAPISpec) DeepCopy ¶
func (in *HeatCfnAPISpec) DeepCopy() *HeatCfnAPISpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatCfnAPISpec.
func (*HeatCfnAPISpec) DeepCopyInto ¶
func (in *HeatCfnAPISpec) DeepCopyInto(out *HeatCfnAPISpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatCfnAPIStatus ¶
type HeatCfnAPIStatus struct {
// Map of hashes to track e.g. job status
Hash map[string]string `json:"hash,omitempty"`
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
// ReadyCount of HeatCfnAPI instances
ReadyCount int32 `json:"readyCount,omitempty"`
// ObservedGeneration - the most recent generation observed for this
// service. If the observed generation is less than the spec generation,
// then the controller has not processed the latest changes injected by
// the opentack-operator in the top-level CR (e.g. the ContainerImage)
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`
}
HeatCfnAPIStatus defines the observed state of HeatCfnAPI
func (*HeatCfnAPIStatus) DeepCopy ¶
func (in *HeatCfnAPIStatus) DeepCopy() *HeatCfnAPIStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatCfnAPIStatus.
func (*HeatCfnAPIStatus) DeepCopyInto ¶
func (in *HeatCfnAPIStatus) DeepCopyInto(out *HeatCfnAPIStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatCfnAPITemplate ¶
type HeatCfnAPITemplate struct {
// +kubebuilder:validation:Required
// ContainerImage - Container Image URL
ContainerImage string `json:"containerImage"`
// Common input parameters for all Heat services
HeatCfnAPITemplateCore `json:",inline"`
}
HeatCfnAPITemplate defines the input parameters for the Heat Cfn API service
func (*HeatCfnAPITemplate) DeepCopy ¶
func (in *HeatCfnAPITemplate) DeepCopy() *HeatCfnAPITemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatCfnAPITemplate.
func (*HeatCfnAPITemplate) DeepCopyInto ¶
func (in *HeatCfnAPITemplate) DeepCopyInto(out *HeatCfnAPITemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatCfnAPITemplateCore ¶ added in v0.4.0
type HeatCfnAPITemplateCore struct {
// +kubebuilder:validation:Optional
// Override, provides the ability to override the generated manifest of several child resources.
Override APIOverrideSpec `json:"override,omitempty"`
// +kubebuilder:validation:Optional
// +operator-sdk:csv:customresourcedefinitions:type=spec
// TLS - Parameters related to the TLS
TLS tls.API `json:"tls,omitempty"`
// Common input parameters for all Heat services
HeatServiceTemplate `json:",inline"`
}
HeatCfnAPITemplateCore -
func (*HeatCfnAPITemplateCore) DeepCopy ¶ added in v0.4.0
func (in *HeatCfnAPITemplateCore) DeepCopy() *HeatCfnAPITemplateCore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatCfnAPITemplateCore.
func (*HeatCfnAPITemplateCore) DeepCopyInto ¶ added in v0.4.0
func (in *HeatCfnAPITemplateCore) DeepCopyInto(out *HeatCfnAPITemplateCore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatDefaults ¶
type HeatDefaults struct {
APIContainerImageURL string
CfnAPIContainerImageURL string
EngineContainerImageURL string
}
HeatDefaults -
func (*HeatDefaults) DeepCopy ¶
func (in *HeatDefaults) DeepCopy() *HeatDefaults
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatDefaults.
func (*HeatDefaults) DeepCopyInto ¶
func (in *HeatDefaults) DeepCopyInto(out *HeatDefaults)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatEngine ¶
type HeatEngine struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec HeatEngineSpec `json:"spec,omitempty"`
Status HeatEngineStatus `json:"status,omitempty"`
}
HeatEngine defined.
func (*HeatEngine) DeepCopy ¶
func (in *HeatEngine) DeepCopy() *HeatEngine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatEngine.
func (*HeatEngine) DeepCopyInto ¶
func (in *HeatEngine) DeepCopyInto(out *HeatEngine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HeatEngine) DeepCopyObject ¶
func (in *HeatEngine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*HeatEngine) GetLastAppliedTopology ¶ added in v0.6.0
func (instance *HeatEngine) GetLastAppliedTopology() *topologyv1.TopoRef
GetLastAppliedTopology - Returns the LastAppliedTopology Set in the Status
func (*HeatEngine) GetSpecTopologyRef ¶ added in v0.6.0
func (instance *HeatEngine) GetSpecTopologyRef() *topologyv1.TopoRef
GetSpecTopologyRef - Returns the LastAppliedTopology Set in the Status
func (HeatEngine) IsReady ¶
func (instance HeatEngine) IsReady() bool
IsReady - returns true if HeatEngine is reconciled successfully
func (*HeatEngine) SetLastAppliedTopology ¶ added in v0.6.0
func (instance *HeatEngine) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)
SetLastAppliedTopology - Sets the LastAppliedTopology value in the Status
func (HeatEngine) StatusConditionsList ¶ added in v0.5.0
func (instance HeatEngine) StatusConditionsList() condition.Conditions
StatusConditionsList - Returns a list of conditions relevant to our Controller.
type HeatEngineList ¶
type HeatEngineList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []HeatEngine `json:"items"`
}
HeatEngineList contains a list of HeatEngine
func (*HeatEngineList) DeepCopy ¶
func (in *HeatEngineList) DeepCopy() *HeatEngineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatEngineList.
func (*HeatEngineList) DeepCopyInto ¶
func (in *HeatEngineList) DeepCopyInto(out *HeatEngineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HeatEngineList) DeepCopyObject ¶
func (in *HeatEngineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type HeatEngineSpec ¶
type HeatEngineSpec struct {
// +kubebuilder:validation:Required
// DatabaseHostname - Heat Database Hostname
DatabaseHostname string `json:"databaseHostname"`
// +kubebuilder:validation:Required
// TransportURLSecret - Secret containing RabbitMQ transportURL
TransportURLSecret string `json:"transportURLSecret"`
// +kubebuilder:validation:Required
// ServiceAccount - service account name used internally to provide Heat services the default SA name
ServiceAccount string `json:"serviceAccount"`
// +kubebuilder:validation:Optional
// +operator-sdk:csv:customresourcedefinitions:type=spec
// TLS - Parameters related to the TLS
TLS tls.Ca `json:"tls,omitempty"`
// Common input parameters for all Heat services
HeatTemplate `json:",inline"`
// Input parameters for the Heat Engine service
HeatEngineTemplate `json:",inline"`
}
HeatEngineSpec defines the desired state of HeatEngine
func (*HeatEngineSpec) DeepCopy ¶
func (in *HeatEngineSpec) DeepCopy() *HeatEngineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatEngineSpec.
func (*HeatEngineSpec) DeepCopyInto ¶
func (in *HeatEngineSpec) DeepCopyInto(out *HeatEngineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatEngineStatus ¶
type HeatEngineStatus struct {
// Map of hashes to track e.g. job status
Hash map[string]string `json:"hash,omitempty"`
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
// ReadyCount of HeatEngine instances
ReadyCount int32 `json:"readyCount,omitempty"`
// ObservedGeneration - the most recent generation observed for this
// service. If the observed generation is less than the spec generation,
// then the controller has not processed the latest changes injected by
// the opentack-operator in the top-level CR (e.g. the ContainerImage)
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`
}
HeatEngineStatus defines the observed state of HeatEngine
func (*HeatEngineStatus) DeepCopy ¶
func (in *HeatEngineStatus) DeepCopy() *HeatEngineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatEngineStatus.
func (*HeatEngineStatus) DeepCopyInto ¶
func (in *HeatEngineStatus) DeepCopyInto(out *HeatEngineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatEngineTemplate ¶
type HeatEngineTemplate struct {
// +kubebuilder:validation:Required
// ContainerImage - Container Image URL
ContainerImage string `json:"containerImage"`
HeatEngineTemplateCore `json:",inline"`
}
HeatEngineTemplate defines the input parameters for the Heat Engine service
func (*HeatEngineTemplate) DeepCopy ¶
func (in *HeatEngineTemplate) DeepCopy() *HeatEngineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatEngineTemplate.
func (*HeatEngineTemplate) DeepCopyInto ¶
func (in *HeatEngineTemplate) DeepCopyInto(out *HeatEngineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatEngineTemplateCore ¶ added in v0.4.0
type HeatEngineTemplateCore struct {
// Common input parameters for all Heat services
HeatServiceTemplate `json:",inline"`
}
HeatEngineTemplate -
func (*HeatEngineTemplateCore) DeepCopy ¶ added in v0.4.0
func (in *HeatEngineTemplateCore) DeepCopy() *HeatEngineTemplateCore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatEngineTemplateCore.
func (*HeatEngineTemplateCore) DeepCopyInto ¶ added in v0.4.0
func (in *HeatEngineTemplateCore) DeepCopyInto(out *HeatEngineTemplateCore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatList ¶
type HeatList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Heat `json:"items"`
}
HeatList contains a list of Heat
func (*HeatList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatList.
func (*HeatList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HeatList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type HeatServiceTemplate ¶
type HeatServiceTemplate struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default=1
// +kubebuilder:validation:Maximum=32
// +kubebuilder:validation:Minimum=0
// Replicas -
Replicas *int32 `json:"replicas"`
// +kubebuilder:validation:Optional
// ConfigOverwrite - interface to overwrite default config files like e.g. policy.json.
// But can also be used to add additional files. Those get added to the service config dir in /etc/<service> .
// TODO: -> implement
DefaultConfigOverwrite map[string]string `json:"defaultConfigOverwrite,omitempty"`
// +kubebuilder:validation:Optional
// NodeSelector to target subset of worker nodes for running the service
NodeSelector *map[string]string `json:"nodeSelector,omitempty"`
// +kubebuilder:validation:Optional
// CustomServiceConfig - customize the service config using this parameter to change service defaults,
// or overwrite rendered information using raw OpenStack config format. The content gets added to
// to /etc/heat/heat.conf.d directory as 02-custom-service.conf file.
CustomServiceConfig string `json:"customServiceConfig,omitempty"`
// +kubebuilder:validation:Optional
// CustomServiceConfigSecrets - customize the service config using this parameter to specify Secrets
// that contain sensitive service config data. The content of each Secret gets added to the
// /etc/heat/heat.conf.d directory as a custom config file.
CustomServiceConfigSecrets []string `json:"customServiceConfigSecrets,omitempty"`
// +kubebuilder:validation:Optional
// Resources - Compute Resources required by this service (Limits/Requests).
// https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
// +kubebuilder:validation:Optional
// TopologyRef to apply the Topology defined by the associated CR referenced
// by name
TopologyRef *topologyv1.TopoRef `json:"topologyRef,omitempty"`
}
HeatServiceTemplate -
func (*HeatServiceTemplate) DeepCopy ¶
func (in *HeatServiceTemplate) DeepCopy() *HeatServiceTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatServiceTemplate.
func (*HeatServiceTemplate) DeepCopyInto ¶
func (in *HeatServiceTemplate) DeepCopyInto(out *HeatServiceTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatSpec ¶
type HeatSpec struct {
HeatSpecBase `json:",inline"`
// +kubebuilder:validation:Required
// HeatAPI - Spec definition for the API service of this Heat deployment
HeatAPI HeatAPITemplate `json:"heatAPI"`
// +kubebuilder:validation:Required
// HeatCfnAPI - Spec definition for the CfnAPI service of this Heat deployment
HeatCfnAPI HeatCfnAPITemplate `json:"heatCfnAPI"`
// +kubebuilder:validation:Required
// HeatEngine - Spec definition for the Engine service of this Heat deployment
HeatEngine HeatEngineTemplate `json:"heatEngine"`
}
HeatSpec defines the desired state of Heat
func (*HeatSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatSpec.
func (*HeatSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HeatSpec) Default ¶
func (spec *HeatSpec) Default()
Default - set defaults for this Heat spec
func (*HeatSpec) ValidateCreate ¶ added in v0.4.0
ValidateCreate - Exported function wrapping non-exported validate functions, this function can be called externally to validate an heat spec.
func (*HeatSpec) ValidateHeatTopology ¶ added in v0.6.0
ValidateHeatTopology - Returns an ErrorList if the Topology is referenced on a different namespace
func (*HeatSpec) ValidateUpdate ¶ added in v0.4.0
func (r *HeatSpec) ValidateUpdate(old HeatSpec, basePath *field.Path, annotations map[string]string, namespace string) field.ErrorList
ValidateUpdate - Exported function wrapping non-exported validate functions, this function can be called externally to validate Heat spec.
type HeatSpecBase ¶ added in v0.4.0
type HeatSpecBase struct {
// +kubebuilder:validation:Required
// +kubebuilder:default=openstack
// MariaDB instance name.
// Right now required by the maridb-operator to get the credentials from the instance to create the DB.
// Might not be required in future.
DatabaseInstance string `json:"databaseInstance"`
// +kubebuilder:validation:Required
// +kubebuilder:default=memcached
// Memcached instance name.
MemcachedInstance string `json:"memcachedInstance"`
// +kubebuilder:validation:Required
// +kubebuilder:default=rabbitmq
// RabbitMQ instance name
// Needed to request a transportURL that is created and used in Heat
RabbitMqClusterName string `json:"rabbitMqClusterName"`
// +kubebuilder:validation:Optional
// CustomServiceConfig - customize the service config using this parameter to change service defaults,
// or overwrite rendered information using raw OpenStack config format. The content gets added to
// to /etc/heat/heat.conf.d directory as 01-custom.conf file.
CustomServiceConfig string `json:"customServiceConfig,omitempty"`
// +kubebuilder:validation:Optional
// CustomServiceConfigSecrets - customize the service config using this parameter to specify Secrets
// that contain sensitive service config data. The content of each Secret gets added to the
// /etc/heat/heat.conf.d directory as a custom config file.
CustomServiceConfigSecrets []string `json:"customServiceConfigSecrets,omitempty"`
// +kubebuilder:validation:Optional
// +kubebuilder:default=false
// PreserveJobs - do not delete jobs after they finished e.g. to check logs
PreserveJobs bool `json:"preserveJobs"`
// +kubebuilder:validation:Optional
// ConfigOverwrite - interface to overwrite default config files like e.g. policy.json.
// But can also be used to add additional files. Those get added to the service config dir in /etc/<service> .
// TODO: -> implement
DefaultConfigOverwrite map[string]string `json:"defaultConfigOverwrite,omitempty"`
// +kubebuilder:validation:Optional
// NodeSelector to target subset of worker nodes for running the Heat services
NodeSelector *map[string]string `json:"nodeSelector,omitempty"`
// +kubebuilder:validation:Optional
// +kubebuilder:default=600
// +kubebuilder:validation:Minimum=60
// APITimeout for Route and Apache
APITimeout int `json:"apiTimeout"`
// Common input parameters for all Heat services
HeatTemplate `json:",inline"`
// +kubebuilder:validation:Optional
// TopologyRef to apply the Topology defined by the associated CR referenced
// by name
TopologyRef *topologyv1.TopoRef `json:"topologyRef,omitempty"`
}
HeatSpec defines the desired state of Heat
func (*HeatSpecBase) DeepCopy ¶ added in v0.4.0
func (in *HeatSpecBase) DeepCopy() *HeatSpecBase
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatSpecBase.
func (*HeatSpecBase) DeepCopyInto ¶ added in v0.4.0
func (in *HeatSpecBase) DeepCopyInto(out *HeatSpecBase)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatSpecCore ¶ added in v0.4.0
type HeatSpecCore struct {
HeatSpecBase `json:",inline"`
// +kubebuilder:validation:Required
// HeatAPI - Spec definition for the API service of this Heat deployment
HeatAPI HeatAPITemplateCore `json:"heatAPI"`
// +kubebuilder:validation:Required
// HeatCfnAPI - Spec definition for the CfnAPI service of this Heat deployment
HeatCfnAPI HeatCfnAPITemplateCore `json:"heatCfnAPI"`
// +kubebuilder:validation:Required
// HeatEngine - Spec definition for the Engine service of this Heat deployment
HeatEngine HeatEngineTemplateCore `json:"heatEngine"`
}
HeatSpecCore defines the desired state of Heat, for use with OpenStackControlplane (no containerImages)
func (*HeatSpecCore) DeepCopy ¶ added in v0.4.0
func (in *HeatSpecCore) DeepCopy() *HeatSpecCore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatSpecCore.
func (*HeatSpecCore) DeepCopyInto ¶ added in v0.4.0
func (in *HeatSpecCore) DeepCopyInto(out *HeatSpecCore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HeatSpecCore) Default ¶ added in v0.4.0
func (spec *HeatSpecCore) Default()
Default - set defaults for this Heat spec core. This version is called by the OpenStackControlplane
func (*HeatSpecCore) SetDefaultRouteAnnotations ¶ added in v0.6.0
func (spec *HeatSpecCore) SetDefaultRouteAnnotations(annotations map[string]string)
SetDefaultRouteAnnotations sets HAProxy timeout values of the route NOTE: it is used by ctlplane webhook on openstack-operator
func (*HeatSpecCore) ValidateCreate ¶ added in v0.4.0
func (*HeatSpecCore) ValidateHeatTopology ¶ added in v0.6.0
func (spec *HeatSpecCore) ValidateHeatTopology(basePath *field.Path, namespace string) field.ErrorList
ValidateHeatTopology - Returns an ErrorList if the Topology is referenced on a different namespace
func (*HeatSpecCore) ValidateUpdate ¶ added in v0.4.0
func (r *HeatSpecCore) ValidateUpdate(old HeatSpecCore, basePath *field.Path, namespace string) field.ErrorList
type HeatStatus ¶
type HeatStatus struct {
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
// Map of hashes to track e.g. job status
Hash map[string]string `json:"hash,omitempty"`
// Heat Database Hostname
DatabaseHostname string `json:"databaseHostname,omitempty"`
// TransportURLSecret - Secret containing RabbitMQ transportURL
TransportURLSecret string `json:"transportURLSecret,omitempty"`
// ReadyCount of Heat API instance
HeatAPIReadyCount int32 `json:"heatApiReadyCount,omitempty"`
// ReadyCount of Heat CfnAPI instance
HeatCfnAPIReadyCount int32 `json:"heatCfnApiReadyCount,omitempty"`
// ReadyCount of Heat Engine instance
HeatEngineReadyCount int32 `json:"heatEngineReadyCount,omitempty"`
// ObservedGeneration - the most recent generation observed for this
// service. If the observed generation is less than the spec generation,
// then the controller has not processed the latest changes injected by
// the opentack-operator in the top-level CR (e.g. the ContainerImage)
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}
HeatStatus defines the observed state of Heat
func (*HeatStatus) DeepCopy ¶
func (in *HeatStatus) DeepCopy() *HeatStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatStatus.
func (*HeatStatus) DeepCopyInto ¶
func (in *HeatStatus) DeepCopyInto(out *HeatStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeatTemplate ¶
type HeatTemplate struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default=heat
// ServiceUser - optional username used for this service to register in heat
ServiceUser string `json:"serviceUser"`
// +kubebuilder:validation:Optional
// +kubebuilder:default=heat
// DatabaseAccount - optional MariaDBAccount used for heat DB, defaults to heat.
DatabaseAccount string `json:"databaseAccount"`
// +kubebuilder:validation:Required
// Secret containing OpenStack password information for heat HeatDatabasePassword, HeatPassword
// and HeatAuthEncryptionKey
Secret string `json:"secret"`
// +kubebuilder:validation:Optional
// +kubebuilder:default={service: HeatPassword, authEncryptionKey: HeatAuthEncryptionKey}
// PasswordSelectors - Selectors to identify the DB and ServiceUser password from the Secret
PasswordSelectors PasswordSelector `json:"passwordSelectors"`
}
HeatTemplate -
func (*HeatTemplate) DeepCopy ¶
func (in *HeatTemplate) DeepCopy() *HeatTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeatTemplate.
func (*HeatTemplate) DeepCopyInto ¶
func (in *HeatTemplate) DeepCopyInto(out *HeatTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PasswordSelector ¶
type PasswordSelector struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default="HeatPassword"
// Service - Selector to get the heat service password from the Secret
Service string `json:"service"`
// +kubebuilder:validation:Optional
// +kubebuilder:default="HeatAuthEncryptionKey"
// AuthEncryptionKey - Selector to get the heat auth encryption key from the Secret
AuthEncryptionKey string `json:"authEncryptionKey"`
// +kubebuilder:validation:Optional
// +kubebuilder:default="HeatStackDomainAdminPassword"
// StackDomainAdminPassword - Selector to get the heat stack domain admin password from the Secret
StackDomainAdminPassword string `json:"stackDomainAdminPassword"`
}
PasswordSelector ..
func (*PasswordSelector) DeepCopy ¶
func (in *PasswordSelector) DeepCopy() *PasswordSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PasswordSelector.
func (*PasswordSelector) DeepCopyInto ¶
func (in *PasswordSelector) DeepCopyInto(out *PasswordSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.