Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the infrastructure v1beta1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- type LoadBalancerSpec
- type NetworkSpec
- type NetworkStatus
- type PortOrPortRange
- type PrivateNetworkSpec
- type PublicGatewaySpec
- type ScalewayCluster
- func (in *ScalewayCluster) DeepCopy() *ScalewayCluster
- func (in *ScalewayCluster) DeepCopyInto(out *ScalewayCluster)
- func (in *ScalewayCluster) DeepCopyObject() runtime.Object
- func (r *ScalewayCluster) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *ScalewayCluster) ValidateCreate() (admission.Warnings, error)
- func (r *ScalewayCluster) ValidateDelete() (admission.Warnings, error)
- func (r *ScalewayCluster) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type ScalewayClusterList
- type ScalewayClusterSpec
- type ScalewayClusterStatus
- type ScalewayClusterTemplate
- type ScalewayClusterTemplateList
- type ScalewayClusterTemplateResource
- type ScalewayClusterTemplateSpec
- type ScalewayMachine
- func (in *ScalewayMachine) DeepCopy() *ScalewayMachine
- func (in *ScalewayMachine) DeepCopyInto(out *ScalewayMachine)
- func (in *ScalewayMachine) DeepCopyObject() runtime.Object
- func (r *ScalewayMachine) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *ScalewayMachine) ValidateCreate() (admission.Warnings, error)
- func (r *ScalewayMachine) ValidateDelete() (admission.Warnings, error)
- func (r *ScalewayMachine) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type ScalewayMachineList
- type ScalewayMachineSpec
- type ScalewayMachineStatus
- type ScalewayMachineTemplate
- type ScalewayMachineTemplateList
- type ScalewayMachineTemplateResource
- type ScalewayMachineTemplateSpec
- type SecurityGroup
- type SecurityGroupAction
- type SecurityGroupPolicy
- type SecurityGroupProtocol
- type SecurityGroupRule
Constants ¶
const ClusterFinalizer = "scalewaycluster.infrastructure.cluster.x-k8s.io"
const MachineFinalizer = "scalewaymachine.infrastructure.cluster.x-k8s.io"
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "infrastructure.cluster.x-k8s.io", Version: "v1beta1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type LoadBalancerSpec ¶
type LoadBalancerSpec struct {
// Zone where to create the loadbalancer. Must be in the same region as the
// cluster. Defaults to the first zone of the region.
// +optional
Zone *string `json:"zone,omitempty"`
// Load Balancer commercial offer type.
// +kubebuilder:default="LB-S"
// +optional
Type *string `json:"type,omitempty"`
// IP to use when creating a loadbalancer.
// +kubebuilder:validation:Format=ipv4
// +optional
IP *string `json:"ip,omitempty"`
// AllowedRanges allows to set a list of allowed IP ranges that can access
// the cluster through the load balancer. When unset, all IP ranges are allowed.
// To allow the cluster to work properly, public IPs of nodes and Public
// Gateways will automatically be allowed. However, if this field is set,
// you MUST manually allow IPs of the nodes of your management cluster.
// +optional
AllowedRanges []string `json:"allowedRanges,omitempty"`
}
LoadBalancerSpec defines control-plane loadbalancer settings for the cluster.
func (*LoadBalancerSpec) DeepCopy ¶
func (in *LoadBalancerSpec) DeepCopy() *LoadBalancerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerSpec.
func (*LoadBalancerSpec) DeepCopyInto ¶
func (in *LoadBalancerSpec) DeepCopyInto(out *LoadBalancerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkSpec ¶
type NetworkSpec struct {
// PrivateNetwork allows attaching machines of the cluster to a Private
// Network.
// +optional
PrivateNetwork *PrivateNetworkSpec `json:"privateNetwork,omitempty"`
// Use this field to create or use an existing Public Gateway and attach
// it to the Private Network. Do not set this field if the Private Network
// already has an attached Public Gateway.
// +optional
PublicGateway *PublicGatewaySpec `json:"publicGateway,omitempty"`
// A list of security groups that will be created in all zones of the region
// of the cluster. A security group can be referenced by its name in the
// ScalewayMachine object. If a security group is in use by at least one
// machine, it MUST NOT be removed from this list: remove the machines first.
SecurityGroups []SecurityGroup `json:"securityGroups,omitempty"`
}
NetworkSpec defines network specific settings.
func (*NetworkSpec) DeepCopy ¶
func (in *NetworkSpec) DeepCopy() *NetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkSpec.
func (*NetworkSpec) DeepCopyInto ¶
func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkStatus ¶
type NetworkStatus struct {
// ID of the Private Network if available.
// +optional
PrivateNetworkID *string `json:"privateNetworkID,omitempty"`
// ID of the Public Gateway if available.
// +optional
PublicGatewayID *string `json:"publicGatewayID,omitempty"`
}
NetworkStatus contains network status related data.
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 PortOrPortRange ¶
type PortOrPortRange string
PortOrPortRange is a string representation of a port or a port range (e.g. 0-1024).
func (*PortOrPortRange) ToRange ¶
func (p *PortOrPortRange) ToRange() (*uint32, *uint32, error)
ToRange returns the range of ports, with the first return value being the lower port (called "from") and the second return value being the higher port (called "to"). If only a single port is set, the higher port is nil.
type PrivateNetworkSpec ¶
type PrivateNetworkSpec struct {
// Set to true to automatically attach machines to a Private Network.
// The Private Network is automatically created if no existing Private
// Network ID is provided.
Enabled bool `json:"enabled"`
// Set a Private Network ID to reuse an existing Private Network. This
// Private Network must have DHCP enabled.
// +optional
ID *string `json:"id,omitempty"`
// Optional subnet for the Private Network. Only used on newly created
// Private Networks.
// +optional
Subnet *string `json:"subnet,omitempty"`
}
PrivateNetworkSpec defines Private Network settings for the cluster.
func (*PrivateNetworkSpec) DeepCopy ¶
func (in *PrivateNetworkSpec) DeepCopy() *PrivateNetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateNetworkSpec.
func (*PrivateNetworkSpec) DeepCopyInto ¶
func (in *PrivateNetworkSpec) DeepCopyInto(out *PrivateNetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PublicGatewaySpec ¶
type PublicGatewaySpec struct {
// Set to true to attach a Public Gateway to the Private Network.
// The Public Gateway will automatically be created if no existing Public
// Gateway ID is provided.
Enabled bool `json:"enabled"`
// ID of an existing Public Gateway that will be attached to the Private
// Network. You should also specify the zone field.
ID *string `json:"id,omitempty"`
// Public Gateway commercial offer type.
// +kubebuilder:default="VPC-GW-S"
// +optional
Type *string `json:"type,omitempty"`
// IP to use when creating a Public Gateway.
// +kubebuilder:validation:Format=ipv4
// +optional
IP *string `json:"ip,omitempty"`
// Zone where to create the Public Gateway. Must be in the same region as the
// cluster. Defaults to the first zone of the region.
// +optional
Zone *string `json:"zone,omitempty"`
}
PublicGatewaySpec defines Public Gateway settings for the cluster.
func (*PublicGatewaySpec) DeepCopy ¶
func (in *PublicGatewaySpec) DeepCopy() *PublicGatewaySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicGatewaySpec.
func (*PublicGatewaySpec) DeepCopyInto ¶
func (in *PublicGatewaySpec) DeepCopyInto(out *PublicGatewaySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalewayCluster ¶
type ScalewayCluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ScalewayClusterSpec `json:"spec,omitempty"`
Status ScalewayClusterStatus `json:"status,omitempty"`
}
ScalewayCluster is the Schema for the scalewayclusters API
func (*ScalewayCluster) DeepCopy ¶
func (in *ScalewayCluster) DeepCopy() *ScalewayCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayCluster.
func (*ScalewayCluster) DeepCopyInto ¶
func (in *ScalewayCluster) DeepCopyInto(out *ScalewayCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalewayCluster) DeepCopyObject ¶
func (in *ScalewayCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ScalewayCluster) SetupWebhookWithManager ¶
func (r *ScalewayCluster) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*ScalewayCluster) ValidateCreate ¶
func (r *ScalewayCluster) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*ScalewayCluster) ValidateDelete ¶
func (r *ScalewayCluster) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*ScalewayCluster) ValidateUpdate ¶
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type ScalewayClusterList ¶
type ScalewayClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ScalewayCluster `json:"items"`
}
ScalewayClusterList contains a list of ScalewayCluster
func (*ScalewayClusterList) DeepCopy ¶
func (in *ScalewayClusterList) DeepCopy() *ScalewayClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayClusterList.
func (*ScalewayClusterList) DeepCopyInto ¶
func (in *ScalewayClusterList) DeepCopyInto(out *ScalewayClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalewayClusterList) DeepCopyObject ¶
func (in *ScalewayClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ScalewayClusterSpec ¶
type ScalewayClusterSpec struct {
// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.
// +optional
ControlPlaneEndpoint clusterv1beta1.APIEndpoint `json:"controlPlaneEndpoint"`
// FailureDomains is a list of failure domains where the control-plane nodes
// and resources (loadbalancer, public gateway, etc.) will be created.
// +optional
FailureDomains []string `json:"failureDomains,omitempty"`
// Region represents the region where the cluster will be hosted.
Region string `json:"region"`
// Network contains network related options for the cluster.
// +optional
Network *NetworkSpec `json:"network,omitempty"`
// ControlPlaneLoadBalancer contains loadbalancer options.
// +optional
ControlPlaneLoadBalancer *LoadBalancerSpec `json:"controlPlaneLoadBalancer,omitempty"`
// Name of the secret that contains the Scaleway client parameters.
// The following keys must be set: accessKey, secretKey, projectID.
// The following key is optional: apiURL.
ScalewaySecretName string `json:"scalewaySecretName"`
}
ScalewayClusterSpec defines the desired state of ScalewayCluster
func (*ScalewayClusterSpec) DeepCopy ¶
func (in *ScalewayClusterSpec) DeepCopy() *ScalewayClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayClusterSpec.
func (*ScalewayClusterSpec) DeepCopyInto ¶
func (in *ScalewayClusterSpec) DeepCopyInto(out *ScalewayClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalewayClusterStatus ¶
type ScalewayClusterStatus struct {
// Ready is true when all cloud resources are created and ready.
// +kubebuilder:default=false
Ready bool `json:"ready"`
// List of failure domains for this cluster.
FailureDomains clusterv1beta1.FailureDomains `json:"failureDomains,omitempty"`
// Network status.
// +optional
Network *NetworkStatus `json:"network,omitempty"`
}
ScalewayClusterStatus defines the observed state of ScalewayCluster
func (*ScalewayClusterStatus) DeepCopy ¶
func (in *ScalewayClusterStatus) DeepCopy() *ScalewayClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayClusterStatus.
func (*ScalewayClusterStatus) DeepCopyInto ¶
func (in *ScalewayClusterStatus) DeepCopyInto(out *ScalewayClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalewayClusterTemplate ¶
type ScalewayClusterTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ScalewayClusterTemplateSpec `json:"spec,omitempty"`
}
ScalewayClusterTemplate is the Schema for the scalewayclustertemplates API
func (*ScalewayClusterTemplate) DeepCopy ¶
func (in *ScalewayClusterTemplate) DeepCopy() *ScalewayClusterTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayClusterTemplate.
func (*ScalewayClusterTemplate) DeepCopyInto ¶
func (in *ScalewayClusterTemplate) DeepCopyInto(out *ScalewayClusterTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalewayClusterTemplate) DeepCopyObject ¶
func (in *ScalewayClusterTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ScalewayClusterTemplateList ¶
type ScalewayClusterTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ScalewayClusterTemplate `json:"items"`
}
ScalewayClusterTemplateList contains a list of ScalewayClusterTemplate
func (*ScalewayClusterTemplateList) DeepCopy ¶
func (in *ScalewayClusterTemplateList) DeepCopy() *ScalewayClusterTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayClusterTemplateList.
func (*ScalewayClusterTemplateList) DeepCopyInto ¶
func (in *ScalewayClusterTemplateList) DeepCopyInto(out *ScalewayClusterTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalewayClusterTemplateList) DeepCopyObject ¶
func (in *ScalewayClusterTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ScalewayClusterTemplateResource ¶
type ScalewayClusterTemplateResource struct {
// Standard object's metadata.
// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
// +optional
ObjectMeta metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ScalewayClusterSpec `json:"spec"`
}
func (*ScalewayClusterTemplateResource) DeepCopy ¶
func (in *ScalewayClusterTemplateResource) DeepCopy() *ScalewayClusterTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayClusterTemplateResource.
func (*ScalewayClusterTemplateResource) DeepCopyInto ¶
func (in *ScalewayClusterTemplateResource) DeepCopyInto(out *ScalewayClusterTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalewayClusterTemplateSpec ¶
type ScalewayClusterTemplateSpec struct {
Template ScalewayClusterTemplateResource `json:"template"`
}
ScalewayClusterTemplateSpec defines the desired state of ScalewayClusterTemplate
func (*ScalewayClusterTemplateSpec) DeepCopy ¶
func (in *ScalewayClusterTemplateSpec) DeepCopy() *ScalewayClusterTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayClusterTemplateSpec.
func (*ScalewayClusterTemplateSpec) DeepCopyInto ¶
func (in *ScalewayClusterTemplateSpec) DeepCopyInto(out *ScalewayClusterTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalewayMachine ¶
type ScalewayMachine struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ScalewayMachineSpec `json:"spec,omitempty"`
Status ScalewayMachineStatus `json:"status,omitempty"`
}
ScalewayMachine is the Schema for the scalewaymachines API
func (*ScalewayMachine) DeepCopy ¶
func (in *ScalewayMachine) DeepCopy() *ScalewayMachine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayMachine.
func (*ScalewayMachine) DeepCopyInto ¶
func (in *ScalewayMachine) DeepCopyInto(out *ScalewayMachine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalewayMachine) DeepCopyObject ¶
func (in *ScalewayMachine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ScalewayMachine) SetupWebhookWithManager ¶
func (r *ScalewayMachine) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*ScalewayMachine) ValidateCreate ¶
func (r *ScalewayMachine) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*ScalewayMachine) ValidateDelete ¶
func (r *ScalewayMachine) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*ScalewayMachine) ValidateUpdate ¶
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type ScalewayMachineList ¶
type ScalewayMachineList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ScalewayMachine `json:"items"`
}
ScalewayMachineList contains a list of ScalewayMachine
func (*ScalewayMachineList) DeepCopy ¶
func (in *ScalewayMachineList) DeepCopy() *ScalewayMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayMachineList.
func (*ScalewayMachineList) DeepCopyInto ¶
func (in *ScalewayMachineList) DeepCopyInto(out *ScalewayMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalewayMachineList) DeepCopyObject ¶
func (in *ScalewayMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ScalewayMachineSpec ¶
type ScalewayMachineSpec struct {
// +optional
ProviderID *string `json:"providerID,omitempty"`
// Label (e.g. ubuntu_jammy) or UUID of an image that will be used to
// create the instance.
Image string `json:"image"`
// Type of instance (e.g. PRO2-S).
Type string `json:"type"`
// Size of the root volume in GB. Defaults to 20 GB.
// +optional
RootVolumeSize *int64 `json:"rootVolumeSize,omitempty"`
// Type of the root volume. Can be local or block. Note that not all types
// of instances support local volumes.
// +kubebuilder:validation:Enum=local;block
// +optional
RootVolumeType *string `json:"rootVolumeType,omitempty"`
// Set to true to create and attach a public IP to the instance.
// Defaults to false.
// +optional
PublicIP *bool `json:"publicIP,omitempty"`
// Name of the security group as specified in the ScalewayCluster object.
// If not set, the instance will be attached to the default security group.
// +optional
SecurityGroupName *string `json:"securityGroupName,omitempty"`
}
ScalewayMachineSpec defines the desired state of ScalewayMachine
func (*ScalewayMachineSpec) DeepCopy ¶
func (in *ScalewayMachineSpec) DeepCopy() *ScalewayMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayMachineSpec.
func (*ScalewayMachineSpec) DeepCopyInto ¶
func (in *ScalewayMachineSpec) DeepCopyInto(out *ScalewayMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalewayMachineSpec) ScalewayRootVolumeType ¶
func (s *ScalewayMachineSpec) ScalewayRootVolumeType() (instance.VolumeVolumeType, error)
ScalewayRootVolumeType returns the volume type to use for the root volume.
type ScalewayMachineStatus ¶
type ScalewayMachineStatus struct {
// Ready is true when the provider resource is ready.
// +optional
Ready bool `json:"ready"`
// Addresses of the node.
Addresses []clusterv1.MachineAddress `json:"addresses,omitempty"`
}
ScalewayMachineStatus defines the observed state of ScalewayMachine
func (*ScalewayMachineStatus) DeepCopy ¶
func (in *ScalewayMachineStatus) DeepCopy() *ScalewayMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayMachineStatus.
func (*ScalewayMachineStatus) DeepCopyInto ¶
func (in *ScalewayMachineStatus) DeepCopyInto(out *ScalewayMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalewayMachineTemplate ¶
type ScalewayMachineTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ScalewayMachineTemplateSpec `json:"spec,omitempty"`
}
ScalewayMachineTemplate is the Schema for the scalewaymachinetemplates API
func (*ScalewayMachineTemplate) DeepCopy ¶
func (in *ScalewayMachineTemplate) DeepCopy() *ScalewayMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayMachineTemplate.
func (*ScalewayMachineTemplate) DeepCopyInto ¶
func (in *ScalewayMachineTemplate) DeepCopyInto(out *ScalewayMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalewayMachineTemplate) DeepCopyObject ¶
func (in *ScalewayMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ScalewayMachineTemplateList ¶
type ScalewayMachineTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ScalewayMachineTemplate `json:"items"`
}
ScalewayMachineTemplateList contains a list of ScalewayMachineTemplate
func (*ScalewayMachineTemplateList) DeepCopy ¶
func (in *ScalewayMachineTemplateList) DeepCopy() *ScalewayMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayMachineTemplateList.
func (*ScalewayMachineTemplateList) DeepCopyInto ¶
func (in *ScalewayMachineTemplateList) DeepCopyInto(out *ScalewayMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalewayMachineTemplateList) DeepCopyObject ¶
func (in *ScalewayMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ScalewayMachineTemplateResource ¶
type ScalewayMachineTemplateResource struct {
// Standard object's metadata.
// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
// +optional
ObjectMeta metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ScalewayMachineSpec `json:"spec"`
}
func (*ScalewayMachineTemplateResource) DeepCopy ¶
func (in *ScalewayMachineTemplateResource) DeepCopy() *ScalewayMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayMachineTemplateResource.
func (*ScalewayMachineTemplateResource) DeepCopyInto ¶
func (in *ScalewayMachineTemplateResource) DeepCopyInto(out *ScalewayMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalewayMachineTemplateSpec ¶
type ScalewayMachineTemplateSpec struct {
Template ScalewayMachineTemplateResource `json:"template"`
}
ScalewayMachineTemplateSpec defines the desired state of ScalewayMachineTemplate
func (*ScalewayMachineTemplateSpec) DeepCopy ¶
func (in *ScalewayMachineTemplateSpec) DeepCopy() *ScalewayMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalewayMachineTemplateSpec.
func (*ScalewayMachineTemplateSpec) DeepCopyInto ¶
func (in *ScalewayMachineTemplateSpec) DeepCopyInto(out *ScalewayMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroup ¶
type SecurityGroup struct {
// Name of the security group. Must be unique in a list of security groups.
Name string `json:"name"`
// Inbound policy. If not set, all inbound traffic is allowed.
// +optional
Inbound *SecurityGroupPolicy `json:"inbound,omitempty"`
// Oubound policy. If not set, all outbound traffic is allowed.
// +optional
Outbound *SecurityGroupPolicy `json:"outbound,omitempty"`
}
SecurityGroup contains a name and inbound/outbound policies.
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 SecurityGroupAction ¶
type SecurityGroupAction string
SecurityGroupAction is an action to apply when a packet matches a rule. It can also be used as a default policy.
const ( // SecurityGroupActionDrop drops all matching packets. SecurityGroupActionDrop SecurityGroupAction = "Drop" // SecurityGroupActionAccept accepts all matching packets. SecurityGroupActionAccept SecurityGroupAction = "Accept" )
func (*SecurityGroupAction) ToInstanceAction ¶
func (s *SecurityGroupAction) ToInstanceAction() (instance.SecurityGroupRuleAction, error)
ToInstancePolicy returns the instance SecurityGroupRuleAction that matches the SecurityGroupAction value of the pointer receiver. Defaults to SecurityGroupRuleActionAccept if the value is nil.
func (*SecurityGroupAction) ToInstancePolicy ¶
func (s *SecurityGroupAction) ToInstancePolicy() (instance.SecurityGroupPolicy, error)
ToInstancePolicy returns the instance SecurityGroupPolicy that matches the SecurityGroupAction value of the pointer receiver. Defaults to SecurityGroupPolicyAccept if the value is nil.
type SecurityGroupPolicy ¶
type SecurityGroupPolicy struct {
// Default policy. If unset, defaults to "Accept".
// +optional
Default *SecurityGroupAction `json:"default,omitempty"`
// A list of rules for this policy.
// +optional
Rules []SecurityGroupRule `json:"rules,omitempty"`
}
SecurityGroupPolicy defines a policy for inbound or outbound traffic.
func (*SecurityGroupPolicy) DeepCopy ¶
func (in *SecurityGroupPolicy) DeepCopy() *SecurityGroupPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupPolicy.
func (*SecurityGroupPolicy) DeepCopyInto ¶
func (in *SecurityGroupPolicy) DeepCopyInto(out *SecurityGroupPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroupProtocol ¶
type SecurityGroupProtocol string
SecurityGroupProtocol is a network protocol.
const ( // SecurityGroupProtocolANY matches a packet of any protocol. SecurityGroupProtocolANY SecurityGroupProtocol = "ANY" // SecurityGroupProtocolTCP matches a TCP packet. SecurityGroupProtocolTCP SecurityGroupProtocol = "TCP" // SecurityGroupProtocolUDP matches an UDP packet. SecurityGroupProtocolUDP SecurityGroupProtocol = "UDP" // SecurityGroupProtocolICMP matches an ICMP packet. SecurityGroupProtocolICMP SecurityGroupProtocol = "ICMP" )
func (*SecurityGroupProtocol) ToInstance ¶
func (s *SecurityGroupProtocol) ToInstance() (instance.SecurityGroupRuleProtocol, error)
ToInstance returns the instance SecurityGroupRuleProtocol that matches the SecurityGroupProtocol value of the pointer receiver. Defaults to SecurityGroupRuleProtocolANY if the value is nil.
type SecurityGroupRule ¶
type SecurityGroupRule struct {
// Action to apply when the rule matches a packet.
Action SecurityGroupAction `json:"action"`
// Protocol family this rule applies to. Can be ANY, TCP, UDP or ICMP.
// If unset, defaults to ANY.
// +optional
Protocol *SecurityGroupProtocol `json:"protocol,omitempty"`
// Port or range of ports this rule applies to. Not applicable for ICMP or ANY.
// +optional
Ports *PortOrPortRange `json:"ports,omitempty"`
// IP range this rule applies to. Defaults to 0.0.0.0/0.
// +optional
IPRange *string `json:"ipRange,omitempty"`
}
SecurityGroupRule is a rule for the security group policy.
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.