Documentation
¶
Overview ¶
package v1alpha6 contains API Schema definitions for the infrastructure v1alpha6 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- type APIServerLoadBalancer
- type AddressPair
- type Bastion
- type ExternalRouterIPParam
- type FixedIP
- type Instance
- type InstanceState
- type LoadBalancer
- type Network
- type NetworkFilter
- type NetworkParam
- 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() error
- func (r *OpenStackCluster) ValidateDelete() error
- func (r *OpenStackCluster) ValidateUpdate(oldRaw runtime.Object) 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() error
- func (r *OpenStackClusterTemplate) ValidateDelete() error
- func (r *OpenStackClusterTemplate) ValidateUpdate(oldRaw runtime.Object) 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() error
- func (r *OpenStackMachine) ValidateDelete() error
- func (r *OpenStackMachine) ValidateUpdate(old runtime.Object) 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(ctx context.Context, obj runtime.Object) error
- func (r *OpenStackMachineTemplateWebhook) ValidateDelete(_ context.Context, _ runtime.Object) error
- func (r *OpenStackMachineTemplateWebhook) ValidateUpdate(ctx context.Context, oldRaw runtime.Object, newRaw runtime.Object) error
- type PortOpts
- type RootVolume
- type Router
- type SecurityGroup
- type SecurityGroupFilter
- type SecurityGroupParam
- type SecurityGroupRule
- type Subnet
- type SubnetFilter
- type SubnetParam
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" )
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: "v1alpha6"} // 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"`
}
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 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"`
// UserData for the bastion itself
UserData string `json:"userData,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 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 SubnetParam `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 Instance ¶
type Instance struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Trunk bool `json:"trunk,omitempty"`
FailureDomain string `json:"failureDomain,omitempty"`
SecurityGroups *[]string `json:"securigyGroups,omitempty"`
Networks *[]Network `json:"networks,omitempty"`
Subnet string `json:"subnet,omitempty"`
Tags []string `json:"tags,omitempty"`
Image string `json:"image,omitempty"`
ImageUUID string `json:"imageUUID,omitempty"`
Flavor string `json:"flavor,omitempty"`
SSHKeyName string `json:"sshKeyName,omitempty"`
UserData string `json:"userData,omitempty"`
Metadata map[string]string `json:"metadata,omitempty"`
ConfigDrive *bool `json:"configDrive,omitempty"`
RootVolume *RootVolume `json:"rootVolume,omitempty"`
ServerGroupID string `json:"serverGroupID,omitempty"`
State InstanceState `json:"state,omitempty"`
IP string `json:"ip,omitempty"`
FloatingIP string `json:"floatingIP,omitempty"`
}
func (*Instance) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Instance.
func (*Instance) 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"`
}
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 Network ¶
type Network struct {
Name string `json:"name"`
ID string `json:"id"`
//+optional
Tags []string `json:"tags,omitempty"`
Subnet *Subnet `json:"subnet,omitempty"`
PortOpts *PortOpts `json:"port,omitempty"`
Router *Router `json:"router,omitempty"`
// Be careful when using APIServerLoadBalancer, because this field is optional and therefore not
// set in all cases
APIServerLoadBalancer *LoadBalancer `json:"apiServerLoadBalancer,omitempty"`
}
Network represents basic information about an OpenStack Neutron Network associated with an instance's port.
func (*Network) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network.
func (*Network) DeepCopyInto ¶
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 NetworkParam ¶
type NetworkParam struct {
// Optional UUID of the network.
// If specified this will not be validated prior to server creation.
// Required if `Subnets` specifies a subnet by UUID.
UUID string `json:"uuid,omitempty"`
// A fixed IPv4 address for the NIC.
FixedIP string `json:"fixedIP,omitempty"`
// Filters for optional network query
Filter NetworkFilter `json:"filter,omitempty"`
// Subnet within a network to use
Subnets []SubnetParam `json:"subnets,omitempty"`
}
func (*NetworkParam) DeepCopy ¶
func (in *NetworkParam) DeepCopy() *NetworkParam
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkParam.
func (*NetworkParam) DeepCopyInto ¶
func (in *NetworkParam) DeepCopyInto(out *NetworkParam)
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() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackCluster) ValidateDelete ¶
func (r *OpenStackCluster) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackCluster) ValidateUpdate ¶
func (r *OpenStackCluster) ValidateUpdate(oldRaw runtime.Object) error
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 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"`
// 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"`
// DisableFloatingIP determines whether or not to attempt to attach a floating
// IP to the Instance.
DisableFloatingIP bool `json:"disableFloatingIP"`
// 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 all information about the created OpenStack Network.
// It includes Subnets and Router.
Network *Network `json:"network,omitempty"`
// External Network contains information about the created OpenStack external network.
ExternalNetwork *Network `json:"externalNetwork,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 *Instance `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"`
}
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() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackClusterTemplate) ValidateDelete ¶
func (r *OpenStackClusterTemplate) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackClusterTemplate) ValidateUpdate ¶
func (r *OpenStackClusterTemplate) ValidateUpdate(oldRaw runtime.Object) 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() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackMachine) ValidateDelete ¶
func (r *OpenStackMachine) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*OpenStackMachine) ValidateUpdate ¶
func (r *OpenStackMachine) ValidateUpdate(old runtime.Object) error
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"`
// A networks object. Required parameter when there are multiple networks defined for the tenant.
// When you do not specify both networks and ports parameters, the server attaches to the only network created for the current tenant.
Networks []NetworkParam `json:"networks,omitempty"`
// Ports to be attached to the server instance. They are created if a port with the given name does not already exist.
// When you do not specify both networks and ports parameters, the server attaches to the only network created for the current tenant.
Ports []PortOpts `json:"ports,omitempty"`
// UUID, IP address of a port from this subnet will be marked as AccessIPv4 on the created compute instance
Subnet string `json:"subnet,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 []SecurityGroupParam `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"`
// The custome metadata to boot from
CustomeVolumes []*RootVolume `json:"customeVolumes,omitempty"`
// The volume delete on termination
DeleteVolumeOnTermination bool `json:"deleteVolumeOnTermination,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(ctx context.Context, obj runtime.Object) error
ValidateCreate implements webhook.CustomValidator so a webhook will be registered for the type.
func (*OpenStackMachineTemplateWebhook) ValidateDelete ¶
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) 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"`
TenantID string `json:"tenantId,omitempty"`
ProjectID string `json:"projectId,omitempty"`
// The uuids of the security groups to assign to the instance
// +listType=set
SecurityGroups *[]string `json:"securityGroups,omitempty"`
// The names, uuids, filters or any combination these of the security groups to assign to the instance
SecurityGroupFilters []SecurityGroupParam `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"`
// A dictionary that enables the application running on the specified
// host to pass and receive virtual network interface (VIF) port-specific
// information to the plug-in.
Profile map[string]string `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"`
// 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"`
}
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 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"`
TenantID string `json:"tenantId,omitempty"`
ProjectID string `json:"projectId,omitempty"`
Limit int `json:"limit,omitempty"`
Marker string `json:"marker,omitempty"`
SortKey string `json:"sortKey,omitempty"`
SortDir string `json:"sortDir,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.
type SecurityGroupParam ¶
type SecurityGroupParam struct {
// Security Group UID
UUID string `json:"uuid,omitempty"`
// Security Group name
Name string `json:"name,omitempty"`
// Filters used to query security groups in openstack
Filter SecurityGroupFilter `json:"filter,omitempty"`
}
func (*SecurityGroupParam) DeepCopy ¶
func (in *SecurityGroupParam) DeepCopy() *SecurityGroupParam
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupParam.
func (*SecurityGroupParam) DeepCopyInto ¶
func (in *SecurityGroupParam) DeepCopyInto(out *SecurityGroupParam)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 SubnetParam ¶
type SubnetParam struct {
// Optional UUID of the subnet.
// If specified this will not be validated prior to server creation.
// If specified, the enclosing `NetworkParam` must also be specified by UUID.
UUID string `json:"uuid,omitempty"`
// Filters for optional subnet query
Filter SubnetFilter `json:"filter,omitempty"`
}
func (*SubnetParam) DeepCopy ¶
func (in *SubnetParam) DeepCopy() *SubnetParam
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetParam.
func (*SubnetParam) DeepCopyInto ¶
func (in *SubnetParam) DeepCopyInto(out *SubnetParam)
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