Documentation ¶
Overview ¶
package v1alpha7 contains API Schema definitions for the infrastructure v1alpha7 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- type APIServerLoadBalancer
- type AdditionalBlockDevice
- type AddressPair
- type Bastion
- type BastionStatus
- type BindingProfile
- type BlockDeviceStorage
- type BlockDeviceType
- type BlockDeviceVolume
- type ExternalRouterIPParam
- type FixedIP
- type InstanceState
- type LoadBalancer
- type NetworkFilter
- type NetworkStatus
- type NetworkStatusWithSubnets
- type OpenStackCluster
- func (in *OpenStackCluster) DeepCopy() *OpenStackCluster
- func (in *OpenStackCluster) DeepCopyInto(out *OpenStackCluster)
- func (in *OpenStackCluster) DeepCopyObject() runtime.Object
- func (r *OpenStackCluster) Default()
- func (*OpenStackCluster) Hub()
- func (r *OpenStackCluster) SetupWebhookWithManager(mgr manager.Manager) error
- func (r *OpenStackCluster) ValidateCreate() (admission.Warnings, error)
- func (r *OpenStackCluster) ValidateDelete() (admission.Warnings, error)
- func (r *OpenStackCluster) ValidateUpdate(oldRaw runtime.Object) (admission.Warnings, error)
- type OpenStackClusterList
- func (in *OpenStackClusterList) DeepCopy() *OpenStackClusterList
- func (in *OpenStackClusterList) DeepCopyInto(out *OpenStackClusterList)
- func (in *OpenStackClusterList) DeepCopyObject() runtime.Object
- func (*OpenStackClusterList) Hub()
- func (r *OpenStackClusterList) SetupWebhookWithManager(mgr manager.Manager) error
- type OpenStackClusterSpec
- type OpenStackClusterStatus
- type OpenStackClusterTemplate
- func (in *OpenStackClusterTemplate) DeepCopy() *OpenStackClusterTemplate
- func (in *OpenStackClusterTemplate) DeepCopyInto(out *OpenStackClusterTemplate)
- func (in *OpenStackClusterTemplate) DeepCopyObject() runtime.Object
- func (r *OpenStackClusterTemplate) Default()
- func (*OpenStackClusterTemplate) Hub()
- func (r *OpenStackClusterTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *OpenStackClusterTemplate) ValidateCreate() (admission.Warnings, error)
- func (r *OpenStackClusterTemplate) ValidateDelete() (admission.Warnings, error)
- func (r *OpenStackClusterTemplate) ValidateUpdate(oldRaw runtime.Object) (admission.Warnings, error)
- type OpenStackClusterTemplateList
- type OpenStackClusterTemplateResource
- type OpenStackClusterTemplateSpec
- type OpenStackIdentityReference
- type OpenStackMachine
- func (in *OpenStackMachine) DeepCopy() *OpenStackMachine
- func (in *OpenStackMachine) DeepCopyInto(out *OpenStackMachine)
- func (in *OpenStackMachine) DeepCopyObject() runtime.Object
- func (r *OpenStackMachine) Default()
- func (r *OpenStackMachine) GetConditions() clusterv1.Conditions
- func (*OpenStackMachine) Hub()
- func (r *OpenStackMachine) SetConditions(conditions clusterv1.Conditions)
- func (r *OpenStackMachine) SetFailure(failureReason errors.MachineStatusError, failureMessage error)
- func (r *OpenStackMachine) SetupWebhookWithManager(mgr manager.Manager) error
- func (r *OpenStackMachine) ValidateCreate() (admission.Warnings, error)
- func (r *OpenStackMachine) ValidateDelete() (admission.Warnings, error)
- func (r *OpenStackMachine) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type OpenStackMachineList
- func (in *OpenStackMachineList) DeepCopy() *OpenStackMachineList
- func (in *OpenStackMachineList) DeepCopyInto(out *OpenStackMachineList)
- func (in *OpenStackMachineList) DeepCopyObject() runtime.Object
- func (*OpenStackMachineList) Hub()
- func (r *OpenStackMachineList) SetupWebhookWithManager(mgr manager.Manager) error
- type OpenStackMachineSpec
- type OpenStackMachineStatus
- type OpenStackMachineTemplate
- type OpenStackMachineTemplateList
- func (in *OpenStackMachineTemplateList) DeepCopy() *OpenStackMachineTemplateList
- func (in *OpenStackMachineTemplateList) DeepCopyInto(out *OpenStackMachineTemplateList)
- func (in *OpenStackMachineTemplateList) DeepCopyObject() runtime.Object
- func (*OpenStackMachineTemplateList) Hub()
- func (r *OpenStackMachineTemplateList) SetupWebhookWithManager(mgr manager.Manager) error
- type OpenStackMachineTemplateResource
- type OpenStackMachineTemplateSpec
- type OpenStackMachineTemplateWebhook
- func (r *OpenStackMachineTemplateWebhook) SetupWebhookWithManager(mgr manager.Manager) error
- func (r *OpenStackMachineTemplateWebhook) ValidateCreate(_ context.Context, obj runtime.Object) (admission.Warnings, error)
- func (r *OpenStackMachineTemplateWebhook) ValidateDelete(_ context.Context, _ runtime.Object) (admission.Warnings, error)
- func (r *OpenStackMachineTemplateWebhook) ValidateUpdate(ctx context.Context, oldRaw runtime.Object, newRaw runtime.Object) (admission.Warnings, error)
- type PortOpts
- type RootVolume
- type Router
- type RouterFilter
- type SecurityGroup
- type SecurityGroupFilter
- type SecurityGroupRule
- type Subnet
- type SubnetFilter
- type ValueSpec
Constants ¶
const ( // InstanceReadyCondition reports on current status of the OpenStack instance. Ready indicates the instance is in a Running state. InstanceReadyCondition clusterv1.ConditionType = "InstanceReady" // WaitingForClusterInfrastructureReason used when machine is waiting for cluster infrastructure to be ready before proceeding. WaitingForClusterInfrastructureReason = "WaitingForClusterInfrastructure" // WaitingForBootstrapDataReason used when machine is waiting for bootstrap data to be ready before proceeding. WaitingForBootstrapDataReason = "WaitingForBootstrapData" // InvalidMachineSpecReason used when the machine spec is invalid. InvalidMachineSpecReason = "InvalidMachineSpec" // InstanceCreateFailedReason used when creating the instance failed. InstanceCreateFailedReason = "InstanceCreateFailed" // InstanceNotFoundReason used when the instance couldn't be retrieved. InstanceNotFoundReason = "InstanceNotFound" // InstanceStateErrorReason used when the instance is in error state. InstanceStateErrorReason = "InstanceStateError" // InstanceDeletedReason used when the instance is in a deleted state. InstanceDeletedReason = "InstanceDeleted" // InstanceNotReadyReason used when the instance is in a pending state. InstanceNotReadyReason = "InstanceNotReady" // InstanceDeleteFailedReason used when deleting the instance failed. InstanceDeleteFailedReason = "InstanceDeleteFailed" // OpenstackErrorReason used when there is an error communicating with OpenStack. OpenStackErrorReason = "OpenStackError" )
const ( // APIServerIngressReadyCondition reports on the current status of the network ingress (Loadbalancer, Floating IP) for Control Plane machines. Ready indicates that the instance can receive requests. APIServerIngressReadyCondition clusterv1.ConditionType = "APIServerIngressReadyCondition" // LoadBalancerMemberErrorReason used when the instance could not be added as a loadbalancer member. LoadBalancerMemberErrorReason = "LoadBalancerMemberError" // FloatingIPErrorReason used when the floating ip could not be created or attached. FloatingIPErrorReason = "FloatingIPError" )
const ( // ClusterFinalizer allows ReconcileOpenStackCluster to clean up OpenStack resources associated with OpenStackCluster before // removing it from the apiserver. ClusterFinalizer = "openstackcluster.infrastructure.cluster.x-k8s.io" )
const ( // MachineFinalizer allows ReconcileOpenStackMachine to clean up OpenStack resources associated with OpenStackMachine before // removing it from the apiserver. MachineFinalizer = "openstackmachine.infrastructure.cluster.x-k8s.io" )
const OpenStackMachineTemplateImmutableMsg = "" /* 177-byte string literal not displayed */
OpenStackMachineTemplateImmutableMsg ...
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "infrastructure.cluster.x-k8s.io", Version: "v1alpha7"} // 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 ( // InstanceStateBuilding is the string representing an instance in a building state. InstanceStateBuilding = InstanceState("BUILDING") // InstanceStateActive is the string representing an instance in an active state. InstanceStateActive = InstanceState("ACTIVE") // InstanceStateError is the string representing an instance in an error state. InstanceStateError = InstanceState("ERROR") // InstanceStateStopped is the string representing an instance in a stopped state. InstanceStateStopped = InstanceState("STOPPED") // InstanceStateShutoff is the string representing an instance in a shutoff state. InstanceStateShutoff = InstanceState("SHUTOFF") // InstanceStateDeleted is the string representing an instance in a deleted state. InstanceStateDeleted = InstanceState("DELETED") )
Functions ¶
This section is empty.
Types ¶
type APIServerLoadBalancer ¶
type APIServerLoadBalancer struct { // Enabled defines whether a load balancer should be created. Enabled bool `json:"enabled,omitempty"` // AdditionalPorts adds additional tcp ports to the load balancer. AdditionalPorts []int `json:"additionalPorts,omitempty"` // AllowedCIDRs restrict access to all API-Server listeners to the given address CIDRs. AllowedCIDRs []string `json:"allowedCidrs,omitempty"` // Octavia Provider Used to create load balancer Provider string `json:"provider,omitempty"` }
func (*APIServerLoadBalancer) DeepCopy ¶
func (in *APIServerLoadBalancer) DeepCopy() *APIServerLoadBalancer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerLoadBalancer.
func (*APIServerLoadBalancer) DeepCopyInto ¶
func (in *APIServerLoadBalancer) DeepCopyInto(out *APIServerLoadBalancer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdditionalBlockDevice ¶
type AdditionalBlockDevice struct { // Name of the block device in the context of a machine. // If the block device is a volume, the Cinder volume will be named // as a combination of the machine name and this name. // Also, this name will be used for tagging the block device. // Information about the block device tag can be obtained from the OpenStack // metadata API or the config drive. Name string `json:"name"` // SizeGiB is the size of the block device in gibibytes (GiB). SizeGiB int `json:"sizeGiB"` // Storage specifies the storage type of the block device and // additional storage options. Storage BlockDeviceStorage `json:"storage"` }
AdditionalBlockDevice is a block device to attach to the server.
func (*AdditionalBlockDevice) DeepCopy ¶
func (in *AdditionalBlockDevice) DeepCopy() *AdditionalBlockDevice
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdditionalBlockDevice.
func (*AdditionalBlockDevice) DeepCopyInto ¶
func (in *AdditionalBlockDevice) DeepCopyInto(out *AdditionalBlockDevice)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddressPair ¶
type AddressPair struct { IPAddress string `json:"ipAddress,omitempty"` MACAddress string `json:"macAddress,omitempty"` }
func (*AddressPair) DeepCopy ¶
func (in *AddressPair) DeepCopy() *AddressPair
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddressPair.
func (*AddressPair) DeepCopyInto ¶
func (in *AddressPair) DeepCopyInto(out *AddressPair)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Bastion ¶
type Bastion struct { //+optional Enabled bool `json:"enabled"` // Instance for the bastion itself Instance OpenStackMachineSpec `json:"instance,omitempty"` //+optional AvailabilityZone string `json:"availabilityZone,omitempty"` }
Bastion represents basic information about the bastion node.
func (*Bastion) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Bastion.
func (*Bastion) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BastionStatus ¶
type BastionStatus struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` SSHKeyName string `json:"sshKeyName,omitempty"` State InstanceState `json:"state,omitempty"` IP string `json:"ip,omitempty"` FloatingIP string `json:"floatingIP,omitempty"` }
func (*BastionStatus) DeepCopy ¶
func (in *BastionStatus) DeepCopy() *BastionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BastionStatus.
func (*BastionStatus) DeepCopyInto ¶
func (in *BastionStatus) DeepCopyInto(out *BastionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BindingProfile ¶
type BindingProfile struct { // OVSHWOffload enables or disables the OVS hardware offload feature. OVSHWOffload bool `json:"ovsHWOffload,omitempty"` // TrustedVF enables or disables the “trusted mode” for the VF. TrustedVF bool `json:"trustedVF,omitempty"` }
func (*BindingProfile) DeepCopy ¶
func (in *BindingProfile) DeepCopy() *BindingProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BindingProfile.
func (*BindingProfile) DeepCopyInto ¶
func (in *BindingProfile) DeepCopyInto(out *BindingProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BlockDeviceStorage ¶
type BlockDeviceStorage struct { // Type is the type of block device to create. // This can be either "Volume" or "Local". // +unionDiscriminator Type BlockDeviceType `json:"type"` // Volume contains additional storage options for a volume block device. // +optional // +unionMember,optional Volume *BlockDeviceVolume `json:"volume,omitempty"` }
BlockDeviceStorage is the storage type of a block device to create and contains additional storage options. +union
func (*BlockDeviceStorage) DeepCopy ¶
func (in *BlockDeviceStorage) DeepCopy() *BlockDeviceStorage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlockDeviceStorage.
func (*BlockDeviceStorage) DeepCopyInto ¶
func (in *BlockDeviceStorage) DeepCopyInto(out *BlockDeviceStorage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BlockDeviceType ¶
type BlockDeviceType string
BlockDeviceType defines the type of block device to create.
const ( // LocalBlockDevice is an ephemeral block device attached to the server. LocalBlockDevice BlockDeviceType = "Local" // VolumeBlockDevice is a volume block device attached to the server. VolumeBlockDevice BlockDeviceType = "Volume" )
type BlockDeviceVolume ¶
type BlockDeviceVolume struct { // Type is the Cinder volume type of the volume. // If omitted, the default Cinder volume type that is configured in the OpenStack cloud // will be used. // +optional Type string `json:"type,omitempty"` // AvailabilityZone is the volume availability zone to create the volume in. // If omitted, the availability zone of the server will be used. // The availability zone must NOT contain spaces otherwise it will lead to volume that belongs // to this availability zone register failure, see kubernetes/cloud-provider-openstack#1379 for // further information. // +optional AvailabilityZone string `json:"availabilityZone,omitempty"` }
BlockDeviceVolume contains additional storage options for a volume block device.
func (*BlockDeviceVolume) DeepCopy ¶
func (in *BlockDeviceVolume) DeepCopy() *BlockDeviceVolume
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlockDeviceVolume.
func (*BlockDeviceVolume) DeepCopyInto ¶
func (in *BlockDeviceVolume) DeepCopyInto(out *BlockDeviceVolume)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalRouterIPParam ¶
type ExternalRouterIPParam struct { // The FixedIP in the corresponding subnet FixedIP string `json:"fixedIP,omitempty"` // The subnet in which the FixedIP is used for the Gateway of this router Subnet SubnetFilter `json:"subnet"` }
func (*ExternalRouterIPParam) DeepCopy ¶
func (in *ExternalRouterIPParam) DeepCopy() *ExternalRouterIPParam
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalRouterIPParam.
func (*ExternalRouterIPParam) DeepCopyInto ¶
func (in *ExternalRouterIPParam) DeepCopyInto(out *ExternalRouterIPParam)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FixedIP ¶
type FixedIP struct { // Subnet is an openstack subnet query that will return the id of a subnet to create // the fixed IP of a port in. This query must not return more than one subnet. Subnet *SubnetFilter `json:"subnet"` IPAddress string `json:"ipAddress,omitempty"` }
func (*FixedIP) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FixedIP.
func (*FixedIP) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InstanceState ¶
type InstanceState string
InstanceState describes the state of an OpenStack instance.
type LoadBalancer ¶
type LoadBalancer struct { Name string `json:"name"` ID string `json:"id"` IP string `json:"ip"` InternalIP string `json:"internalIP"` //+optional AllowedCIDRs []string `json:"allowedCIDRs,omitempty"` //+optional Tags []string `json:"tags,omitempty"` }
LoadBalancer represents basic information about the associated OpenStack LoadBalancer.
func (*LoadBalancer) DeepCopy ¶
func (in *LoadBalancer) DeepCopy() *LoadBalancer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancer.
func (*LoadBalancer) DeepCopyInto ¶
func (in *LoadBalancer) DeepCopyInto(out *LoadBalancer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkFilter ¶
type NetworkFilter struct { Name string `json:"name,omitempty"` Description string `json:"description,omitempty"` ProjectID string `json:"projectId,omitempty"` ID string `json:"id,omitempty"` Tags string `json:"tags,omitempty"` TagsAny string `json:"tagsAny,omitempty"` NotTags string `json:"notTags,omitempty"` NotTagsAny string `json:"notTagsAny,omitempty"` }
func (*NetworkFilter) DeepCopy ¶
func (in *NetworkFilter) DeepCopy() *NetworkFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkFilter.
func (*NetworkFilter) DeepCopyInto ¶
func (in *NetworkFilter) DeepCopyInto(out *NetworkFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (NetworkFilter) ToListOpt ¶
func (networkFilter NetworkFilter) ToListOpt() networks.ListOpts
type NetworkStatus ¶
type NetworkStatus struct { Name string `json:"name"` ID string `json:"id"` //+optional Tags []string `json:"tags,omitempty"` }
NetworkStatus contains basic information about an existing neutron network.
func (*NetworkStatus) DeepCopy ¶
func (in *NetworkStatus) DeepCopy() *NetworkStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkStatus.
func (*NetworkStatus) DeepCopyInto ¶
func (in *NetworkStatus) DeepCopyInto(out *NetworkStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkStatusWithSubnets ¶
type NetworkStatusWithSubnets struct { NetworkStatus `json:",inline"` // Subnets is a list of subnets associated with the default cluster network. Machines which use the default cluster network will get an address from all of these subnets. Subnets []Subnet `json:"subnets,omitempty"` }
NetworkStatusWithSubnets represents basic information about an existing neutron network and an associated set of subnets.
func (*NetworkStatusWithSubnets) DeepCopy ¶
func (in *NetworkStatusWithSubnets) DeepCopy() *NetworkStatusWithSubnets
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkStatusWithSubnets.
func (*NetworkStatusWithSubnets) DeepCopyInto ¶
func (in *NetworkStatusWithSubnets) DeepCopyInto(out *NetworkStatusWithSubnets)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackCluster ¶
type OpenStackCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OpenStackClusterSpec `json:"spec,omitempty"` Status OpenStackClusterStatus `json:"status,omitempty"` }
OpenStackCluster is the Schema for the openstackclusters API.
func (*OpenStackCluster) DeepCopy ¶
func (in *OpenStackCluster) DeepCopy() *OpenStackCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackCluster.
func (*OpenStackCluster) DeepCopyInto ¶
func (in *OpenStackCluster) DeepCopyInto(out *OpenStackCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackCluster) DeepCopyObject ¶
func (in *OpenStackCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackCluster) Default ¶
func (r *OpenStackCluster) Default()
Default satisfies the defaulting webhook interface.
func (*OpenStackCluster) Hub ¶
func (*OpenStackCluster) Hub()
Hub marks OpenStackCluster as a conversion hub.
func (*OpenStackCluster) SetupWebhookWithManager ¶
func (r *OpenStackCluster) SetupWebhookWithManager(mgr manager.Manager) error
func (*OpenStackCluster) ValidateCreate ¶
func (r *OpenStackCluster) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackCluster) ValidateDelete ¶
func (r *OpenStackCluster) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackCluster) ValidateUpdate ¶
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type OpenStackClusterList ¶
type OpenStackClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OpenStackCluster `json:"items"` }
OpenStackClusterList contains a list of OpenStackCluster.
func (*OpenStackClusterList) DeepCopy ¶
func (in *OpenStackClusterList) DeepCopy() *OpenStackClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackClusterList.
func (*OpenStackClusterList) DeepCopyInto ¶
func (in *OpenStackClusterList) DeepCopyInto(out *OpenStackClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackClusterList) DeepCopyObject ¶
func (in *OpenStackClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackClusterList) Hub ¶
func (*OpenStackClusterList) Hub()
Hub marks OpenStackClusterList as a conversion hub.
func (*OpenStackClusterList) SetupWebhookWithManager ¶
func (r *OpenStackClusterList) SetupWebhookWithManager(mgr manager.Manager) error
type OpenStackClusterSpec ¶
type OpenStackClusterSpec struct { // The name of the cloud to use from the clouds secret // +optional CloudName string `json:"cloudName"` // NodeCIDR is the OpenStack Subnet to be created. Cluster actuator will create a // network, a subnet with NodeCIDR, and a router connected to this subnet. // If you leave this empty, no network will be created. NodeCIDR string `json:"nodeCidr,omitempty"` // If NodeCIDR is set this option can be used to detect an existing router. // If specified, no new router will be created. // +optional Router *RouterFilter `json:"router,omitempty"` // If NodeCIDR cannot be set this can be used to detect an existing network. Network NetworkFilter `json:"network,omitempty"` // If NodeCIDR cannot be set this can be used to detect an existing subnet. Subnet SubnetFilter `json:"subnet,omitempty"` // NetworkMTU sets the maximum transmission unit (MTU) value to address fragmentation for the private network ID. // This value will be used only if the Cluster actuator creates the network. // If leaved empty, the network will have the default MTU defined in Openstack network service. // To use this field, the Openstack installation requires the net-mtu neutron API extension. // +optional NetworkMTU int `json:"networkMtu,omitempty"` // DNSNameservers is the list of nameservers for OpenStack Subnet being created. // Set this value when you need create a new network/subnet while the access // through DNS is required. // +listType=set DNSNameservers []string `json:"dnsNameservers,omitempty"` // ExternalRouterIPs is an array of externalIPs on the respective subnets. // This is necessary if the router needs a fixed ip in a specific subnet. ExternalRouterIPs []ExternalRouterIPParam `json:"externalRouterIPs,omitempty"` // ExternalNetworkID is the ID of an external OpenStack Network. This is necessary // to get public internet to the VMs. // +optional ExternalNetworkID string `json:"externalNetworkId,omitempty"` // APIServerLoadBalancer configures the optional LoadBalancer for the APIServer. // It must be activated by setting `enabled: true`. // +optional APIServerLoadBalancer APIServerLoadBalancer `json:"apiServerLoadBalancer,omitempty"` // DisableAPIServerFloatingIP determines whether or not to attempt to attach a floating // IP to the API server. This allows for the creation of clusters when attaching a floating // IP to the API server (and hence, in many cases, exposing the API server to the internet) // is not possible or desirable, e.g. if using a shared VLAN for communication between // management and workload clusters or when the management cluster is inside the // project network. // This option requires that the API server use a VIP on the cluster network so that the // underlying machines can change without changing ControlPlaneEndpoint.Host. // When using a managed load balancer, this VIP will be managed automatically. // If not using a managed load balancer, cluster configuration will fail without additional // configuration to manage the VIP on the control plane machines, which falls outside of // the scope of this controller. // +optional DisableAPIServerFloatingIP bool `json:"disableAPIServerFloatingIP"` // APIServerFloatingIP is the floatingIP which will be associated with the API server. // The floatingIP will be created if it does not already exist. // If not specified, a new floatingIP is allocated. // This field is not used if DisableAPIServerFloatingIP is set to true. APIServerFloatingIP string `json:"apiServerFloatingIP,omitempty"` // APIServerFixedIP is the fixed IP which will be associated with the API server. // In the case where the API server has a floating IP but not a managed load balancer, // this field is not used. // If a managed load balancer is used and this field is not specified, a fixed IP will // be dynamically allocated for the load balancer. // If a managed load balancer is not used AND the API server floating IP is disabled, // this field MUST be specified and should correspond to a pre-allocated port that // holds the fixed IP to be used as a VIP. APIServerFixedIP string `json:"apiServerFixedIP,omitempty"` // APIServerPort is the port on which the listener on the APIServer // will be created APIServerPort int `json:"apiServerPort,omitempty"` // ManagedSecurityGroups determines whether OpenStack security groups for the cluster // will be managed by the OpenStack provider or whether pre-existing security groups will // be specified as part of the configuration. // By default, the managed security groups have rules that allow the Kubelet, etcd, the // Kubernetes API server and the Calico CNI plugin to function correctly. // +optional ManagedSecurityGroups bool `json:"managedSecurityGroups"` // AllowAllInClusterTraffic is only used when managed security groups are in use. // If set to true, the rules for the managed security groups are configured so that all // ingress and egress between cluster nodes is permitted, allowing CNIs other than // Calico to be used. // +optional AllowAllInClusterTraffic bool `json:"allowAllInClusterTraffic"` // DisablePortSecurity disables the port security of the network created for the // Kubernetes cluster, which also disables SecurityGroups DisablePortSecurity bool `json:"disablePortSecurity,omitempty"` // Tags for all resources in cluster // +listType=set Tags []string `json:"tags,omitempty"` // ControlPlaneEndpoint represents the endpoint used to communicate with the control plane. // +optional ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint"` // ControlPlaneAvailabilityZones is the az to deploy control plane to // +listType=set ControlPlaneAvailabilityZones []string `json:"controlPlaneAvailabilityZones,omitempty"` // Indicates whether to omit the az for control plane nodes, allowing the Nova scheduler // to make a decision on which az to use based on other scheduling constraints ControlPlaneOmitAvailabilityZone bool `json:"controlPlaneOmitAvailabilityZone,omitempty"` // Bastion is the OpenStack instance to login the nodes // // As a rolling update is not ideal during a bastion host session, we // prevent changes to a running bastion configuration. Set `enabled: false` to // make changes. //+optional Bastion *Bastion `json:"bastion,omitempty"` // IdentityRef is a reference to a identity to be used when reconciling this cluster // +optional IdentityRef *OpenStackIdentityReference `json:"identityRef,omitempty"` }
OpenStackClusterSpec defines the desired state of OpenStackCluster.
func (*OpenStackClusterSpec) DeepCopy ¶
func (in *OpenStackClusterSpec) DeepCopy() *OpenStackClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackClusterSpec.
func (*OpenStackClusterSpec) DeepCopyInto ¶
func (in *OpenStackClusterSpec) DeepCopyInto(out *OpenStackClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackClusterStatus ¶
type OpenStackClusterStatus struct { Ready bool `json:"ready"` // Network contains information about the created OpenStack Network. Network *NetworkStatusWithSubnets `json:"network,omitempty"` // externalNetwork contains information about the external network used for default ingress and egress traffic. ExternalNetwork *NetworkStatus `json:"externalNetwork,omitempty"` // Router describes the default cluster router Router *Router `json:"router,omitempty"` // APIServerLoadBalancer describes the api server load balancer if one exists APIServerLoadBalancer *LoadBalancer `json:"apiServerLoadBalancer,omitempty"` // FailureDomains represent OpenStack availability zones FailureDomains clusterv1.FailureDomains `json:"failureDomains,omitempty"` // ControlPlaneSecurityGroups contains all the information about the OpenStack // Security Group that needs to be applied to control plane nodes. // TODO: Maybe instead of two properties, we add a property to the group? ControlPlaneSecurityGroup *SecurityGroup `json:"controlPlaneSecurityGroup,omitempty"` // WorkerSecurityGroup contains all the information about the OpenStack Security // Group that needs to be applied to worker nodes. WorkerSecurityGroup *SecurityGroup `json:"workerSecurityGroup,omitempty"` BastionSecurityGroup *SecurityGroup `json:"bastionSecurityGroup,omitempty"` Bastion *BastionStatus `json:"bastion,omitempty"` // FailureReason will be set in the event that there is a terminal problem // reconciling the OpenStackCluster and will contain a succinct value suitable // for machine interpretation. // // This field should not be set for transitive errors that a controller // faces that are expected to be fixed automatically over // time (like service outages), but instead indicate that something is // fundamentally wrong with the OpenStackCluster's spec or the configuration of // the controller, and that manual intervention is required. Examples // of terminal errors would be invalid combinations of settings in the // spec, values that are unsupported by the controller, or the // responsible controller itself being critically misconfigured. // // Any transient errors that occur during the reconciliation of // OpenStackClusters can be added as events to the OpenStackCluster object // and/or logged in the controller's output. // +optional FailureReason *capierrors.ClusterStatusError `json:"failureReason,omitempty"` // FailureMessage will be set in the event that there is a terminal problem // reconciling the OpenStackCluster and will contain a more verbose string suitable // for logging and human consumption. // // This field should not be set for transitive errors that a controller // faces that are expected to be fixed automatically over // time (like service outages), but instead indicate that something is // fundamentally wrong with the OpenStackCluster's spec or the configuration of // the controller, and that manual intervention is required. Examples // of terminal errors would be invalid combinations of settings in the // spec, values that are unsupported by the controller, or the // responsible controller itself being critically misconfigured. // // Any transient errors that occur during the reconciliation of // OpenStackClusters can be added as events to the OpenStackCluster object // and/or logged in the controller's output. // +optional FailureMessage *string `json:"failureMessage,omitempty"` // AvailableServerIPs is a list of the Control Plane IP adds that can be used to register further nodes. AvailableServerIPs []string `json:"availableServerIPs,omitempty"` }
OpenStackClusterStatus defines the observed state of OpenStackCluster.
func (*OpenStackClusterStatus) DeepCopy ¶
func (in *OpenStackClusterStatus) DeepCopy() *OpenStackClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackClusterStatus.
func (*OpenStackClusterStatus) DeepCopyInto ¶
func (in *OpenStackClusterStatus) DeepCopyInto(out *OpenStackClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackClusterTemplate ¶
type OpenStackClusterTemplate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OpenStackClusterTemplateSpec `json:"spec,omitempty"` }
OpenStackClusterTemplate is the Schema for the openstackclustertemplates API.
func (*OpenStackClusterTemplate) DeepCopy ¶
func (in *OpenStackClusterTemplate) DeepCopy() *OpenStackClusterTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackClusterTemplate.
func (*OpenStackClusterTemplate) DeepCopyInto ¶
func (in *OpenStackClusterTemplate) DeepCopyInto(out *OpenStackClusterTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackClusterTemplate) DeepCopyObject ¶
func (in *OpenStackClusterTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackClusterTemplate) Default ¶
func (r *OpenStackClusterTemplate) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type.
func (*OpenStackClusterTemplate) Hub ¶
func (*OpenStackClusterTemplate) Hub()
Hub marks OpenStackClusterTemplate as a conversion hub.
func (*OpenStackClusterTemplate) SetupWebhookWithManager ¶
func (r *OpenStackClusterTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*OpenStackClusterTemplate) ValidateCreate ¶
func (r *OpenStackClusterTemplate) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackClusterTemplate) ValidateDelete ¶
func (r *OpenStackClusterTemplate) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackClusterTemplate) ValidateUpdate ¶
func (r *OpenStackClusterTemplate) ValidateUpdate(oldRaw runtime.Object) (admission.Warnings, error)
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type OpenStackClusterTemplateList ¶
type OpenStackClusterTemplateList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OpenStackClusterTemplate `json:"items"` }
OpenStackClusterTemplateList contains a list of OpenStackClusterTemplate.
func (*OpenStackClusterTemplateList) DeepCopy ¶
func (in *OpenStackClusterTemplateList) DeepCopy() *OpenStackClusterTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackClusterTemplateList.
func (*OpenStackClusterTemplateList) DeepCopyInto ¶
func (in *OpenStackClusterTemplateList) DeepCopyInto(out *OpenStackClusterTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackClusterTemplateList) DeepCopyObject ¶
func (in *OpenStackClusterTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackClusterTemplateList) Hub ¶
func (*OpenStackClusterTemplateList) Hub()
Hub marks OpenStackClusterTemplateList as a conversion hub.
type OpenStackClusterTemplateResource ¶
type OpenStackClusterTemplateResource struct {
Spec OpenStackClusterSpec `json:"spec"`
}
OpenStackClusterTemplateResource describes the data needed to create a OpenStackCluster from a template.
func (*OpenStackClusterTemplateResource) DeepCopy ¶
func (in *OpenStackClusterTemplateResource) DeepCopy() *OpenStackClusterTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackClusterTemplateResource.
func (*OpenStackClusterTemplateResource) DeepCopyInto ¶
func (in *OpenStackClusterTemplateResource) DeepCopyInto(out *OpenStackClusterTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackClusterTemplateSpec ¶
type OpenStackClusterTemplateSpec struct {
Template OpenStackClusterTemplateResource `json:"template"`
}
OpenStackClusterTemplateSpec defines the desired state of OpenStackClusterTemplate.
func (*OpenStackClusterTemplateSpec) DeepCopy ¶
func (in *OpenStackClusterTemplateSpec) DeepCopy() *OpenStackClusterTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackClusterTemplateSpec.
func (*OpenStackClusterTemplateSpec) DeepCopyInto ¶
func (in *OpenStackClusterTemplateSpec) DeepCopyInto(out *OpenStackClusterTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackIdentityReference ¶
type OpenStackIdentityReference struct { // Kind of the identity. Must be supported by the infrastructure // provider and may be either cluster or namespace-scoped. // +kubebuilder:validation:MinLength=1 Kind string `json:"kind"` // Name of the infrastructure identity to be used. // Must be either a cluster-scoped resource, or namespaced-scoped // resource the same namespace as the resource(s) being provisioned. Name string `json:"name"` }
OpenStackIdentityReference is a reference to an infrastructure provider identity to be used to provision cluster resources.
func (*OpenStackIdentityReference) DeepCopy ¶
func (in *OpenStackIdentityReference) DeepCopy() *OpenStackIdentityReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackIdentityReference.
func (*OpenStackIdentityReference) DeepCopyInto ¶
func (in *OpenStackIdentityReference) DeepCopyInto(out *OpenStackIdentityReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackMachine ¶
type OpenStackMachine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OpenStackMachineSpec `json:"spec,omitempty"` Status OpenStackMachineStatus `json:"status,omitempty"` }
OpenStackMachine is the Schema for the openstackmachines API.
func (*OpenStackMachine) DeepCopy ¶
func (in *OpenStackMachine) DeepCopy() *OpenStackMachine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackMachine.
func (*OpenStackMachine) DeepCopyInto ¶
func (in *OpenStackMachine) DeepCopyInto(out *OpenStackMachine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackMachine) DeepCopyObject ¶
func (in *OpenStackMachine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackMachine) Default ¶
func (r *OpenStackMachine) Default()
Default satisfies the defaulting webhook interface.
func (*OpenStackMachine) GetConditions ¶
func (r *OpenStackMachine) GetConditions() clusterv1.Conditions
GetConditions returns the observations of the operational state of the OpenStackMachine resource.
func (*OpenStackMachine) Hub ¶
func (*OpenStackMachine) Hub()
Hub marks OpenStackMachine as a conversion hub.
func (*OpenStackMachine) SetConditions ¶
func (r *OpenStackMachine) SetConditions(conditions clusterv1.Conditions)
SetConditions sets the underlying service state of the OpenStackMachine to the predescribed clusterv1.Conditions.
func (*OpenStackMachine) SetFailure ¶
func (r *OpenStackMachine) SetFailure(failureReason errors.MachineStatusError, failureMessage error)
SetFailure sets the OpenStackMachine status failure reason and failure message.
func (*OpenStackMachine) SetupWebhookWithManager ¶
func (r *OpenStackMachine) SetupWebhookWithManager(mgr manager.Manager) error
func (*OpenStackMachine) ValidateCreate ¶
func (r *OpenStackMachine) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackMachine) ValidateDelete ¶
func (r *OpenStackMachine) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackMachine) ValidateUpdate ¶
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type OpenStackMachineList ¶
type OpenStackMachineList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OpenStackMachine `json:"items"` }
OpenStackMachineList contains a list of OpenStackMachine.
func (*OpenStackMachineList) DeepCopy ¶
func (in *OpenStackMachineList) DeepCopy() *OpenStackMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackMachineList.
func (*OpenStackMachineList) DeepCopyInto ¶
func (in *OpenStackMachineList) DeepCopyInto(out *OpenStackMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackMachineList) DeepCopyObject ¶
func (in *OpenStackMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackMachineList) Hub ¶
func (*OpenStackMachineList) Hub()
Hub marks OpenStackMachineList as a conversion hub.
func (*OpenStackMachineList) SetupWebhookWithManager ¶
func (r *OpenStackMachineList) SetupWebhookWithManager(mgr manager.Manager) error
type OpenStackMachineSpec ¶
type OpenStackMachineSpec struct { // ProviderID is the unique identifier as specified by the cloud provider. ProviderID *string `json:"providerID,omitempty"` // InstanceID is the OpenStack instance ID for this machine. InstanceID *string `json:"instanceID,omitempty"` // The name of the cloud to use from the clouds secret // +optional CloudName string `json:"cloudName"` // The flavor reference for the flavor for your server instance. Flavor string `json:"flavor"` // The name of the image to use for your server instance. // If the RootVolume is specified, this will be ignored and use rootVolume directly. Image string `json:"image,omitempty"` // The uuid of the image to use for your server instance. // if it's empty, Image name will be used ImageUUID string `json:"imageUUID,omitempty"` // The ssh key to inject in the instance SSHKeyName string `json:"sshKeyName,omitempty"` // Ports to be attached to the server instance. They are created if a port with the given name does not already exist. // If not specified a default port will be added for the default cluster network. Ports []PortOpts `json:"ports,omitempty"` // The floatingIP which will be associated to the machine, only used for master. // The floatingIP should have been created and haven't been associated. FloatingIP string `json:"floatingIP,omitempty"` // The names of the security groups to assign to the instance SecurityGroups []SecurityGroupFilter `json:"securityGroups,omitempty"` // Whether the server instance is created on a trunk port or not. Trunk bool `json:"trunk,omitempty"` // Machine tags // Requires Nova api 2.52 minimum! // +listType=set Tags []string `json:"tags,omitempty"` // Metadata mapping. Allows you to create a map of key value pairs to add to the server instance. ServerMetadata map[string]string `json:"serverMetadata,omitempty"` // Config Drive support ConfigDrive *bool `json:"configDrive,omitempty"` // The volume metadata to boot from RootVolume *RootVolume `json:"rootVolume,omitempty"` // AdditionalBlockDevices is a list of specifications for additional block devices to attach to the server instance // +listType=map // +listMapKey=name // +optional AdditionalBlockDevices []AdditionalBlockDevice `json:"additionalBlockDevices,omitempty"` // The server group to assign the machine to ServerGroupID string `json:"serverGroupID,omitempty"` // IdentityRef is a reference to a identity to be used when reconciling this cluster // +optional IdentityRef *OpenStackIdentityReference `json:"identityRef,omitempty"` }
OpenStackMachineSpec defines the desired state of OpenStackMachine.
func (*OpenStackMachineSpec) DeepCopy ¶
func (in *OpenStackMachineSpec) DeepCopy() *OpenStackMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackMachineSpec.
func (*OpenStackMachineSpec) DeepCopyInto ¶
func (in *OpenStackMachineSpec) DeepCopyInto(out *OpenStackMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackMachineStatus ¶
type OpenStackMachineStatus struct { // Ready is true when the provider resource is ready. // +optional Ready bool `json:"ready"` // Addresses contains the OpenStack instance associated addresses. Addresses []corev1.NodeAddress `json:"addresses,omitempty"` // InstanceState is the state of the OpenStack instance for this machine. // +optional InstanceState *InstanceState `json:"instanceState,omitempty"` FailureReason *errors.MachineStatusError `json:"failureReason,omitempty"` // FailureMessage will be set in the event that there is a terminal problem // reconciling the Machine and will contain a more verbose string suitable // for logging and human consumption. // // This field should not be set for transitive errors that a controller // faces that are expected to be fixed automatically over // time (like service outages), but instead indicate that something is // fundamentally wrong with the Machine's spec or the configuration of // the controller, and that manual intervention is required. Examples // of terminal errors would be invalid combinations of settings in the // spec, values that are unsupported by the controller, or the // responsible controller itself being critically misconfigured. // // Any transient errors that occur during the reconciliation of Machines // can be added as events to the Machine object and/or logged in the // controller's output. // +optional FailureMessage *string `json:"failureMessage,omitempty"` Conditions clusterv1.Conditions `json:"conditions,omitempty"` }
OpenStackMachineStatus defines the observed state of OpenStackMachine.
func (*OpenStackMachineStatus) DeepCopy ¶
func (in *OpenStackMachineStatus) DeepCopy() *OpenStackMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackMachineStatus.
func (*OpenStackMachineStatus) DeepCopyInto ¶
func (in *OpenStackMachineStatus) DeepCopyInto(out *OpenStackMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackMachineTemplate ¶
type OpenStackMachineTemplate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OpenStackMachineTemplateSpec `json:"spec,omitempty"` }
OpenStackMachineTemplate is the Schema for the openstackmachinetemplates API.
func (*OpenStackMachineTemplate) DeepCopy ¶
func (in *OpenStackMachineTemplate) DeepCopy() *OpenStackMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackMachineTemplate.
func (*OpenStackMachineTemplate) DeepCopyInto ¶
func (in *OpenStackMachineTemplate) DeepCopyInto(out *OpenStackMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackMachineTemplate) DeepCopyObject ¶
func (in *OpenStackMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackMachineTemplate) Hub ¶
func (*OpenStackMachineTemplate) Hub()
Hub marks OpenStackMachineTemplate as a conversion hub.
type OpenStackMachineTemplateList ¶
type OpenStackMachineTemplateList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OpenStackMachineTemplate `json:"items"` }
OpenStackMachineTemplateList contains a list of OpenStackMachineTemplate.
func (*OpenStackMachineTemplateList) DeepCopy ¶
func (in *OpenStackMachineTemplateList) DeepCopy() *OpenStackMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackMachineTemplateList.
func (*OpenStackMachineTemplateList) DeepCopyInto ¶
func (in *OpenStackMachineTemplateList) DeepCopyInto(out *OpenStackMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenStackMachineTemplateList) DeepCopyObject ¶
func (in *OpenStackMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OpenStackMachineTemplateList) Hub ¶
func (*OpenStackMachineTemplateList) Hub()
Hub marks OpenStackMachineTemplateList as a conversion hub.
func (*OpenStackMachineTemplateList) SetupWebhookWithManager ¶
func (r *OpenStackMachineTemplateList) SetupWebhookWithManager(mgr manager.Manager) error
type OpenStackMachineTemplateResource ¶
type OpenStackMachineTemplateResource struct { // Spec is the specification of the desired behavior of the machine. Spec OpenStackMachineSpec `json:"spec"` }
OpenStackMachineTemplateResource describes the data needed to create a OpenStackMachine from a template.
func (*OpenStackMachineTemplateResource) DeepCopy ¶
func (in *OpenStackMachineTemplateResource) DeepCopy() *OpenStackMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackMachineTemplateResource.
func (*OpenStackMachineTemplateResource) DeepCopyInto ¶
func (in *OpenStackMachineTemplateResource) DeepCopyInto(out *OpenStackMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackMachineTemplateSpec ¶
type OpenStackMachineTemplateSpec struct {
Template OpenStackMachineTemplateResource `json:"template"`
}
OpenStackMachineTemplateSpec defines the desired state of OpenStackMachineTemplate.
func (*OpenStackMachineTemplateSpec) DeepCopy ¶
func (in *OpenStackMachineTemplateSpec) DeepCopy() *OpenStackMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenStackMachineTemplateSpec.
func (*OpenStackMachineTemplateSpec) DeepCopyInto ¶
func (in *OpenStackMachineTemplateSpec) DeepCopyInto(out *OpenStackMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenStackMachineTemplateWebhook ¶
type OpenStackMachineTemplateWebhook struct{}
+kubebuilder:object:generate=false
func (*OpenStackMachineTemplateWebhook) SetupWebhookWithManager ¶
func (r *OpenStackMachineTemplateWebhook) SetupWebhookWithManager(mgr manager.Manager) error
func (*OpenStackMachineTemplateWebhook) ValidateCreate ¶
func (r *OpenStackMachineTemplateWebhook) ValidateCreate(_ context.Context, obj runtime.Object) (admission.Warnings, error)
ValidateCreate implements webhook.CustomValidator so a webhook will be registered for the type.
func (*OpenStackMachineTemplateWebhook) ValidateDelete ¶
func (r *OpenStackMachineTemplateWebhook) ValidateDelete(_ context.Context, _ runtime.Object) (admission.Warnings, error)
ValidateDelete implements webhook.CustomValidator so a webhook will be registered for the type.
func (*OpenStackMachineTemplateWebhook) ValidateUpdate ¶
func (r *OpenStackMachineTemplateWebhook) ValidateUpdate(ctx context.Context, oldRaw runtime.Object, newRaw runtime.Object) (admission.Warnings, error)
ValidateUpdate implements webhook.CustomValidator so a webhook will be registered for the type.
type PortOpts ¶
type PortOpts struct { // Network is a query for an openstack network that the port will be created or discovered on. // This will fail if the query returns more than one network. Network *NetworkFilter `json:"network,omitempty"` // Used to make the name of the port unique. If unspecified, instead the 0-based index of the port in the list is used. NameSuffix string `json:"nameSuffix,omitempty"` Description string `json:"description,omitempty"` AdminStateUp *bool `json:"adminStateUp,omitempty"` MACAddress string `json:"macAddress,omitempty"` // Specify pairs of subnet and/or IP address. These should be subnets of the network with the given NetworkID. FixedIPs []FixedIP `json:"fixedIPs,omitempty"` // The names, uuids, filters or any combination these of the security groups to assign to the instance SecurityGroupFilters []SecurityGroupFilter `json:"securityGroupFilters,omitempty"` AllowedAddressPairs []AddressPair `json:"allowedAddressPairs,omitempty"` // Enables and disables trunk at port level. If not provided, openStackMachine.Spec.Trunk is inherited. Trunk *bool `json:"trunk,omitempty"` // The ID of the host where the port is allocated HostID string `json:"hostId,omitempty"` // The virtual network interface card (vNIC) type that is bound to the neutron port. VNICType string `json:"vnicType,omitempty"` // Profile is a set of key-value pairs that are used for binding details. // We intentionally don't expose this as a map[string]string because we only want to enable // the users to set the values of the keys that are known to work in OpenStack Networking API. // See https://docs.openstack.org/api-ref/network/v2/index.html?expanded=create-port-detail#create-port Profile BindingProfile `json:"profile,omitempty"` // DisablePortSecurity enables or disables the port security when set. // When not set, it takes the value of the corresponding field at the network level. DisablePortSecurity *bool `json:"disablePortSecurity,omitempty"` // PropageteUplinkStatus enables or disables the propagate uplink status on the port. PropagateUplinkStatus *bool `json:"propagateUplinkStatus,omitempty"` // Tags applied to the port (and corresponding trunk, if a trunk is configured.) // These tags are applied in addition to the instance's tags, which will also be applied to the port. // +listType=set Tags []string `json:"tags,omitempty"` // Value specs are extra parameters to include in the API request with OpenStack. // This is an extension point for the API, so what they do and if they are supported, // depends on the specific OpenStack implementation. // +optional // +listType=map // +listMapKey=name ValueSpecs []ValueSpec `json:"valueSpecs,omitempty"` }
func (*PortOpts) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PortOpts.
func (*PortOpts) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RootVolume ¶
type RootVolume struct { Size int `json:"diskSize,omitempty"` VolumeType string `json:"volumeType,omitempty"` AvailabilityZone string `json:"availabilityZone,omitempty"` }
func (*RootVolume) DeepCopy ¶
func (in *RootVolume) DeepCopy() *RootVolume
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RootVolume.
func (*RootVolume) DeepCopyInto ¶
func (in *RootVolume) DeepCopyInto(out *RootVolume)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Router ¶
type Router struct { Name string `json:"name"` ID string `json:"id"` //+optional Tags []string `json:"tags,omitempty"` //+optional IPs []string `json:"ips,omitempty"` }
Router represents basic information about the associated OpenStack Neutron Router.
func (*Router) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Router.
func (*Router) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouterFilter ¶
type RouterFilter struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` Description string `json:"description,omitempty"` ProjectID string `json:"projectId,omitempty"` Tags string `json:"tags,omitempty"` TagsAny string `json:"tagsAny,omitempty"` NotTags string `json:"notTags,omitempty"` NotTagsAny string `json:"notTagsAny,omitempty"` }
func (*RouterFilter) DeepCopy ¶
func (in *RouterFilter) DeepCopy() *RouterFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterFilter.
func (*RouterFilter) DeepCopyInto ¶
func (in *RouterFilter) DeepCopyInto(out *RouterFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (RouterFilter) ToListOpt ¶
func (routerFilter RouterFilter) ToListOpt() routers.ListOpts
type SecurityGroup ¶
type SecurityGroup struct { Name string `json:"name"` ID string `json:"id"` Rules []SecurityGroupRule `json:"rules"` }
SecurityGroup represents the basic information of the associated OpenStack Neutron Security Group.
func (*SecurityGroup) DeepCopy ¶
func (in *SecurityGroup) DeepCopy() *SecurityGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroup.
func (*SecurityGroup) DeepCopyInto ¶
func (in *SecurityGroup) DeepCopyInto(out *SecurityGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroupFilter ¶
type SecurityGroupFilter struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` Description string `json:"description,omitempty"` ProjectID string `json:"projectId,omitempty"` Tags string `json:"tags,omitempty"` TagsAny string `json:"tagsAny,omitempty"` NotTags string `json:"notTags,omitempty"` NotTagsAny string `json:"notTagsAny,omitempty"` }
func (*SecurityGroupFilter) DeepCopy ¶
func (in *SecurityGroupFilter) DeepCopy() *SecurityGroupFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupFilter.
func (*SecurityGroupFilter) DeepCopyInto ¶
func (in *SecurityGroupFilter) DeepCopyInto(out *SecurityGroupFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (SecurityGroupFilter) ToListOpt ¶
func (securityGroupFilter SecurityGroupFilter) ToListOpt() securitygroups.ListOpts
type SecurityGroupRule ¶
type SecurityGroupRule struct { Description string `json:"description"` ID string `json:"name"` Direction string `json:"direction"` EtherType string `json:"etherType"` SecurityGroupID string `json:"securityGroupID"` PortRangeMin int `json:"portRangeMin"` PortRangeMax int `json:"portRangeMax"` Protocol string `json:"protocol"` RemoteGroupID string `json:"remoteGroupID"` RemoteIPPrefix string `json:"remoteIPPrefix"` }
SecurityGroupRule represent the basic information of the associated OpenStack Security Group Role.
func (*SecurityGroupRule) DeepCopy ¶
func (in *SecurityGroupRule) DeepCopy() *SecurityGroupRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupRule.
func (*SecurityGroupRule) DeepCopyInto ¶
func (in *SecurityGroupRule) DeepCopyInto(out *SecurityGroupRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (SecurityGroupRule) Equal ¶
func (r SecurityGroupRule) Equal(x SecurityGroupRule) bool
Equal checks if two SecurityGroupRules are the same.
type Subnet ¶
type Subnet struct { Name string `json:"name"` ID string `json:"id"` CIDR string `json:"cidr"` //+optional Tags []string `json:"tags,omitempty"` }
Subnet represents basic information about the associated OpenStack Neutron Subnet.
func (*Subnet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Subnet.
func (*Subnet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SubnetFilter ¶
type SubnetFilter struct { Name string `json:"name,omitempty"` Description string `json:"description,omitempty"` ProjectID string `json:"projectId,omitempty"` IPVersion int `json:"ipVersion,omitempty"` GatewayIP string `json:"gateway_ip,omitempty"` CIDR string `json:"cidr,omitempty"` IPv6AddressMode string `json:"ipv6AddressMode,omitempty"` IPv6RAMode string `json:"ipv6RaMode,omitempty"` ID string `json:"id,omitempty"` Tags string `json:"tags,omitempty"` TagsAny string `json:"tagsAny,omitempty"` NotTags string `json:"notTags,omitempty"` NotTagsAny string `json:"notTagsAny,omitempty"` }
func (*SubnetFilter) DeepCopy ¶
func (in *SubnetFilter) DeepCopy() *SubnetFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetFilter.
func (*SubnetFilter) DeepCopyInto ¶
func (in *SubnetFilter) DeepCopyInto(out *SubnetFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (SubnetFilter) ToListOpt ¶
func (subnetFilter SubnetFilter) ToListOpt() subnets.ListOpts
type ValueSpec ¶
type ValueSpec struct { // Name is the name of the key-value pair. // This is just for identifying the pair and will not be sent to the OpenStack API. // +kubebuilder:validation:Required Name string `json:"name"` // Key is the key in the key-value pair. // +kubebuilder:validation:Required Key string `json:"key"` // Value is the value in the key-value pair. // +kubebuilder:validation:Required Value string `json:"value"` }
ValueSpec represents a single value_spec key-value pair.
func (*ValueSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueSpec.
func (*ValueSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files ¶
- conditions_consts.go
- conversion.go
- doc.go
- filter_convert.go
- groupversion_info.go
- identity_types.go
- openstackcluster_types.go
- openstackcluster_webhook.go
- openstackclusterlist_webhook.go
- openstackclustertemplate_types.go
- openstackclustertemplate_webhook.go
- openstackmachine_types.go
- openstackmachine_webhook.go
- openstackmachinelist_webhook.go
- openstackmachinetemplate_types.go
- openstackmachinetemplate_webhook.go
- openstackmachinetemplatelist_webhook.go
- types.go
- webhooks.go
- zz_generated.deepcopy.go