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 AssertUniquenessBetween(spec interface{}, otherSpec interface{}, suffix string) []string
- type AnsibleEESpec
- type DeployStrategySection
- type NetworkConfigSection
- type NodeSection
- type NovaTemplate
- type OpenStackDataPlane
- func (in *OpenStackDataPlane) DeepCopy() *OpenStackDataPlane
- func (in *OpenStackDataPlane) DeepCopyInto(out *OpenStackDataPlane)
- func (in *OpenStackDataPlane) DeepCopyObject() runtime.Object
- func (r *OpenStackDataPlane) Default()
- func (instance *OpenStackDataPlane) InitConditions()
- func (instance OpenStackDataPlane) IsReady() bool
- func (r *OpenStackDataPlane) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *OpenStackDataPlane) ValidateCreate() error
- func (r *OpenStackDataPlane) ValidateDelete() error
- func (r *OpenStackDataPlane) ValidateUpdate(old runtime.Object) error
- type OpenStackDataPlaneList
- type OpenStackDataPlaneNode
- func (in *OpenStackDataPlaneNode) DeepCopy() *OpenStackDataPlaneNode
- func (in *OpenStackDataPlaneNode) DeepCopyInto(out *OpenStackDataPlaneNode)
- func (in *OpenStackDataPlaneNode) DeepCopyObject() runtime.Object
- func (instance OpenStackDataPlaneNode) GetAnsibleEESpec(role OpenStackDataPlaneRole) AnsibleEESpec
- func (instance *OpenStackDataPlaneNode) InitConditions(instanceRole *OpenStackDataPlaneRole)
- func (instance OpenStackDataPlaneNode) IsReady() bool
- func (instance OpenStackDataPlaneNode) IsSetupReady() bool
- func (instance OpenStackDataPlaneNode) Validate(role OpenStackDataPlaneRole) error
- type OpenStackDataPlaneNodeList
- type OpenStackDataPlaneNodeSpec
- type OpenStackDataPlaneRole
- func (in *OpenStackDataPlaneRole) DeepCopy() *OpenStackDataPlaneRole
- func (in *OpenStackDataPlaneRole) DeepCopyInto(out *OpenStackDataPlaneRole)
- func (in *OpenStackDataPlaneRole) DeepCopyObject() runtime.Object
- func (instance OpenStackDataPlaneRole) GetAnsibleEESpec() AnsibleEESpec
- func (instance *OpenStackDataPlaneRole) InitConditions()
- func (instance OpenStackDataPlaneRole) IsReady() bool
- func (instance OpenStackDataPlaneRole) Validate(nodes []OpenStackDataPlaneNode) error
- type OpenStackDataPlaneRoleList
- type OpenStackDataPlaneRoleSpec
- type OpenStackDataPlaneService
- func (in *OpenStackDataPlaneService) DeepCopy() *OpenStackDataPlaneService
- func (in *OpenStackDataPlaneService) DeepCopyInto(out *OpenStackDataPlaneService)
- func (in *OpenStackDataPlaneService) DeepCopyObject() runtime.Object
- func (instance OpenStackDataPlaneService) InitConditions()
- func (instance OpenStackDataPlaneService) IsReady() bool
- type OpenStackDataPlaneServiceList
- type OpenStackDataPlaneServiceSpec
- type OpenStackDataPlaneServiceStatus
- type OpenStackDataPlaneSpec
- type OpenStackDataPlaneStatus
Constants ¶
const ( // DataPlaneNodeReadyMessage ready DataPlaneNodeReadyMessage = "DataPlaneNode ready" // DataPlaneNodeReadyWaitingMessage ready DataPlaneNodeReadyWaitingMessage = "DataPlaneNode not yet ready" // DataPlaneNodeErrorMessage error DataPlaneNodeErrorMessage = "DataPlaneNode error occurred %s" // DataPlaneRoleReadyMessage ready DataPlaneRoleReadyMessage = "DataPlaneRole ready" // DataPlaneRoleReadyWaitingMessage ready DataPlaneRoleReadyWaitingMessage = "DataPlaneRole not yet ready" // DataPlaneRoleErrorMessage error DataPlaneRoleErrorMessage = "DataPlaneRole error occurred %s" // DataPlaneReadyMessage ready DataPlaneReadyMessage = "DataPlane ready" // DataPlaneReadyWaitingMessage ready DataPlaneReadyWaitingMessage = "DataPlane not yet ready" // DataPlaneErrorMessage error DataPlaneErrorMessage = "DataPlane error occurred %s" // ServiceReadyCondition Status=True condition indicates if the // service is finished and successful. ServiceReadyCondition string = "%s service ready" // 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" // ConfigureCephClientReadyCondition Status=True condition indicates if the // Ceph client configuration is finished and successful. ConfigureCephClientReadyCondition condition.Type = "ConfigureCephClientReady" // ConfigureCephClientReadyMessage ready ConfigureCephClientReadyMessage = "ConfigureCephClient ready" // ConfigureCephClientReadyWaitingMessage not yet ready ConfigureCephClientReadyWaitingMessage = "ConfigureCephClient not yet ready" // ConfigureCephClientErrorMessage error ConfigureCephClientErrorMessage = "ConfigureCephClient error occurred %s" // NovaComputeReadyCondition Status=True condition indicates nova-compute // has been deployed and is ready NovaComputeReadyCondition condition.Type = "NovaComputeReady" // NovaComputeReadyMessage ready NovaComputeReadyMessage = "NovaComputeReady ready" // NovaComputeReadyWaitingMessage not yet ready NovaComputeReadyWaitingMessage = "NovaComputeReady not yet ready" // NovaComputeErrorMessage error NovaComputeErrorMessage = "NovaCompute error occurred" // RoleBareMetalProvisionReadyCondition Status=True condition indicates // all baremetal nodes provisioned for the Role. RoleBareMetalProvisionReadyCondition condition.Type = "RoleBaremetalProvisionReady" // RoleBaremetalProvisionReadyMessage ready RoleBaremetalProvisionReadyMessage = "RoleBaremetalProvisionReady ready" // RoleBaremetalProvisionReadyWaitingMessage not yet ready RoleBaremetalProvisionReadyWaitingMessage = "RoleBaremetalProvisionReady not yet ready" // RoleBaremetalProvisionErrorMessage error RoleBaremetalProvisionErrorMessage = "RoleBaremetalProvisionReady error occurred" // RoleIPReservationReadyCondition Status=True condition indicates // IPSets reserved for all nodes in a Role. RoleIPReservationReadyCondition condition.Type = "RoleIPReservationReady" // RoleIPReservationReadyMessage ready RoleIPReservationReadyMessage = "RoleIPReservationReady ready" // RoleIPReservationReadyWaitingMessage not yet ready RoleIPReservationReadyWaitingMessage = "RoleIPReservationReady not yet ready" // RoleIPReservationReadyErrorMessage error RoleIPReservationReadyErrorMessage = "RoleIPReservationReady error occurred" // RoleDNSDataReadyCondition Status=True condition indicates // DNSData created for the Role. RoleDNSDataReadyCondition condition.Type = "RoleDNSDataReady" // RoleDNSDataReadyMessage ready RoleDNSDataReadyMessage = "RoleDNSDataReady ready" // RoleDNSDataReadyWaitingMessage not yet ready RoleDNSDataReadyWaitingMessage = "RoleDNSDataReady not yet ready" // RoleDNSDataReadyErrorMessage error RoleDNSDataReadyErrorMessage = "RoleDNSDataReady error occurred" // InputReadyWaitingMessage not yet ready InputReadyWaitingMessage = "Waiting for input %s, not yet ready" )
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 UniqueSpecFields = []string{"NetworkAttachments"}
UniqueSpecFields - the array of fields that must be unique between role and nodes
Functions ¶
func AssertUniquenessBetween ¶
AssertUniquenessBetween - compare specs for uniqueness
Types ¶
type AnsibleEESpec ¶
type AnsibleEESpec struct {
// +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
// OpenStackAnsibleEERunnerImage image to use as the ansibleEE runner image
OpenStackAnsibleEERunnerImage string `json:"openStackAnsibleEERunnerImage,omitempty"`
// +kubebuilder:validation:Optional
// AnsibleTags for ansible execution
AnsibleTags string `json:"ansibleTags,omitempty"`
// +kubebuilder:validation:Optional
// AnsibleLimit for ansible execution
AnsibleLimit string `json:"ansibleLimit,omitempty"`
// +kubebuilder:validation:Optional
// AnsibleSkipTags for ansible execution
AnsibleSkipTags string `json:"ansibleSkipTags,omitempty"`
// ExtraMounts containing files which can be mounted into an Ansible Execution Pod
// +kubebuilder:validation:Optional
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"`
// DNSConfig for setting dnsservers
DNSConfig *corev1.PodDNSConfig `json:"dnsConfig,omitempty"`
}
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 DeployStrategySection ¶
type DeployStrategySection struct {
// +kubebuilder:default=true
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
// Deploy boolean to trigger ansible execution
Deploy bool `json:"deploy"`
// +kubebuilder:validation:Optional
// AnsibleTags for ansible execution
AnsibleTags string `json:"ansibleTags,omitempty"`
// +kubebuilder:validation:Optional
// AnsibleLimit for ansible execution
AnsibleLimit string `json:"ansibleLimit,omitempty"`
// +kubebuilder:validation:Optional
// AnsibleSkipTags for ansible execution
AnsibleSkipTags string `json:"ansibleSkipTags,omitempty"`
}
DeployStrategySection for fields controlling the deployment
func (*DeployStrategySection) DeepCopy ¶
func (in *DeployStrategySection) DeepCopy() *DeployStrategySection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployStrategySection.
func (*DeployStrategySection) DeepCopyInto ¶
func (in *DeployStrategySection) DeepCopyInto(out *DeployStrategySection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkConfigSection ¶
type NetworkConfigSection struct {
// +kubebuilder:validation:Optional
// Template - Contains a Ansible j2 nic config template to use when applying node
// network configuration
Template string `json:"template,omitempty" yaml:"template,omitempty"`
}
NetworkConfigSection is a specification of the Network configuration details
func (*NetworkConfigSection) DeepCopy ¶
func (in *NetworkConfigSection) DeepCopy() *NetworkConfigSection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkConfigSection.
func (*NetworkConfigSection) DeepCopyInto ¶
func (in *NetworkConfigSection) DeepCopyInto(out *NetworkConfigSection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeSection ¶
type NodeSection struct {
// +kubebuilder:validation:Optional
// NetworkConfig - Network configuration details. Contains os-net-config
// related properties.
NetworkConfig NetworkConfigSection `json:"networkConfig,omitempty"`
// +kubebuilder:validation:Optional
// Networks - Instance networks
Networks []infranetworkv1.IPSetNetwork `json:"networks,omitempty"`
// +kubebuilder:validation:Optional
// ManagementNetwork - Name of network to use for management (SSH/Ansible)
ManagementNetwork string `json:"managementNetwork,omitempty"`
// +kubebuilder:validation:Optional
// AnsibleUser SSH user for Ansible connection
AnsibleUser string `json:"ansibleUser,omitempty"`
// +kubebuilder:validation:Optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:number"}
// AnsiblePort SSH port for Ansible connection
AnsiblePort int `json:"ansiblePort,omitempty"`
// +kubebuilder:validation:Optional
// AnsibleVars for configuring ansible
AnsibleVars string `json:"ansibleVars,omitempty"`
// +kubebuilder:validation:Optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:io.kubernetes:Secret"}
// AnsibleSSHPrivateKeySecret Private SSH Key secret containing private SSH
// key for connecting to node. Must be of the form:
// Secret.data.ssh-privatekey: <base64 encoded private key contents>
// <https://kubernetes.io/docs/concepts/configuration/secret/#ssh-authentication-secrets>
AnsibleSSHPrivateKeySecret string `json:"ansibleSSHPrivateKeySecret,omitempty"`
// ExtraMounts containing files which can be mounted into an Ansible Execution Pod
// +kubebuilder:validation:Optional
ExtraMounts []storage.VolMounts `json:"extraMounts,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"`
// NovaTemplate specifies the parameters for the compute service deployment
// on the EDPM node. If it is specified both in OpenstackDataPlaneRole and
// the OpenstackDataPlaneNode for the same EDPM node then the configuration
// in OpenstackDataPlaneNode will be used and the configuration in the
// OpenstackDataPlaneRole will be ignored. If this is defined in neither
// then compute service(s) will not be deployed on the EDPM node.
// +kubebuilder:validation:Optional
Nova *NovaTemplate `json:"nova,omitempty"`
}
NodeSection is a specification of the node attributes
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 NovaTemplate ¶
type NovaTemplate struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default=cell1
// CellName is the name of nova cell the compute(s) should be connected to
CellName string `json:"cellName"`
// +kubebuilder:validation:Optional
// +kubebuilder:default=nova
// NovaInstance is the name of the Nova CR that represents the deployment
// the compute(s) belongs to.
// You can query the name of the Nova CRs in you system via
// `oc get Nova -o jsonpath='{.items[*].metadata.name}'`
NovaInstance string `json:"novaInstance"`
// +kubebuilder:validation:Optional
// CustomServiceConfig - customize the nova-compute 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/nova/nova.conf.d directory as 02-nova-override.conf file.
CustomServiceConfig string `json:"customServiceConfig,omitempty"`
// +kubebuilder:validation:Optional
// +kubebuilder:default=true
// Deploy true means the compute service(s) are allowed to be changed on
// the EDPM node(s) if necessary. If set to false then only the
// pre-requisite data (e.g. config maps) will be generated but no actual
// modification on the compute node(s) itself will happen.
Deploy *bool `json:"deploy"`
}
NovaTemplate specifies the parameters for the compute service deployment on the EDPM node.
func (*NovaTemplate) DeepCopy ¶
func (in *NovaTemplate) DeepCopy() *NovaTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NovaTemplate.
func (*NovaTemplate) DeepCopyInto ¶
func (in *NovaTemplate) DeepCopyInto(out *NovaTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackDataPlane ¶
type OpenStackDataPlane struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec OpenStackDataPlaneSpec `json:"spec,omitempty"`
Status OpenStackDataPlaneStatus `json:"status,omitempty"`
}
OpenStackDataPlane is the Schema for the openstackdataplanes API
func (*OpenStackDataPlane) DeepCopy ¶
func (in *OpenStackDataPlane) DeepCopy() *OpenStackDataPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlane.
func (*OpenStackDataPlane) DeepCopyInto ¶
func (in *OpenStackDataPlane) DeepCopyInto(out *OpenStackDataPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlane) DeepCopyObject ¶
func (in *OpenStackDataPlane) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackDataPlane) Default ¶
func (r *OpenStackDataPlane) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*OpenStackDataPlane) InitConditions ¶
func (instance *OpenStackDataPlane) InitConditions()
InitConditions - Initializes Status Conditons
func (OpenStackDataPlane) IsReady ¶
func (instance OpenStackDataPlane) IsReady() bool
IsReady - returns true if service is ready to serve requests
func (*OpenStackDataPlane) SetupWebhookWithManager ¶
func (r *OpenStackDataPlane) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager sets up the webhook with the Manager
func (*OpenStackDataPlane) ValidateCreate ¶
func (r *OpenStackDataPlane) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*OpenStackDataPlane) ValidateDelete ¶
func (r *OpenStackDataPlane) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*OpenStackDataPlane) ValidateUpdate ¶
func (r *OpenStackDataPlane) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type OpenStackDataPlaneList ¶
type OpenStackDataPlaneList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []OpenStackDataPlane `json:"items"`
}
OpenStackDataPlaneList contains a list of OpenStackDataPlane
func (*OpenStackDataPlaneList) DeepCopy ¶
func (in *OpenStackDataPlaneList) DeepCopy() *OpenStackDataPlaneList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneList.
func (*OpenStackDataPlaneList) DeepCopyInto ¶
func (in *OpenStackDataPlaneList) DeepCopyInto(out *OpenStackDataPlaneList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneList) DeepCopyObject ¶
func (in *OpenStackDataPlaneList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenStackDataPlaneNode ¶
type OpenStackDataPlaneNode struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec OpenStackDataPlaneNodeSpec `json:"spec,omitempty"`
Status OpenStackDataPlaneStatus `json:"status,omitempty"`
}
OpenStackDataPlaneNode is the Schema for the openstackdataplanenodes API
func (*OpenStackDataPlaneNode) DeepCopy ¶
func (in *OpenStackDataPlaneNode) DeepCopy() *OpenStackDataPlaneNode
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneNode.
func (*OpenStackDataPlaneNode) DeepCopyInto ¶
func (in *OpenStackDataPlaneNode) DeepCopyInto(out *OpenStackDataPlaneNode)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneNode) DeepCopyObject ¶
func (in *OpenStackDataPlaneNode) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (OpenStackDataPlaneNode) GetAnsibleEESpec ¶
func (instance OpenStackDataPlaneNode) GetAnsibleEESpec(role OpenStackDataPlaneRole) AnsibleEESpec
GetAnsibleEESpec - get the fields that will be passed to AEE
func (*OpenStackDataPlaneNode) InitConditions ¶
func (instance *OpenStackDataPlaneNode) InitConditions(instanceRole *OpenStackDataPlaneRole)
InitConditions - Initializes Status Conditons
func (OpenStackDataPlaneNode) IsReady ¶
func (instance OpenStackDataPlaneNode) IsReady() bool
IsReady - returns true if the DataPlaneNode is ready
func (OpenStackDataPlaneNode) IsSetupReady ¶
func (instance OpenStackDataPlaneNode) IsSetupReady() bool
IsSetupReady - returns true if the DataPlaneNode is ready to be deployed
func (OpenStackDataPlaneNode) Validate ¶
func (instance OpenStackDataPlaneNode) Validate(role OpenStackDataPlaneRole) error
Validate - validates the shared data between node and role
type OpenStackDataPlaneNodeList ¶
type OpenStackDataPlaneNodeList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []OpenStackDataPlaneNode `json:"items"`
}
OpenStackDataPlaneNodeList contains a list of OpenStackDataPlaneNode
func (*OpenStackDataPlaneNodeList) DeepCopy ¶
func (in *OpenStackDataPlaneNodeList) DeepCopy() *OpenStackDataPlaneNodeList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneNodeList.
func (*OpenStackDataPlaneNodeList) DeepCopyInto ¶
func (in *OpenStackDataPlaneNodeList) DeepCopyInto(out *OpenStackDataPlaneNodeList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneNodeList) DeepCopyObject ¶
func (in *OpenStackDataPlaneNodeList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenStackDataPlaneNodeSpec ¶
type OpenStackDataPlaneNodeSpec struct {
// +kubebuilder:validation:Optional
// HostName - node name
HostName string `json:"hostName,omitempty"`
// +kubebuilder:validation:Optional
// Node - node attributes specific to this node
Node NodeSection `json:"node,omitempty"`
// +kubebuilder:validation:Optional
// Role - role name for this node
Role string `json:"role,omitempty"`
// +kubebuilder:validation:Optional
// AnsibleHost SSH host for Ansible connection
AnsibleHost string `json:"ansibleHost,omitempty"`
// Env is a list containing the environment variables to pass to the pod
Env []corev1.EnvVar `json:"env,omitempty"`
// +kubebuilder:validation:Optional
// DeployStrategy section to control how the node is deployed
DeployStrategy DeployStrategySection `json:"deployStrategy,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"`
}
OpenStackDataPlaneNodeSpec defines the desired state of OpenStackDataPlaneNode
func (*OpenStackDataPlaneNodeSpec) DeepCopy ¶
func (in *OpenStackDataPlaneNodeSpec) DeepCopy() *OpenStackDataPlaneNodeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneNodeSpec.
func (*OpenStackDataPlaneNodeSpec) DeepCopyInto ¶
func (in *OpenStackDataPlaneNodeSpec) DeepCopyInto(out *OpenStackDataPlaneNodeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackDataPlaneRole ¶
type OpenStackDataPlaneRole struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec OpenStackDataPlaneRoleSpec `json:"spec,omitempty"`
Status OpenStackDataPlaneStatus `json:"status,omitempty"`
}
OpenStackDataPlaneRole is the Schema for the openstackdataplaneroles API
func (*OpenStackDataPlaneRole) DeepCopy ¶
func (in *OpenStackDataPlaneRole) DeepCopy() *OpenStackDataPlaneRole
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneRole.
func (*OpenStackDataPlaneRole) DeepCopyInto ¶
func (in *OpenStackDataPlaneRole) DeepCopyInto(out *OpenStackDataPlaneRole)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneRole) DeepCopyObject ¶
func (in *OpenStackDataPlaneRole) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (OpenStackDataPlaneRole) GetAnsibleEESpec ¶
func (instance OpenStackDataPlaneRole) GetAnsibleEESpec() AnsibleEESpec
GetAnsibleEESpec - get the fields that will be passed to AEE
func (*OpenStackDataPlaneRole) InitConditions ¶
func (instance *OpenStackDataPlaneRole) InitConditions()
InitConditions - Initializes Status Conditons
func (OpenStackDataPlaneRole) IsReady ¶
func (instance OpenStackDataPlaneRole) IsReady() bool
IsReady - returns true if the DataPlane is ready
func (OpenStackDataPlaneRole) Validate ¶
func (instance OpenStackDataPlaneRole) Validate(nodes []OpenStackDataPlaneNode) error
Validate - validates the shared data between role and nodes
type OpenStackDataPlaneRoleList ¶
type OpenStackDataPlaneRoleList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []OpenStackDataPlaneRole `json:"items"`
}
OpenStackDataPlaneRoleList contains a list of OpenStackDataPlaneRole
func (*OpenStackDataPlaneRoleList) DeepCopy ¶
func (in *OpenStackDataPlaneRoleList) DeepCopy() *OpenStackDataPlaneRoleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneRoleList.
func (*OpenStackDataPlaneRoleList) DeepCopyInto ¶
func (in *OpenStackDataPlaneRoleList) DeepCopyInto(out *OpenStackDataPlaneRoleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneRoleList) DeepCopyObject ¶
func (in *OpenStackDataPlaneRoleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenStackDataPlaneRoleSpec ¶
type OpenStackDataPlaneRoleSpec struct {
// +kubebuilder:validation:Optional
// DataPlane name of OpenStackDataPlane for this role
DataPlane string `json:"dataPlane,omitempty"`
// +kubebuilder:validation:Optional
// BaremetalSetTemplate Template for BaremetalSet for the Role
BaremetalSetTemplate baremetalv1.OpenStackBaremetalSetSpec `json:"baremetalSetTemplate,omitempty"`
// +kubebuilder:validation:Optional
// NodeTemplate - node attributes specific to this roles
NodeTemplate NodeSection `json:"nodeTemplate,omitempty"`
// +kubebuilder:validation:Optional
//
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
// PreProvisioned - Whether the nodes are actually pre-provisioned (True) or should be
// preprovisioned (False)
PreProvisioned bool `json:"preProvisioned,omitempty"`
// Env is a list containing the environment variables to pass to the pod
Env []corev1.EnvVar `json:"env,omitempty"`
// +kubebuilder:validation:Optional
// DeployStrategy section to control how the node is deployed
DeployStrategy DeployStrategySection `json:"deployStrategy,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={configure-network,validate-network,install-os,configure-os,run-os}
// Services list
Services []string `json:"services"`
}
OpenStackDataPlaneRoleSpec defines the desired state of OpenStackDataPlaneRole
func (*OpenStackDataPlaneRoleSpec) DeepCopy ¶
func (in *OpenStackDataPlaneRoleSpec) DeepCopy() *OpenStackDataPlaneRoleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneRoleSpec.
func (*OpenStackDataPlaneRoleSpec) DeepCopyInto ¶
func (in *OpenStackDataPlaneRoleSpec) DeepCopyInto(out *OpenStackDataPlaneRoleSpec)
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
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) 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
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 {
// Label to use for service
// +kubebuilder:validation:Optional
Label string `json:"label,omitempty"`
// Play is the playbook contents that ansible will run on execution.
// If both Play and Role are specified, Play takes precedence
Play string `json:"play,omitempty"`
// Role is the description of an Ansible Role
// +kubebuilder:validation:Optional
Role *ansibleeev1.Role `json:"role,omitempty"`
// +kubebuilder:validation:Optional
// OpenStackAnsibleEERunnerImage image to use as the ansibleEE runner image
OpenStackAnsibleEERunnerImage string `json:"openStackAnsibleEERunnerImage,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.
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 OpenStackDataPlaneSpec ¶
type OpenStackDataPlaneSpec struct {
// +kubebuilder:validation:Optional
// Nodes - Map of nodes
Nodes map[string]OpenStackDataPlaneNodeSpec `json:"nodes,omitempty"`
// +kubebuilder:validation:Optional
// Roles - Map of roles
Roles map[string]OpenStackDataPlaneRoleSpec `json:"roles,omitempty"`
// +kubebuilder:validation:Optional
// DeployStrategy section to control how the node is deployed
DeployStrategy DeployStrategySection `json:"deployStrategy,omitempty"`
}
OpenStackDataPlaneSpec defines the desired state of OpenStackDataPlane
func (*OpenStackDataPlaneSpec) DeepCopy ¶
func (in *OpenStackDataPlaneSpec) DeepCopy() *OpenStackDataPlaneSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneSpec.
func (*OpenStackDataPlaneSpec) DeepCopyInto ¶
func (in *OpenStackDataPlaneSpec) DeepCopyInto(out *OpenStackDataPlaneSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackDataPlaneSpec) Default ¶
func (spec *OpenStackDataPlaneSpec) Default()
Default - set defaults for this OpenStackDataPlane spec
func (*OpenStackDataPlaneSpec) Validate ¶
func (spec *OpenStackDataPlaneSpec) Validate() field.ErrorList
Validate implements common validations
type OpenStackDataPlaneStatus ¶
type OpenStackDataPlaneStatus struct {
// +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:io.kubernetes.conditions"}
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
// +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
// Deployed
Deployed bool `json:"deployed,omitempty" optional:"true"`
}
OpenStackDataPlaneStatus defines the observed state of OpenStackDataPlaneNode
func (*OpenStackDataPlaneStatus) DeepCopy ¶
func (in *OpenStackDataPlaneStatus) DeepCopy() *OpenStackDataPlaneStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackDataPlaneStatus.
func (*OpenStackDataPlaneStatus) DeepCopyInto ¶
func (in *OpenStackDataPlaneStatus) DeepCopyInto(out *OpenStackDataPlaneStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.