Help us shape the future of Go! Take the 2026 Go Developer Survey

v1beta1

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Aug 16, 2023 License: Apache-2.0 Imports: 17 Imported by: 3

Documentation

Overview

Package v1beta1 contains API Schema definitions for the dataplane v1beta1 API group +kubebuilder:object:generate=true +groupName=dataplane.openstack.org

Index

Constants

View Source
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

View Source
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
)
View Source
var UniqueSpecFields = []string{"NetworkAttachments"}

UniqueSpecFields - the array of fields that must be unique between role and nodes

Functions

func AssertUniquenessBetween

func AssertUniquenessBetween(spec interface{}, otherSpec interface{}, suffix string) []string

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

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

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

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

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

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

func (*OpenStackDataPlaneNodeList) DeepCopyInto

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

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

func (*OpenStackDataPlaneNodeSpec) DeepCopyInto

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

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

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

func (*OpenStackDataPlaneRoleList) DeepCopyInto

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

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

func (*OpenStackDataPlaneRoleSpec) DeepCopyInto

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

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

func (*OpenStackDataPlaneService) DeepCopyInto

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

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

func (*OpenStackDataPlaneServiceList) DeepCopyInto

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

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

func (*OpenStackDataPlaneServiceSpec) DeepCopyInto

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

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

func (*OpenStackDataPlaneServiceStatus) DeepCopyInto

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

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

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.

Jump to

Keyboard shortcuts

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