Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the dataplane v1beta1 API group +kubebuilder:object:generate=true +groupName=dataplane.openstack.org
Index ¶
- Constants
- Variables
- func NodeHostNameIsFQDN(hostname string) bool
- func SetupDefaults()
- type AnsibleEESpec
- type AnsibleOpts
- type ConfigMapEnvSource
- type DataSource
- type LocalObjectReference
- type NodeSection
- type NodeTemplate
- type OpenStackDataPlaneDeployment
- func (in *OpenStackDataPlaneDeployment) DeepCopy() *OpenStackDataPlaneDeployment
- func (in *OpenStackDataPlaneDeployment) DeepCopyInto(out *OpenStackDataPlaneDeployment)
- func (in *OpenStackDataPlaneDeployment) DeepCopyObject() runtime.Object
- func (r *OpenStackDataPlaneDeployment) Default()
- func (instance *OpenStackDataPlaneDeployment) InitConditions()
- func (instance *OpenStackDataPlaneDeployment) InitHashesAndImages()
- func (instance OpenStackDataPlaneDeployment) IsReady() bool
- func (r *OpenStackDataPlaneDeployment) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *OpenStackDataPlaneDeployment) ValidateCreate() (admission.Warnings, error)
- func (r *OpenStackDataPlaneDeployment) ValidateDelete() (admission.Warnings, error)
- func (r *OpenStackDataPlaneDeployment) ValidateUpdate(original runtime.Object) (admission.Warnings, error)
- type OpenStackDataPlaneDeploymentList
- type OpenStackDataPlaneDeploymentSpec
- func (in *OpenStackDataPlaneDeploymentSpec) DeepCopy() *OpenStackDataPlaneDeploymentSpec
- func (in *OpenStackDataPlaneDeploymentSpec) DeepCopyInto(out *OpenStackDataPlaneDeploymentSpec)
- func (spec *OpenStackDataPlaneDeploymentSpec) Default()
- func (r *OpenStackDataPlaneDeploymentSpec) ValidateCreate() field.ErrorList
- func (r *OpenStackDataPlaneDeploymentSpec) ValidateDelete() field.ErrorList
- func (r *OpenStackDataPlaneDeploymentSpec) ValidateUpdate() field.ErrorList
- type OpenStackDataPlaneDeploymentStatus
- type OpenStackDataPlaneNodeSet
- func (in *OpenStackDataPlaneNodeSet) DeepCopy() *OpenStackDataPlaneNodeSet
- func (in *OpenStackDataPlaneNodeSet) DeepCopyInto(out *OpenStackDataPlaneNodeSet)
- func (in *OpenStackDataPlaneNodeSet) DeepCopyObject() runtime.Object
- func (r *OpenStackDataPlaneNodeSet) Default()
- func (instance OpenStackDataPlaneNodeSet) GetAnsibleEESpec() AnsibleEESpec
- func (instance *OpenStackDataPlaneNodeSet) InitConditions()
- func (instance OpenStackDataPlaneNodeSet) IsReady() bool
- func (r *OpenStackDataPlaneNodeSet) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *OpenStackDataPlaneNodeSet) ValidateCreate() (admission.Warnings, error)
- func (r *OpenStackDataPlaneNodeSet) ValidateDelete() (admission.Warnings, error)
- func (r *OpenStackDataPlaneNodeSet) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type OpenStackDataPlaneNodeSetList
- type OpenStackDataPlaneNodeSetSpec
- func (in *OpenStackDataPlaneNodeSetSpec) DeepCopy() *OpenStackDataPlaneNodeSetSpec
- func (in *OpenStackDataPlaneNodeSetSpec) DeepCopyInto(out *OpenStackDataPlaneNodeSetSpec)
- func (spec *OpenStackDataPlaneNodeSetSpec) Default()
- func (r *OpenStackDataPlaneNodeSetSpec) ValidateDelete() field.ErrorList
- func (r *OpenStackDataPlaneNodeSetSpec) ValidateUpdate(oldSpec *OpenStackDataPlaneNodeSetSpec) field.ErrorList
- type OpenStackDataPlaneNodeSetStatus
- type OpenStackDataPlaneService
- func (in *OpenStackDataPlaneService) DeepCopy() *OpenStackDataPlaneService
- func (in *OpenStackDataPlaneService) DeepCopyInto(out *OpenStackDataPlaneService)
- func (in *OpenStackDataPlaneService) DeepCopyObject() runtime.Object
- func (r *OpenStackDataPlaneService) Default()
- func (r *OpenStackDataPlaneService) DefaultLabels()
- func (instance OpenStackDataPlaneService) InitConditions()
- func (instance OpenStackDataPlaneService) IsReady() bool
- func (r *OpenStackDataPlaneService) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *OpenStackDataPlaneService) ValidateCreate() (admission.Warnings, error)
- func (r *OpenStackDataPlaneService) ValidateDelete() (admission.Warnings, error)
- func (r *OpenStackDataPlaneService) ValidateUpdate(original runtime.Object) (admission.Warnings, error)
- type OpenStackDataPlaneServiceList
- type OpenStackDataPlaneServiceSpec
- func (in *OpenStackDataPlaneServiceSpec) DeepCopy() *OpenStackDataPlaneServiceSpec
- func (in *OpenStackDataPlaneServiceSpec) DeepCopyInto(out *OpenStackDataPlaneServiceSpec)
- func (spec *OpenStackDataPlaneServiceSpec) Default(name string)
- func (r *OpenStackDataPlaneServiceSpec) ValidateCreate() field.ErrorList
- func (r *OpenStackDataPlaneServiceSpec) ValidateDelete() field.ErrorList
- func (r *OpenStackDataPlaneServiceSpec) ValidateUpdate() field.ErrorList
- type OpenStackDataPlaneServiceStatus
- type OpenstackDataPlaneServiceCert
- type SecretEnvSource
Constants ¶
const ( // DataPlaneNodeSetErrorMessage error DataPlaneNodeSetErrorMessage = "DataPlaneNodeSet error occurred %s" // ServiceReadyCondition Status=True condition indicates if the // service is finished and successful. ServiceReadyCondition condition.Type = "ServiceReady" // ServiceReadyMessage ready ServiceReadyMessage = "%s service ready" // ServiceReadyWaitingMessage not yet ready ServiceReadyWaitingMessage = "%s service not yet ready" // ServiceErrorMessage error ServiceErrorMessage = "Service error occurred %s" // SetupReadyCondition - Overall setup condition SetupReadyCondition condition.Type = "SetupReady" // NodeSetReadyMessage - NodeSet Ready NodeSetReadyMessage = "NodeSet Ready" // NodeSetBareMetalProvisionReadyCondition Status=True condition indicates // all baremetal nodes provisioned for the NodeSet. NodeSetBareMetalProvisionReadyCondition condition.Type = "NodeSetBaremetalProvisionReady" // NodeSetBaremetalProvisionReadyMessage ready NodeSetBaremetalProvisionReadyMessage = "NodeSetBaremetalProvisionReady ready" // NodeSetBaremetalProvisionReadyWaitingMessage not yet ready NodeSetBaremetalProvisionReadyWaitingMessage = "NodeSetBaremetalProvisionReady not yet ready" // NodeSetBaremetalProvisionErrorMessage error NodeSetBaremetalProvisionErrorMessage = "NodeSetBaremetalProvisionReady error occurred" // NodeSetIPReservationReadyCondition Status=True condition indicates // IPSets reserved for all nodes in a NodeSet. NodeSetIPReservationReadyCondition condition.Type = "NodeSetIPReservationReady" // NodeSetIPReservationReadyMessage ready NodeSetIPReservationReadyMessage = "NodeSetIPReservationReady ready" // NodeSetIPReservationReadyWaitingMessage not yet ready NodeSetIPReservationReadyWaitingMessage = "NodeSetIPReservationReady not yet ready" // NodeSetIPReservationReadyErrorMessage error NodeSetIPReservationReadyErrorMessage = "NodeSetIPReservationReady error occurred" // NodeSetDNSDataReadyCondition Status=True condition indicates // DNSData created for the NodeSet. NodeSetDNSDataReadyCondition condition.Type = "NodeSetDNSDataReady" // NodeSetDNSDataReadyMessage ready NodeSetDNSDataReadyMessage = "NodeSetDNSDataReady ready" // NodeSetDNSDataReadyWaitingMessage not yet ready NodeSetDNSDataReadyWaitingMessage = "NodeSetDNSDataReady not yet ready" // NodeSetDNSDataReadyErrorMessage error NodeSetDNSDataReadyErrorMessage = "NodeSetDNSDataReady error occurred" // NodeSetDNSDataMultipleDNSMasqErrorMessage error NodeSetDNSDataMultipleDNSMasqErrorMessage = "NodeSet DNSData error occurred. Multiple DNSMasq resources exist." // InputReadyWaitingMessage not yet ready InputReadyWaitingMessage = "Waiting for input %s, not yet ready" // NodeSetDeploymentReadyCondition Status=True condition indicates if the // NodeSet Deployment is finished and successful. NodeSetDeploymentReadyCondition condition.Type = "NodeSetDeploymentReady" // NodeSetDeploymentReadyMessage ready NodeSetDeploymentReadyMessage = "Deployment ready for NodeSet" // NodeSetDeploymentReadyWaitingMessage not yet ready NodeSetDeploymentReadyWaitingMessage = "Deployment not yet ready for NodeSet" // NodeSetDeploymentErrorMessage error NodeSetDeploymentErrorMessage = "Deployment error occurred %s for NodeSet" // NodeSetServiceDeploymentReadyMessage ready NodeSetServiceDeploymentReadyMessage = "Deployment ready for %s service" // NodeSetServiceDeploymentReadyWaitingMessage not yet ready NodeSetServiceDeploymentReadyWaitingMessage = "Deployment not yet ready for %s service" // NodeSetServiceDeploymentErrorMessage error NodeSetServiceDeploymentErrorMessage = "Deployment error occurred in %s service" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "dataplane.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 )
var ContainerImageDefaults = openstackv1.ContainerImages{ ContainerTemplate: openstackv1.ContainerTemplate{ AgentImage: getStrPtr("quay.io/openstack-k8s-operators/openstack-baremetal-operator-agent:current-podified"), AnsibleeeImage: getStrPtr("quay.io/openstack-k8s-operators/openstack-ansibleee-runner:latest"), ApacheImage: getStrPtr("registry.redhat.io/ubi9/httpd-24:latest"), EdpmFrrImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-frr:current-podified"), EdpmIscsidImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-iscsid:current-podified"), EdpmLogrotateCrondImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-cron:current-podified"), EdpmNeutronDhcpAgentImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-neutron-dhcp-agent:current-podified"), EdpmNeutronMetadataAgentImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-neutron-metadata-agent-ovn:current-podified"), EdpmNeutronOvnAgentImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-neutron-ovn-agent:current-podified"), EdpmNeutronSriovAgentImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-neutron-sriov-agent:current-podified"), EdpmMultipathdImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-multipathd:current-podified"), NovaComputeImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-nova-compute:current-podified"), OvnControllerImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-ovn-controller:current-podified"), EdpmOvnBgpAgentImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-ovn-bgp-agent:current-podified"), CeilometerComputeImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-telemetry-ceilometer-compute:current-podified"), CeilometerIpmiImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-telemetry-ceilometer-ipmi:current-podified"), EdpmNodeExporterImage: getStrPtr("quay.io/podified-antelope-centos9/openstack-telemetry-node-exporter:current-podified"), OsContainerImage: getStrPtr("quay.io/podified-antelope-centos9/edpm-hardened-uefi:current-podified"), }}
ContainerImageDefaults - the hardcoded defaults which are the last fallback if no values are set elsewhere.
var ContainerImages openstackv1.ContainerImages
ContainerImages - the values if no OpenStackVersion is used
Functions ¶
func NodeHostNameIsFQDN ¶
NodeHostNameIsFQDN Helper to check if a hostname is fqdn
func SetupDefaults ¶
func SetupDefaults()
SetupDefaults - initializes any CRD field defaults based on environment variables called from main.go
Types ¶
type AnsibleEESpec ¶
type AnsibleEESpec struct {
// ExtraMounts containing files which can be mounted into an Ansible Execution Pod
ExtraMounts []storage.VolMounts `json:"extraMounts,omitempty"`
// Env is a list containing the environment variables to pass to the pod
Env []corev1.EnvVar `json:"env,omitempty"`
// ExtraVars for ansible execution
ExtraVars map[string]json.RawMessage `json:"extraVars,omitempty"`
// DNSConfig for setting dnsservers
DNSConfig *corev1.PodDNSConfig `json:"dnsConfig,omitempty"`
// NetworkAttachments is a list of NetworkAttachment resource names to pass to the ansibleee resource
// which allows to connect the ansibleee runner to the given network
NetworkAttachments []string `json:"networkAttachments"`
// OpenStackAnsibleEERunnerImage image to use as the ansibleEE runner image
OpenStackAnsibleEERunnerImage string `json:"openStackAnsibleEERunnerImage,omitempty"`
// AnsibleTags for ansible execution
AnsibleTags string `json:"ansibleTags,omitempty"`
// AnsibleLimit for ansible execution
AnsibleLimit string `json:"ansibleLimit,omitempty"`
// AnsibleSkipTags for ansible execution
AnsibleSkipTags string `json:"ansibleSkipTags,omitempty"`
// ServiceAccountName allows to specify what ServiceAccountName do we want
// the ansible execution run with. Without specifying, it will run with
// default serviceaccount
ServiceAccountName string
}
AnsibleEESpec is a specification of the ansible EE attributes
func (*AnsibleEESpec) DeepCopy ¶
func (in *AnsibleEESpec) DeepCopy() *AnsibleEESpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AnsibleEESpec.
func (*AnsibleEESpec) DeepCopyInto ¶
func (in *AnsibleEESpec) DeepCopyInto(out *AnsibleEESpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AnsibleOpts ¶
type AnsibleOpts struct {
// AnsibleUser SSH user for Ansible connection
// +kubebuilder:validation:Optional
AnsibleUser string `json:"ansibleUser"`
// AnsibleHost SSH host for Ansible connection
// +kubebuilder:validation:Optional
AnsibleHost string `json:"ansibleHost,omitempty"`
// AnsibleVars for configuring ansible
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
AnsibleVars map[string]json.RawMessage `json:"ansibleVars,omitempty"`
// AnsibleVarsFrom is a list of sources to populate ansible variables from.
// Values defined by an AnsibleVars with a duplicate key take precedence.
// +kubebuilder:validation:Optional
AnsibleVarsFrom []DataSource `json:"ansibleVarsFrom,omitempty"`
// AnsiblePort SSH port for Ansible connection
// +kubebuilder:validation:Optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:number"}
AnsiblePort int `json:"ansiblePort,omitempty"`
}
AnsibleOpts defines a logical grouping of Ansible related configuration options.
func (*AnsibleOpts) DeepCopy ¶
func (in *AnsibleOpts) DeepCopy() *AnsibleOpts
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AnsibleOpts.
func (*AnsibleOpts) DeepCopyInto ¶
func (in *AnsibleOpts) DeepCopyInto(out *AnsibleOpts)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigMapEnvSource ¶
type ConfigMapEnvSource struct {
// The ConfigMap to select from.
LocalObjectReference `json:",inline" yaml:",inline"`
// Specify whether the ConfigMap must be defined
// +optional
Optional *bool `json:"optional,omitempty" yaml:"optional,omitempty"`
}
ConfigMapEnvSource selects a ConfigMap to populate the environment variables with.
The contents of the target ConfigMap's Data field will represent the key-value pairs as environment variables.
func (*ConfigMapEnvSource) DeepCopy ¶
func (in *ConfigMapEnvSource) DeepCopy() *ConfigMapEnvSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapEnvSource.
func (*ConfigMapEnvSource) DeepCopyInto ¶
func (in *ConfigMapEnvSource) DeepCopyInto(out *ConfigMapEnvSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataSource ¶
type DataSource struct {
// An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER.
// +optional
Prefix string `json:"prefix,omitempty" yaml:"prefix,omitempty"`
// The ConfigMap to select from
// +optional
ConfigMapRef *ConfigMapEnvSource `json:"configMapRef,omitempty" yaml:"configMapRef,omitempty"`
// The Secret to select from
// +optional
SecretRef *SecretEnvSource `json:"secretRef,omitempty" yaml:"secretRef,omitempty"`
}
DataSource represents the source of a set of ConfigMaps/Secrets
func (*DataSource) DeepCopy ¶
func (in *DataSource) DeepCopy() *DataSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSource.
func (*DataSource) DeepCopyInto ¶
func (in *DataSource) DeepCopyInto(out *DataSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LocalObjectReference ¶
type LocalObjectReference struct {
// Name of the referent.
// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
// TODO: Add other useful fields. apiVersion, kind, uid?
// +optional
Name string `json:"name,omitempty" yaml:"name,omitempty"`
}
LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. +structType=atomic
func (*LocalObjectReference) DeepCopy ¶
func (in *LocalObjectReference) DeepCopy() *LocalObjectReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalObjectReference.
func (*LocalObjectReference) DeepCopyInto ¶
func (in *LocalObjectReference) DeepCopyInto(out *LocalObjectReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeSection ¶
type NodeSection struct {
// ExtraMounts containing files which can be mounted into an Ansible Execution Pod
// +kubebuilder:validation:Optional
ExtraMounts []storage.VolMounts `json:"extraMounts,omitempty"`
// Networks - Instance networks
// +kubebuilder:validation:Optional
Networks []infranetworkv1.IPSetNetwork `json:"networks,omitempty"`
// UserData node specific user-data
// +kubebuilder:validation:Optional
UserData *corev1.SecretReference `json:"userData,omitempty"`
// NetworkData node specific network-data
// +kubebuilder:validation:Optional
NetworkData *corev1.SecretReference `json:"networkData,omitempty"`
// Ansible is the group of Ansible related configuration options.
// +kubebuilder:validation:Optional
Ansible AnsibleOpts `json:"ansible,omitempty"`
// HostName - node name
// +kubebuilder:validation:Optional
HostName string `json:"hostName,omitempty"`
// ManagementNetwork - Name of network to use for management (SSH/Ansible)
// +kubebuilder:validation:Optional
ManagementNetwork string `json:"managementNetwork,omitempty"`
// +kubebuilder:validation:Optional
// PreprovisioningNetworkDataName - NetworkData secret name in the local namespace for pre-provisioing
PreprovisioningNetworkDataName string `json:"preprovisioningNetworkDataName,omitempty"`
}
NodeSection defines the top level attributes inherited by nodes in the CR.
func (*NodeSection) DeepCopy ¶
func (in *NodeSection) DeepCopy() *NodeSection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeSection.
func (*NodeSection) DeepCopyInto ¶
func (in *NodeSection) DeepCopyInto(out *NodeSection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeTemplate ¶
type NodeTemplate struct {
// ExtraMounts containing files which can be mounted into an Ansible Execution Pod
// +kubebuilder:validation:Optional
ExtraMounts []storage.VolMounts `json:"extraMounts,omitempty"`
// Networks - Instance networks
// +kubebuilder:validation:Optional
Networks []infranetworkv1.IPSetNetwork `json:"networks,omitempty"`
// UserData node specific user-data
// +kubebuilder:validation:Optional
UserData *corev1.SecretReference `json:"userData,omitempty"`
// NetworkData node specific network-data
// +kubebuilder:validation:Optional
NetworkData *corev1.SecretReference `json:"networkData,omitempty"`
// AnsibleSSHPrivateKeySecret Name of a private SSH key secret containing
// private SSH key for connecting to node.
// The named secret must be of the form:
// Secret.data.ssh-privatekey: <base64 encoded private key contents>
// <https://kubernetes.io/docs/concepts/configuration/secret/#ssh-authentication-secrets>
// +kubebuilder:validation:Required
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:io.kubernetes:Secret"}
AnsibleSSHPrivateKeySecret string `json:"ansibleSSHPrivateKeySecret"`
// ManagementNetwork - Name of network to use for management (SSH/Ansible)
// +kubebuilder:validation:Optional
// +kubebuilder:default=ctlplane
ManagementNetwork string `json:"managementNetwork"`
// Ansible is the group of Ansible related configuration options.
// +kubebuilder:validation:Optional
Ansible AnsibleOpts `json:"ansible,omitempty"`
}
NodeTemplate is a specification of the node attributes that override top level attributes.
func (*NodeTemplate) DeepCopy ¶
func (in *NodeTemplate) DeepCopy() *NodeTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeTemplate.
func (*NodeTemplate) DeepCopyInto ¶
func (in *NodeTemplate) DeepCopyInto(out *NodeTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackDataPlaneDeployment ¶
type OpenStackDataPlaneDeployment struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="OpenStackDataPlaneDeployment Spec is immutable"
Spec OpenStackDataPlaneDeploymentSpec `json:"spec,omitempty"`
Status OpenStackDataPlaneDeploymentStatus `json:"status,omitempty"`
}
OpenStackDataPlaneDeployment is the Schema for the openstackdataplanedeployments API OpenStackDataPlaneDeployment name must be a valid RFC1123 as it is used in labels
func (*OpenStackDataPlaneDeployment) DeepCopy ¶
func (in *OpenStackDataPlaneDeployment) DeepCopy() *OpenStackDataPlaneDeployment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneDeployment.
func (*OpenStackDataPlaneDeployment) DeepCopyInto ¶
func (in *OpenStackDataPlaneDeployment) DeepCopyInto(out *OpenStackDataPlaneDeployment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneDeployment) DeepCopyObject ¶
func (in *OpenStackDataPlaneDeployment) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackDataPlaneDeployment) Default ¶
func (r *OpenStackDataPlaneDeployment) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*OpenStackDataPlaneDeployment) InitConditions ¶
func (instance *OpenStackDataPlaneDeployment) InitConditions()
InitConditions - Initializes Status Conditons
func (*OpenStackDataPlaneDeployment) InitHashesAndImages ¶
func (instance *OpenStackDataPlaneDeployment) InitHashesAndImages()
InitHashesAndImages - Initialize ConfigHashes and Images
func (OpenStackDataPlaneDeployment) IsReady ¶
func (instance OpenStackDataPlaneDeployment) IsReady() bool
IsReady - returns true if the OpenStackDataPlaneDeployment is ready
func (*OpenStackDataPlaneDeployment) SetupWebhookWithManager ¶
func (r *OpenStackDataPlaneDeployment) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager sets up the webhook with the Manager
func (*OpenStackDataPlaneDeployment) ValidateCreate ¶
func (r *OpenStackDataPlaneDeployment) ValidateCreate() (admission.Warnings, error)
func (*OpenStackDataPlaneDeployment) ValidateDelete ¶
func (r *OpenStackDataPlaneDeployment) ValidateDelete() (admission.Warnings, error)
func (*OpenStackDataPlaneDeployment) ValidateUpdate ¶
type OpenStackDataPlaneDeploymentList ¶
type OpenStackDataPlaneDeploymentList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []OpenStackDataPlaneDeployment `json:"items"`
}
OpenStackDataPlaneDeploymentList contains a list of OpenStackDataPlaneDeployment
func (*OpenStackDataPlaneDeploymentList) DeepCopy ¶
func (in *OpenStackDataPlaneDeploymentList) DeepCopy() *OpenStackDataPlaneDeploymentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneDeploymentList.
func (*OpenStackDataPlaneDeploymentList) DeepCopyInto ¶
func (in *OpenStackDataPlaneDeploymentList) DeepCopyInto(out *OpenStackDataPlaneDeploymentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneDeploymentList) DeepCopyObject ¶
func (in *OpenStackDataPlaneDeploymentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenStackDataPlaneDeploymentSpec ¶
type OpenStackDataPlaneDeploymentSpec struct {
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinItems:=1
// NodeSets is the list of NodeSets deployed
NodeSets []string `json:"nodeSets"`
// BackoffLimit allows to define the maximum number of retried executions (defaults to 6).
// +kubebuilder:default:=6
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:number"}
BackoffLimit *int32 `json:"backoffLimit,omitempty"`
// AnsibleTags for ansible execution
// +kubebuilder:validation:Optional
AnsibleTags string `json:"ansibleTags,omitempty"`
// AnsibleLimit for ansible execution
// +kubebuilder:validation:Optional
AnsibleLimit string `json:"ansibleLimit,omitempty"`
// AnsibleSkipTags for ansible execution
// +kubebuilder:validation:Optional
AnsibleSkipTags string `json:"ansibleSkipTags,omitempty"`
// +kubebuilder:validation:Optional
// AnsibleExtraVars for ansible execution
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
AnsibleExtraVars map[string]json.RawMessage `json:"ansibleExtraVars,omitempty"`
// +kubebuilder:validation:Optional
// ServicesOverride list
ServicesOverride []string `json:"servicesOverride,omitempty"`
// Time before the deployment is requeued in seconds
// +kubebuilder:validation:Minimum:=1
// +kubebuilder:default:=15
DeploymentRequeueTime int `json:"deploymentRequeueTime"`
}
OpenStackDataPlaneDeploymentSpec defines the desired state of OpenStackDataPlaneDeployment
func (*OpenStackDataPlaneDeploymentSpec) DeepCopy ¶
func (in *OpenStackDataPlaneDeploymentSpec) DeepCopy() *OpenStackDataPlaneDeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneDeploymentSpec.
func (*OpenStackDataPlaneDeploymentSpec) DeepCopyInto ¶
func (in *OpenStackDataPlaneDeploymentSpec) DeepCopyInto(out *OpenStackDataPlaneDeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneDeploymentSpec) Default ¶
func (spec *OpenStackDataPlaneDeploymentSpec) Default()
Default - set defaults for this OpenStackDataPlaneDeployment
func (*OpenStackDataPlaneDeploymentSpec) ValidateCreate ¶
func (r *OpenStackDataPlaneDeploymentSpec) ValidateCreate() field.ErrorList
func (*OpenStackDataPlaneDeploymentSpec) ValidateDelete ¶
func (r *OpenStackDataPlaneDeploymentSpec) ValidateDelete() field.ErrorList
func (*OpenStackDataPlaneDeploymentSpec) ValidateUpdate ¶
func (r *OpenStackDataPlaneDeploymentSpec) ValidateUpdate() field.ErrorList
type OpenStackDataPlaneDeploymentStatus ¶
type OpenStackDataPlaneDeploymentStatus struct {
// NodeSetConditions
NodeSetConditions map[string]condition.Conditions `json:"nodeSetConditions,omitempty" optional:"true"`
// ConfigMapHashes
ConfigMapHashes map[string]string `json:"configMapHashes,omitempty" optional:"true"`
// SecretHashes
SecretHashes map[string]string `json:"secretHashes,omitempty" optional:"true"`
// NodeSetHashes
NodeSetHashes map[string]string `json:"nodeSetHashes,omitempty" optional:"true"`
// ContainerImages
ContainerImages map[string]string `json:"containerImages,omitempty"`
// +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:io.kubernetes.conditions"}
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
//ObservedGeneration - the most recent generation observed for this Deployment. If the observed generation is less than the spec generation, then the controller has not processed the latest changes.
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// DeployedVersion
DeployedVersion string `json:"deployedVersion,omitempty"`
}
OpenStackDataPlaneDeploymentStatus defines the observed state of OpenStackDataPlaneDeployment
func (*OpenStackDataPlaneDeploymentStatus) DeepCopy ¶
func (in *OpenStackDataPlaneDeploymentStatus) DeepCopy() *OpenStackDataPlaneDeploymentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneDeploymentStatus.
func (*OpenStackDataPlaneDeploymentStatus) DeepCopyInto ¶
func (in *OpenStackDataPlaneDeploymentStatus) DeepCopyInto(out *OpenStackDataPlaneDeploymentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackDataPlaneNodeSet ¶
type OpenStackDataPlaneNodeSet struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec OpenStackDataPlaneNodeSetSpec `json:"spec,omitempty"`
Status OpenStackDataPlaneNodeSetStatus `json:"status,omitempty"`
}
OpenStackDataPlaneNodeSet is the Schema for the openstackdataplanenodesets API OpenStackDataPlaneNodeSet name must be a valid RFC1123 as it is used in labels
func (*OpenStackDataPlaneNodeSet) DeepCopy ¶
func (in *OpenStackDataPlaneNodeSet) DeepCopy() *OpenStackDataPlaneNodeSet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneNodeSet.
func (*OpenStackDataPlaneNodeSet) DeepCopyInto ¶
func (in *OpenStackDataPlaneNodeSet) DeepCopyInto(out *OpenStackDataPlaneNodeSet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneNodeSet) DeepCopyObject ¶
func (in *OpenStackDataPlaneNodeSet) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackDataPlaneNodeSet) Default ¶
func (r *OpenStackDataPlaneNodeSet) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (OpenStackDataPlaneNodeSet) GetAnsibleEESpec ¶
func (instance OpenStackDataPlaneNodeSet) GetAnsibleEESpec() AnsibleEESpec
GetAnsibleEESpec - get the fields that will be passed to AEE
func (*OpenStackDataPlaneNodeSet) InitConditions ¶
func (instance *OpenStackDataPlaneNodeSet) InitConditions()
InitConditions - Initializes Status Conditons
func (OpenStackDataPlaneNodeSet) IsReady ¶
func (instance OpenStackDataPlaneNodeSet) IsReady() bool
IsReady - returns true if the DataPlane is ready
func (*OpenStackDataPlaneNodeSet) SetupWebhookWithManager ¶
func (r *OpenStackDataPlaneNodeSet) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager sets up the webhook with the Manager
func (*OpenStackDataPlaneNodeSet) ValidateCreate ¶
func (r *OpenStackDataPlaneNodeSet) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*OpenStackDataPlaneNodeSet) ValidateDelete ¶
func (r *OpenStackDataPlaneNodeSet) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*OpenStackDataPlaneNodeSet) ValidateUpdate ¶
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type OpenStackDataPlaneNodeSetList ¶
type OpenStackDataPlaneNodeSetList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []OpenStackDataPlaneNodeSet `json:"items"`
}
OpenStackDataPlaneNodeSetList contains a list of OpenStackDataPlaneNodeSets
func (*OpenStackDataPlaneNodeSetList) DeepCopy ¶
func (in *OpenStackDataPlaneNodeSetList) DeepCopy() *OpenStackDataPlaneNodeSetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneNodeSetList.
func (*OpenStackDataPlaneNodeSetList) DeepCopyInto ¶
func (in *OpenStackDataPlaneNodeSetList) DeepCopyInto(out *OpenStackDataPlaneNodeSetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneNodeSetList) DeepCopyObject ¶
func (in *OpenStackDataPlaneNodeSetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenStackDataPlaneNodeSetSpec ¶
type OpenStackDataPlaneNodeSetSpec struct {
// +kubebuilder:validation:Optional
// BaremetalSetTemplate Template for BaremetalSet for the NodeSet
BaremetalSetTemplate baremetalv1.OpenStackBaremetalSetSpec `json:"baremetalSetTemplate,omitempty"`
// +kubebuilder:validation:Required
// NodeTemplate - node attributes specific to nodes defined by this resource. These
// attributes can be overriden at the individual node level, else take their defaults
// from valus in this section.
NodeTemplate NodeTemplate `json:"nodeTemplate"`
// Nodes - Map of Node Names and node specific data. Values here override defaults in the
// upper level section.
// +kubebuilder:validation:Required
Nodes map[string]NodeSection `json:"nodes"`
// Env is a list containing the environment variables to pass to the pod
// Variables modifying behavior of AnsibleEE can be specified here.
// +kubebuilder:validation:Optional
Env []corev1.EnvVar `json:"env,omitempty"`
// +kubebuilder:validation:Optional
// NetworkAttachments is a list of NetworkAttachment resource names to pass to the ansibleee resource
// which allows to connect the ansibleee runner to the given network
NetworkAttachments []string `json:"networkAttachments,omitempty"`
// +kubebuilder:validation:Optional
// +kubebuilder:default={download-cache,bootstrap,configure-network,validate-network,install-os,configure-os,ssh-known-hosts,run-os,reboot-os,install-certs,ovn,neutron-metadata,libvirt,nova,telemetry}
// Services list
Services []string `json:"services"`
// Tags - Additional tags for NodeSet
// +kubebuilder:validation:Optional
Tags []string `json:"tags,omitempty"`
// SecretMaxSize - Maximum size in bytes of a Kubernetes secret. This size is currently situated around
// 1 MiB (nearly 1 MB).
// +kubebuilder:validation:Optional
// +kubebuilder:default=1048576
SecretMaxSize int `json:"secretMaxSize" yaml:"secretMaxSize"`
// +kubebuilder:validation:Optional
//
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
// PreProvisioned - Set to true if the nodes have been Pre Provisioned.
PreProvisioned bool `json:"preProvisioned,omitempty"`
// TLSEnabled - Whether the node set has TLS enabled.
// +kubebuilder:validation:Optional
// +kubebuilder:default=true
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
TLSEnabled bool `json:"tlsEnabled" yaml:"tlsEnabled"`
}
OpenStackDataPlaneNodeSetSpec defines the desired state of OpenStackDataPlaneNodeSet
func (*OpenStackDataPlaneNodeSetSpec) DeepCopy ¶
func (in *OpenStackDataPlaneNodeSetSpec) DeepCopy() *OpenStackDataPlaneNodeSetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneNodeSetSpec.
func (*OpenStackDataPlaneNodeSetSpec) DeepCopyInto ¶
func (in *OpenStackDataPlaneNodeSetSpec) DeepCopyInto(out *OpenStackDataPlaneNodeSetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneNodeSetSpec) Default ¶
func (spec *OpenStackDataPlaneNodeSetSpec) Default()
Default - set defaults for this OpenStackDataPlaneNodeSet Spec
func (*OpenStackDataPlaneNodeSetSpec) ValidateDelete ¶
func (r *OpenStackDataPlaneNodeSetSpec) ValidateDelete() field.ErrorList
func (*OpenStackDataPlaneNodeSetSpec) ValidateUpdate ¶
func (r *OpenStackDataPlaneNodeSetSpec) ValidateUpdate(oldSpec *OpenStackDataPlaneNodeSetSpec) field.ErrorList
type OpenStackDataPlaneNodeSetStatus ¶
type OpenStackDataPlaneNodeSetStatus struct {
// +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:io.kubernetes.conditions"}
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
// DeploymentStatuses
DeploymentStatuses map[string]condition.Conditions `json:"deploymentStatuses,omitempty" optional:"true"`
// AllHostnames
AllHostnames map[string]map[infranetworkv1.NetNameStr]string `json:"allHostnames,omitempty" optional:"true"`
// AllIPs
AllIPs map[string]map[infranetworkv1.NetNameStr]string `json:"allIPs,omitempty" optional:"true"`
// ConfigMapHashes
ConfigMapHashes map[string]string `json:"configMapHashes,omitempty" optional:"true"`
// SecretHashes
SecretHashes map[string]string `json:"secretHashes,omitempty" optional:"true"`
// DNSClusterAddresses
DNSClusterAddresses []string `json:"dnsClusterAddresses,omitempty" optional:"true"`
// ContainerImages
ContainerImages map[string]string `json:"containerImages,omitempty" optional:"true"`
// CtlplaneSearchDomain
CtlplaneSearchDomain string `json:"ctlplaneSearchDomain,omitempty" optional:"true"`
// ConfigHash - holds the curret hash of the NodeTemplate and Node sections of the struct.
// This hash is used to determine when new Ansible executions are required to roll
// out config changes.
ConfigHash string `json:"configHash,omitempty"`
// DeployedConfigHash - holds the hash of the NodeTemplate and Node sections of the struct
// that was last deployed.
// This hash is used to determine when new Ansible executions are required to roll
// out config changes.
DeployedConfigHash string `json:"deployedConfigHash,omitempty"`
//ObservedGeneration - the most recent generation observed for this NodeSet. If the observed generation is less than the spec generation, then the controller has not processed the latest changes.
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// DeployedVersion
DeployedVersion string `json:"deployedVersion,omitempty"`
}
OpenStackDataPlaneNodeSetStatus defines the observed state of OpenStackDataPlaneNodeSet
func (*OpenStackDataPlaneNodeSetStatus) DeepCopy ¶
func (in *OpenStackDataPlaneNodeSetStatus) DeepCopy() *OpenStackDataPlaneNodeSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneNodeSetStatus.
func (*OpenStackDataPlaneNodeSetStatus) DeepCopyInto ¶
func (in *OpenStackDataPlaneNodeSetStatus) DeepCopyInto(out *OpenStackDataPlaneNodeSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackDataPlaneService ¶
type OpenStackDataPlaneService struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec OpenStackDataPlaneServiceSpec `json:"spec,omitempty"`
Status OpenStackDataPlaneServiceStatus `json:"status,omitempty"`
}
OpenStackDataPlaneService is the Schema for the openstackdataplaneservices API OpenStackDataPlaneService name must be a valid RFC1123 as it is used in labels
func (*OpenStackDataPlaneService) DeepCopy ¶
func (in *OpenStackDataPlaneService) DeepCopy() *OpenStackDataPlaneService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneService.
func (*OpenStackDataPlaneService) DeepCopyInto ¶
func (in *OpenStackDataPlaneService) DeepCopyInto(out *OpenStackDataPlaneService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneService) DeepCopyObject ¶
func (in *OpenStackDataPlaneService) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackDataPlaneService) Default ¶
func (r *OpenStackDataPlaneService) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*OpenStackDataPlaneService) DefaultLabels ¶
func (r *OpenStackDataPlaneService) DefaultLabels()
DefaultLabel - adding default label to the OpenStackDataPlaneService
func (OpenStackDataPlaneService) InitConditions ¶
func (instance OpenStackDataPlaneService) InitConditions()
InitConditions - Initializes Status Conditons
func (OpenStackDataPlaneService) IsReady ¶
func (instance OpenStackDataPlaneService) IsReady() bool
IsReady - returns true if service is ready to serve requests
func (*OpenStackDataPlaneService) SetupWebhookWithManager ¶
func (r *OpenStackDataPlaneService) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager sets up the webhook with the Manager
func (*OpenStackDataPlaneService) ValidateCreate ¶
func (r *OpenStackDataPlaneService) ValidateCreate() (admission.Warnings, error)
func (*OpenStackDataPlaneService) ValidateDelete ¶
func (r *OpenStackDataPlaneService) ValidateDelete() (admission.Warnings, error)
func (*OpenStackDataPlaneService) ValidateUpdate ¶
type OpenStackDataPlaneServiceList ¶
type OpenStackDataPlaneServiceList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []OpenStackDataPlaneService `json:"items"`
}
OpenStackDataPlaneServiceList contains a list of OpenStackDataPlaneService
func (*OpenStackDataPlaneServiceList) DeepCopy ¶
func (in *OpenStackDataPlaneServiceList) DeepCopy() *OpenStackDataPlaneServiceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneServiceList.
func (*OpenStackDataPlaneServiceList) DeepCopyInto ¶
func (in *OpenStackDataPlaneServiceList) DeepCopyInto(out *OpenStackDataPlaneServiceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneServiceList) DeepCopyObject ¶
func (in *OpenStackDataPlaneServiceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenStackDataPlaneServiceSpec ¶
type OpenStackDataPlaneServiceSpec struct {
// DataSources list of DataSource objects to mount as ExtraMounts for the
// OpenStackAnsibleEE
DataSources []DataSource `json:"dataSources,omitempty" yaml:"dataSources,omitempty"`
// TLSCerts tls certs to be generated
// +kubebuilder:validation:Optional
TLSCerts map[string]OpenstackDataPlaneServiceCert `json:"tlsCerts,omitempty" yaml:"tlsCerts,omitempty"`
// PlaybookContents is an inline playbook contents that ansible will run on execution.
PlaybookContents string `json:"playbookContents,omitempty"`
// Playbook is a path to the playbook that ansible will run on this execution
Playbook string `json:"playbook,omitempty"`
// CACerts - Secret containing the CA certificate chain
// +kubebuilder:validation:Optional
CACerts string `json:"caCerts,omitempty" yaml:"caCerts,omitempty"`
// OpenStackAnsibleEERunnerImage image to use as the ansibleEE runner image
// +kubebuilder:validation:Optional
OpenStackAnsibleEERunnerImage string `json:"openStackAnsibleEERunnerImage,omitempty" yaml:"openStackAnsibleEERunnerImage,omitempty"`
// CertsFrom - Service name used to obtain TLSCert and CACerts data. If both
// CertsFrom and either TLSCert or CACerts is set, then those fields take
// precedence.
// +kubebuilder:validation:Optional
CertsFrom string `json:"certsFrom,omitempty" yaml:"certsFrom,omitempty"`
// AddCertMounts - Whether to add cert mounts
// +kubebuilder:validation:Optional
// +kubebuilder:default=false
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
AddCertMounts bool `json:"addCertMounts" yaml:"addCertMounts"`
// DeployOnAllNodeSets - should the service be deploy across all nodesets
// This will override default target of a service play, setting it to 'all'.
// +kubebuilder:validation:Optional
DeployOnAllNodeSets bool `json:"deployOnAllNodeSets,omitempty" yaml:"deployOnAllNodeSets,omitempty"`
// ContainerImageFields - list of container image fields names that this
// service deploys. The field names should match the
// ContainerImages struct field names from
// github.com/openstack-k8s-operators/openstack-operator/apis/core/v1beta1
ContainerImageFields []string `json:"containerImageFields,omitempty" yaml:"containerImageFields,omitempty"`
// EDPMServiceType - service type, which typically corresponds to one of
// the default service names (such as nova, ovn, etc). Also typically
// corresponds to the ansible role name (without the "edpm_" prefix) used
// to manage the service. If not set, will default to the
// OpenStackDataPlaneService name.
EDPMServiceType string `json:"edpmServiceType,omitempty" yaml:"edpmServiceType,omitempty"`
}
OpenStackDataPlaneServiceSpec defines the desired state of OpenStackDataPlaneService
func (*OpenStackDataPlaneServiceSpec) DeepCopy ¶
func (in *OpenStackDataPlaneServiceSpec) DeepCopy() *OpenStackDataPlaneServiceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneServiceSpec.
func (*OpenStackDataPlaneServiceSpec) DeepCopyInto ¶
func (in *OpenStackDataPlaneServiceSpec) DeepCopyInto(out *OpenStackDataPlaneServiceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneServiceSpec) Default ¶
func (spec *OpenStackDataPlaneServiceSpec) Default(name string)
Default - set defaults for this OpenStackDataPlaneService
func (*OpenStackDataPlaneServiceSpec) ValidateCreate ¶
func (r *OpenStackDataPlaneServiceSpec) ValidateCreate() field.ErrorList
func (*OpenStackDataPlaneServiceSpec) ValidateDelete ¶
func (r *OpenStackDataPlaneServiceSpec) ValidateDelete() field.ErrorList
func (*OpenStackDataPlaneServiceSpec) ValidateUpdate ¶
func (r *OpenStackDataPlaneServiceSpec) ValidateUpdate() field.ErrorList
type OpenStackDataPlaneServiceStatus ¶
type OpenStackDataPlaneServiceStatus struct {
// +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:io.kubernetes.conditions"}
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
}
OpenStackDataPlaneServiceStatus defines the observed state of OpenStackDataPlaneService
func (*OpenStackDataPlaneServiceStatus) DeepCopy ¶
func (in *OpenStackDataPlaneServiceStatus) DeepCopy() *OpenStackDataPlaneServiceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneServiceStatus.
func (*OpenStackDataPlaneServiceStatus) DeepCopyInto ¶
func (in *OpenStackDataPlaneServiceStatus) DeepCopyInto(out *OpenStackDataPlaneServiceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackDataPlaneServiceCert ¶
type OpenstackDataPlaneServiceCert struct {
// Contents of the certificate
// This is a list of strings for properties that are needed in the cert
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinItems:=1
Contents []string `json:"contents"`
// Networks to include in SNI for the cert
// +kubebuilder:validation:Optional
Networks []infranetworkv1.NetNameStr `json:"networks,omitempty"`
// Issuer is the label for the issuer to issue the cert
// Only one issuer should have this label
// +kubebuilder:validation:Optional
Issuer string `json:"issuer,omitempty"`
// KeyUsages to be added to the issued cert
// +kubebuilder:validation:Optional
KeyUsages []certmgrv1.KeyUsage `json:"keyUsages,omitempty" yaml:"keyUsages,omitempty"`
// EDPMRoleServiceName is the value of the <role>_service_name variable from
// the edpm-ansible role where this certificate is used. For example if the
// certificate is for edpm_ovn from edpm-ansible, EDPMRoleServiceName must be
// ovn, which matches the edpm_ovn_service_name variable from the role. If
// not set, OpenStackDataPlaneService.Spec.EDPMServiceType is used. If
// OpenStackDataPlaneService.Spec.EDPMServiceType is not set, then
// OpenStackDataPlaneService.Name is used.
EDPMRoleServiceName string `json:"edpmRoleServiceName,omitempty"`
}
OpenstackDataPlaneServiceCert defines the property of a TLS cert issued for a dataplane service
func (*OpenstackDataPlaneServiceCert) DeepCopy ¶
func (in *OpenstackDataPlaneServiceCert) DeepCopy() *OpenstackDataPlaneServiceCert
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackDataPlaneServiceCert.
func (*OpenstackDataPlaneServiceCert) DeepCopyInto ¶
func (in *OpenstackDataPlaneServiceCert) DeepCopyInto(out *OpenstackDataPlaneServiceCert)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretEnvSource ¶
type SecretEnvSource struct {
// The Secret to select from.
LocalObjectReference `json:",inline" yaml:",inline"`
// Specify whether the Secret must be defined
// +optional
Optional *bool `json:"optional,omitempty" yaml:"optional,omitempty"`
}
SecretEnvSource selects a Secret to populate the environment variables with.
The contents of the target Secret's Data field will represent the key-value pairs as environment variables.
func (*SecretEnvSource) DeepCopy ¶
func (in *SecretEnvSource) DeepCopy() *SecretEnvSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretEnvSource.
func (*SecretEnvSource) DeepCopyInto ¶
func (in *SecretEnvSource) DeepCopyInto(out *SecretEnvSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files
¶
- common.go
- conditions.go
- groupversion_info.go
- openstackdataplanedeployment_types.go
- openstackdataplanedeployment_webhook.go
- openstackdataplanenodeset.go
- openstackdataplanenodeset_types.go
- openstackdataplanenodeset_webhook.go
- openstackdataplaneservice_types.go
- openstackdataplaneservice_webhook.go
- zz_generated.deepcopy.go