networking

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Apr 11, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package networking is the internal version of the API.

Package networking contains API Schema definitions for the networking internal API group +groupName=networking.api.onmetal.de

Index

Constants

View Source
const (
	// NetworkPluginsGroup is the system rbac group all network plugins are in.
	NetworkPluginsGroup = "networking.api.onmetal.de:system:networkplugins"

	// NetworkPluginUserNamePrefix is the prefix all network plugin users should have.
	NetworkPluginUserNamePrefix = "networking.api.onmetal.de:system:networkplugin:"
)
View Source
const (
	// DefaultPortsPerNetworkInterface is the default number of ports per network interface.
	DefaultPortsPerNetworkInterface int32 = 2048
)

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: "networking.api.onmetal.de", Version: runtime.APIVersionInternal}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

func NetworkInterfaceIPSourceEphemeralPrefixName

func NetworkInterfaceIPSourceEphemeralPrefixName(nicName string, idx int) string

NetworkInterfaceIPSourceEphemeralPrefixName returns the name of a Prefix for a network interface ephemeral prefix.

func NetworkInterfaceVirtualIPName

func NetworkInterfaceVirtualIPName(nicName string, vipSource VirtualIPSource) string

NetworkInterfaceVirtualIPName returns the name of a VirtualIP for a NetworkInterface VirtualIPSource.

func NetworkPluginCommonName

func NetworkPluginCommonName(name string) string

NetworkPluginCommonName constructs the common name for a certificate of a network plugin user.

func Resource

func Resource(name string) schema.GroupResource

Types

type AliasPrefix

type AliasPrefix struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   AliasPrefixSpec
	Status AliasPrefixStatus
}

AliasPrefix is the Schema for the aliasprefix API

func (*AliasPrefix) DeepCopy

func (in *AliasPrefix) DeepCopy() *AliasPrefix

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

func (*AliasPrefix) DeepCopyInto

func (in *AliasPrefix) DeepCopyInto(out *AliasPrefix)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AliasPrefix) DeepCopyObject

func (in *AliasPrefix) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AliasPrefixList

type AliasPrefixList struct {
	metav1.TypeMeta
	metav1.ListMeta
	Items []AliasPrefix
}

AliasPrefixList contains a list of AliasPrefix

func (*AliasPrefixList) DeepCopy

func (in *AliasPrefixList) DeepCopy() *AliasPrefixList

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

func (*AliasPrefixList) DeepCopyInto

func (in *AliasPrefixList) DeepCopyInto(out *AliasPrefixList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AliasPrefixList) DeepCopyObject

func (in *AliasPrefixList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AliasPrefixRouting

type AliasPrefixRouting struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	// NetworkRef is the network the load balancer is assigned to.
	NetworkRef commonv1alpha1.LocalUIDReference

	// Destinations are the destinations for an AliasPrefix.
	Destinations []commonv1alpha1.LocalUIDReference
}

AliasPrefixRouting is the Schema for the AliasPrefixRouting API

func (*AliasPrefixRouting) DeepCopy

func (in *AliasPrefixRouting) DeepCopy() *AliasPrefixRouting

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

func (*AliasPrefixRouting) DeepCopyInto

func (in *AliasPrefixRouting) DeepCopyInto(out *AliasPrefixRouting)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AliasPrefixRouting) DeepCopyObject

func (in *AliasPrefixRouting) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AliasPrefixRoutingList

type AliasPrefixRoutingList struct {
	metav1.TypeMeta
	metav1.ListMeta
	Items []AliasPrefixRouting
}

AliasPrefixRoutingList contains a list of AliasPrefixRouting

func (*AliasPrefixRoutingList) DeepCopy

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

func (*AliasPrefixRoutingList) DeepCopyInto

func (in *AliasPrefixRoutingList) DeepCopyInto(out *AliasPrefixRoutingList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AliasPrefixRoutingList) DeepCopyObject

func (in *AliasPrefixRoutingList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AliasPrefixSpec

type AliasPrefixSpec struct {
	// NetworkRef is the Network this AliasPrefix should belong to
	NetworkRef corev1.LocalObjectReference
	// NetworkInterfaceSelector defines the NetworkInterfaces
	// for which this AliasPrefix should be applied
	NetworkInterfaceSelector *metav1.LabelSelector
	// Prefix is the provided Prefix or Ephemeral which
	// should be used by this AliasPrefix
	Prefix PrefixSource
}

AliasPrefixSpec defines the desired state of AliasPrefix

func (*AliasPrefixSpec) DeepCopy

func (in *AliasPrefixSpec) DeepCopy() *AliasPrefixSpec

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

func (*AliasPrefixSpec) DeepCopyInto

func (in *AliasPrefixSpec) DeepCopyInto(out *AliasPrefixSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AliasPrefixStatus

type AliasPrefixStatus struct {
	// Prefix is the Prefix reserved by this AliasPrefix
	Prefix *commonv1alpha1.IPPrefix
}

AliasPrefixStatus defines the observed state of AliasPrefix

func (*AliasPrefixStatus) DeepCopy

func (in *AliasPrefixStatus) DeepCopy() *AliasPrefixStatus

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

func (*AliasPrefixStatus) DeepCopyInto

func (in *AliasPrefixStatus) DeepCopyInto(out *AliasPrefixStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EphemeralPrefixSource

type EphemeralPrefixSource struct {
	// PrefixTemplate is the template for the Prefix.
	PrefixTemplate *ipam.PrefixTemplateSpec
}

EphemeralPrefixSource contains the definition to create an ephemeral (i.e. coupled to the lifetime of the surrounding object) Prefix.

func (*EphemeralPrefixSource) DeepCopy

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

func (*EphemeralPrefixSource) DeepCopyInto

func (in *EphemeralPrefixSource) DeepCopyInto(out *EphemeralPrefixSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EphemeralVirtualIPSource

type EphemeralVirtualIPSource struct {
	// VirtualIPTemplate is the template for the VirtualIP.
	VirtualIPTemplate *VirtualIPTemplateSpec
}

EphemeralVirtualIPSource contains the definition to create an ephemeral (i.e. coupled to the lifetime of the surrounding object) VirtualIP.

func (*EphemeralVirtualIPSource) DeepCopy

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

func (*EphemeralVirtualIPSource) DeepCopyInto

func (in *EphemeralVirtualIPSource) DeepCopyInto(out *EphemeralVirtualIPSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IPSource

type IPSource struct {
	// Value specifies an IP by using an IP literal.
	Value *commonv1alpha1.IP
	// Ephemeral specifies an IP by creating an ephemeral Prefix to allocate the IP with.
	Ephemeral *EphemeralPrefixSource
}

IPSource is the definition of how to obtain an IP.

func (*IPSource) DeepCopy

func (in *IPSource) DeepCopy() *IPSource

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

func (*IPSource) DeepCopyInto

func (in *IPSource) DeepCopyInto(out *IPSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LoadBalancer

type LoadBalancer struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   LoadBalancerSpec
	Status LoadBalancerStatus
}

LoadBalancer is the Schema for the LoadBalancer API

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.

func (*LoadBalancer) DeepCopyObject

func (in *LoadBalancer) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LoadBalancerList

type LoadBalancerList struct {
	metav1.TypeMeta
	metav1.ListMeta
	Items []LoadBalancer
}

LoadBalancerList contains a list of LoadBalancer

func (*LoadBalancerList) DeepCopy

func (in *LoadBalancerList) DeepCopy() *LoadBalancerList

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

func (*LoadBalancerList) DeepCopyInto

func (in *LoadBalancerList) DeepCopyInto(out *LoadBalancerList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LoadBalancerList) DeepCopyObject

func (in *LoadBalancerList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LoadBalancerPort

type LoadBalancerPort struct {
	// Protocol is the protocol the load balancer should allow.
	// If not specified, defaults to TCP.
	Protocol *corev1.Protocol
	// Port is the port to allow.
	Port int32
	// EndPort marks the end of the port range to allow.
	// If unspecified, only a single port, Port, will be allowed.
	EndPort *int32
}

func (*LoadBalancerPort) DeepCopy

func (in *LoadBalancerPort) DeepCopy() *LoadBalancerPort

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

func (*LoadBalancerPort) DeepCopyInto

func (in *LoadBalancerPort) DeepCopyInto(out *LoadBalancerPort)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LoadBalancerRouting

type LoadBalancerRouting struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	// NetworkRef is the network the load balancer is assigned to.
	NetworkRef commonv1alpha1.LocalUIDReference

	// Destinations are the destinations for an LoadBalancer.
	Destinations []commonv1alpha1.LocalUIDReference
}

LoadBalancerRouting is the Schema for the aliasprefixrouting API

func (*LoadBalancerRouting) DeepCopy

func (in *LoadBalancerRouting) DeepCopy() *LoadBalancerRouting

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

func (*LoadBalancerRouting) DeepCopyInto

func (in *LoadBalancerRouting) DeepCopyInto(out *LoadBalancerRouting)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LoadBalancerRouting) DeepCopyObject

func (in *LoadBalancerRouting) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LoadBalancerRoutingList

type LoadBalancerRoutingList struct {
	metav1.TypeMeta
	metav1.ListMeta
	Items []LoadBalancerRouting
}

LoadBalancerRoutingList contains a list of LoadBalancerRouting

func (*LoadBalancerRoutingList) DeepCopy

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

func (*LoadBalancerRoutingList) DeepCopyInto

func (in *LoadBalancerRoutingList) DeepCopyInto(out *LoadBalancerRoutingList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LoadBalancerRoutingList) DeepCopyObject

func (in *LoadBalancerRoutingList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LoadBalancerSpec

type LoadBalancerSpec struct {
	// Type is the type of LoadBalancer.
	Type LoadBalancerType
	// IPFamilies are the ip families the load balancer should have.
	IPFamilies []corev1.IPFamily
	// IPs are the ips to use. Can only be used when Type is LoadBalancerTypeInternal.
	IPs []IPSource
	// NetworkRef is the Network this LoadBalancer should belong to.
	NetworkRef corev1.LocalObjectReference
	// NetworkInterfaceSelector defines the NetworkInterfaces
	// for which this LoadBalancer should be applied
	NetworkInterfaceSelector *metav1.LabelSelector
	// Ports are the ports the load balancer should allow.
	Ports []LoadBalancerPort
}

LoadBalancerSpec defines the desired state of LoadBalancer

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 LoadBalancerStatus

type LoadBalancerStatus struct {
	// IPs are the IPs allocated for the load balancer.
	IPs []commonv1alpha1.IP
}

LoadBalancerStatus defines the observed state of LoadBalancer

func (*LoadBalancerStatus) DeepCopy

func (in *LoadBalancerStatus) DeepCopy() *LoadBalancerStatus

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

func (*LoadBalancerStatus) DeepCopyInto

func (in *LoadBalancerStatus) DeepCopyInto(out *LoadBalancerStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LoadBalancerType

type LoadBalancerType string

LoadBalancerType is a type of LoadBalancer.

const (
	// LoadBalancerTypePublic is a LoadBalancer that allocates and routes a stable public IP.
	LoadBalancerTypePublic LoadBalancerType = "Public"
	// LoadBalancerTypeInternal is a LoadBalancer that allocates and routes network-internal, stable IPs.
	LoadBalancerTypeInternal LoadBalancerType = "Internal"
)

type NATGateway

type NATGateway struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   NATGatewaySpec
	Status NATGatewayStatus
}

NATGateway is the Schema for the NATGateway API

func (*NATGateway) DeepCopy

func (in *NATGateway) DeepCopy() *NATGateway

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

func (*NATGateway) DeepCopyInto

func (in *NATGateway) DeepCopyInto(out *NATGateway)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NATGateway) DeepCopyObject

func (in *NATGateway) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NATGatewayDestination

type NATGatewayDestination struct {
	// Name is the name of the referenced entity.
	Name string `json:"name"`
	// UID is the UID of the referenced entity.
	UID types.UID `json:"uid"`
	// IPs are the nat gateway ips used.
	IPs []NATGatewayDestinationIP
}

func (*NATGatewayDestination) DeepCopy

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

func (*NATGatewayDestination) DeepCopyInto

func (in *NATGatewayDestination) DeepCopyInto(out *NATGatewayDestination)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NATGatewayDestinationIP

type NATGatewayDestinationIP struct {
	// IP is the ip used for the NAT gateway.
	IP commonv1alpha1.IP
	// Port is the first port used by the destination.
	Port int32
	// EndPort is the last port used by the destination.
	EndPort int32
}

func (*NATGatewayDestinationIP) DeepCopy

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

func (*NATGatewayDestinationIP) DeepCopyInto

func (in *NATGatewayDestinationIP) DeepCopyInto(out *NATGatewayDestinationIP)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NATGatewayIP

type NATGatewayIP struct {
	// Name is the name to associate with the NAT gateway IP.
	Name string
}

func (*NATGatewayIP) DeepCopy

func (in *NATGatewayIP) DeepCopy() *NATGatewayIP

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

func (*NATGatewayIP) DeepCopyInto

func (in *NATGatewayIP) DeepCopyInto(out *NATGatewayIP)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NATGatewayIPStatus

type NATGatewayIPStatus struct {
	Name string            `json:"name"`
	IP   commonv1alpha1.IP `json:"ip"`
}

func (*NATGatewayIPStatus) DeepCopy

func (in *NATGatewayIPStatus) DeepCopy() *NATGatewayIPStatus

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

func (*NATGatewayIPStatus) DeepCopyInto

func (in *NATGatewayIPStatus) DeepCopyInto(out *NATGatewayIPStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NATGatewayList

type NATGatewayList struct {
	metav1.TypeMeta
	metav1.ListMeta
	Items []NATGateway
}

NATGatewayList contains a list of NATGateway

func (*NATGatewayList) DeepCopy

func (in *NATGatewayList) DeepCopy() *NATGatewayList

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

func (*NATGatewayList) DeepCopyInto

func (in *NATGatewayList) DeepCopyInto(out *NATGatewayList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NATGatewayList) DeepCopyObject

func (in *NATGatewayList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NATGatewayRouting

type NATGatewayRouting struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	// NetworkRef is the network the NAT gateway is assigned to.
	NetworkRef commonv1alpha1.LocalUIDReference

	// Destinations are the destinations for an NATGateway.
	Destinations []NATGatewayDestination
}

NATGatewayRouting is the Schema for the aliasprefixrouting API

func (*NATGatewayRouting) DeepCopy

func (in *NATGatewayRouting) DeepCopy() *NATGatewayRouting

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

func (*NATGatewayRouting) DeepCopyInto

func (in *NATGatewayRouting) DeepCopyInto(out *NATGatewayRouting)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NATGatewayRouting) DeepCopyObject

func (in *NATGatewayRouting) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NATGatewayRoutingList

type NATGatewayRoutingList struct {
	metav1.TypeMeta
	metav1.ListMeta
	Items []NATGatewayRouting
}

NATGatewayRoutingList contains a list of NATGatewayRouting

func (*NATGatewayRoutingList) DeepCopy

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

func (*NATGatewayRoutingList) DeepCopyInto

func (in *NATGatewayRoutingList) DeepCopyInto(out *NATGatewayRoutingList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NATGatewayRoutingList) DeepCopyObject

func (in *NATGatewayRoutingList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NATGatewaySpec

type NATGatewaySpec struct {
	// Type is the type of NATGateway.
	Type NATGatewayType
	// IPFamilies are the ip families the load balancer should have.
	IPFamilies []corev1.IPFamily
	// IPs are the ips the NAT gateway should allocate.
	IPs []NATGatewayIP
	// NetworkRef is the Network this NATGateway should belong to.
	NetworkRef corev1.LocalObjectReference
	// NetworkInterfaceSelector defines the NetworkInterfaces
	// for which this NATGateway should be applied
	NetworkInterfaceSelector *metav1.LabelSelector
	// PortsPerNetworkInterface defines the number of concurrent connections per target network interface.
	// Has to be a power of 2. If empty, 2048 (DefaultPortsPerNetworkInterface) is the default.
	PortsPerNetworkInterface *int32
}

NATGatewaySpec defines the desired state of NATGateway

func (*NATGatewaySpec) DeepCopy

func (in *NATGatewaySpec) DeepCopy() *NATGatewaySpec

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

func (*NATGatewaySpec) DeepCopyInto

func (in *NATGatewaySpec) DeepCopyInto(out *NATGatewaySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NATGatewayStatus

type NATGatewayStatus struct {
	// IPs are the IPs allocated for the NAT gateway.
	IPs []NATGatewayIPStatus
	// PortsUsed is the number of used ports.
	PortsUsed *int32
}

NATGatewayStatus defines the observed state of NATGateway

func (*NATGatewayStatus) DeepCopy

func (in *NATGatewayStatus) DeepCopy() *NATGatewayStatus

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

func (*NATGatewayStatus) DeepCopyInto

func (in *NATGatewayStatus) DeepCopyInto(out *NATGatewayStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NATGatewayType

type NATGatewayType string

NATGatewayType is a type of NATGateway.

const (
	// NATGatewayTypePublic is a NATGateway that allocates and routes a stable public IP.
	NATGatewayTypePublic NATGatewayType = "Public"
)

type Network

type Network struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   NetworkSpec
	Status NetworkStatus
}

Network is the Schema for the network API

func (*Network) DeepCopy

func (in *Network) DeepCopy() *Network

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

func (*Network) DeepCopyInto

func (in *Network) DeepCopyInto(out *Network)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Network) DeepCopyObject

func (in *Network) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkInterface

type NetworkInterface struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   NetworkInterfaceSpec
	Status NetworkInterfaceStatus
}

NetworkInterface is the Schema for the networkinterfaces API

func (*NetworkInterface) DeepCopy

func (in *NetworkInterface) DeepCopy() *NetworkInterface

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

func (*NetworkInterface) DeepCopyInto

func (in *NetworkInterface) DeepCopyInto(out *NetworkInterface)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkInterface) DeepCopyObject

func (in *NetworkInterface) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkInterfaceList

type NetworkInterfaceList struct {
	metav1.TypeMeta
	metav1.ListMeta
	Items []NetworkInterface
}

NetworkInterfaceList contains a list of NetworkInterface

func (*NetworkInterfaceList) DeepCopy

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

func (*NetworkInterfaceList) DeepCopyInto

func (in *NetworkInterfaceList) DeepCopyInto(out *NetworkInterfaceList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkInterfaceList) DeepCopyObject

func (in *NetworkInterfaceList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkInterfacePhase

type NetworkInterfacePhase string

NetworkInterfacePhase is the binding phase of a NetworkInterface.

const (
	// NetworkInterfacePhaseUnbound is used for any NetworkInterface that is not bound.
	NetworkInterfacePhaseUnbound NetworkInterfacePhase = "Unbound"
	// NetworkInterfacePhasePending is used for any NetworkInterface that is currently awaiting binding.
	NetworkInterfacePhasePending NetworkInterfacePhase = "Pending"
	// NetworkInterfacePhaseBound is used for any NetworkInterface that is properly bound.
	NetworkInterfacePhaseBound NetworkInterfacePhase = "Bound"
)

type NetworkInterfaceSpec

type NetworkInterfaceSpec struct {
	// NetworkRef is the Network this NetworkInterface is connected to
	NetworkRef corev1.LocalObjectReference
	// MachineRef is the Machine this NetworkInterface is used by
	MachineRef *commonv1alpha1.LocalUIDReference
	// IPFamilies defines which IPFamilies this NetworkInterface is supporting
	IPFamilies []corev1.IPFamily
	// IPs is the list of provided IPs or EphemeralIPs which should be assigned to
	// this NetworkInterface
	IPs []IPSource
	// VirtualIP specifies the virtual ip that should be assigned to this NetworkInterface.
	VirtualIP *VirtualIPSource
}

NetworkInterfaceSpec defines the desired state of NetworkInterface

func (*NetworkInterfaceSpec) DeepCopy

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

func (*NetworkInterfaceSpec) DeepCopyInto

func (in *NetworkInterfaceSpec) DeepCopyInto(out *NetworkInterfaceSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkInterfaceState

type NetworkInterfaceState string

NetworkInterfaceState is the onmetal-api state of a NetworkInterface.

const (
	// NetworkInterfaceStatePending is used for any NetworkInterface that is pending.
	NetworkInterfaceStatePending NetworkInterfaceState = "Pending"
	// NetworkInterfaceStateAvailable is used for any NetworkInterface where all properties are valid.
	NetworkInterfaceStateAvailable NetworkInterfaceState = "Available"
	// NetworkInterfaceStateError is used for any NetworkInterface where any property has an error.
	NetworkInterfaceStateError NetworkInterfaceState = "Error"
)

type NetworkInterfaceStatus

type NetworkInterfaceStatus struct {
	// State is the NetworkInterfaceState of the NetworkInterface.
	State NetworkInterfaceState
	// LastStateTransitionTime is the last time the State transitioned from one value to another.
	LastStateTransitionTime *metav1.Time

	// NetworkHandle is the handle of the network the network interface is part of.
	NetworkHandle string
	// IPs represent the effective IP addresses of the NetworkInterface
	IPs []commonv1alpha1.IP
	// VirtualIP is any virtual ip assigned to the NetworkInterface.
	VirtualIP *commonv1alpha1.IP

	// Phase is the NetworkInterfacePhase of the NetworkInterface.
	Phase NetworkInterfacePhase
	// MachinePoolRef is the machine pool the network interface is currently on, if any.
	MachinePoolRef *corev1.LocalObjectReference
	// LastPhaseTransitionTime is the last time the Phase transitioned from one value to another.
	LastPhaseTransitionTime *metav1.Time
}

NetworkInterfaceStatus defines the observed state of NetworkInterface

func (*NetworkInterfaceStatus) DeepCopy

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

func (*NetworkInterfaceStatus) DeepCopyInto

func (in *NetworkInterfaceStatus) DeepCopyInto(out *NetworkInterfaceStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkInterfaceTemplateSpec

type NetworkInterfaceTemplateSpec struct {
	metav1.ObjectMeta
	Spec NetworkInterfaceSpec
}

NetworkInterfaceTemplateSpec is the specification of a NetworkInterface template.

func (*NetworkInterfaceTemplateSpec) DeepCopy

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

func (*NetworkInterfaceTemplateSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkList

type NetworkList struct {
	metav1.TypeMeta
	metav1.ListMeta
	Items []Network
}

NetworkList contains a list of Network

func (*NetworkList) DeepCopy

func (in *NetworkList) DeepCopy() *NetworkList

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

func (*NetworkList) DeepCopyInto

func (in *NetworkList) DeepCopyInto(out *NetworkList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkList) DeepCopyObject

func (in *NetworkList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkPeering added in v0.1.1

type NetworkPeering struct {
	// Name is the semantical name of the network peering.
	Name string
	// NetworkRef is the reference to the network to peer with.
	// If the UID is empty, it will be populated once when the peering is successfully bound.
	// If namespace is empty it is implied that the target network resides in the same network.
	NetworkRef commonv1alpha1.UIDReference
}

NetworkPeering defines a network peering with another network.

func (*NetworkPeering) DeepCopy added in v0.1.1

func (in *NetworkPeering) DeepCopy() *NetworkPeering

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

func (*NetworkPeering) DeepCopyInto added in v0.1.1

func (in *NetworkPeering) DeepCopyInto(out *NetworkPeering)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkPeeringPhase added in v0.1.1

type NetworkPeeringPhase string

NetworkPeeringPhase is the phase a NetworkPeering can be in.

const (
	// NetworkPeeringPhasePending signals that the network peering is not bound.
	NetworkPeeringPhasePending NetworkPeeringPhase = "Pending"
	// NetworkPeeringPhaseBound signals that the network peering is bound.
	NetworkPeeringPhaseBound NetworkPeeringPhase = "Bound"
)

type NetworkPeeringStatus added in v0.1.1

type NetworkPeeringStatus struct {
	// Name is the name of the network peering.
	Name string
	// NetworkHandle is the handle of the peered network.
	NetworkHandle string
	// Phase represents the binding phase of a network peering.
	Phase NetworkPeeringPhase
	// LastPhaseTransitionTime is the last time the Phase transitioned.
	LastPhaseTransitionTime *metav1.Time
}

NetworkPeeringStatus is the status of a network peering.

func (*NetworkPeeringStatus) DeepCopy added in v0.1.1

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

func (*NetworkPeeringStatus) DeepCopyInto added in v0.1.1

func (in *NetworkPeeringStatus) DeepCopyInto(out *NetworkPeeringStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkSpec

type NetworkSpec struct {
	// Handle is the identifier of the network provider.
	Handle string
	// Peerings are the network peerings with this network.
	Peerings []NetworkPeering
}

NetworkSpec defines the desired state of Network

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 NetworkState

type NetworkState string

NetworkState is the state of a network. +enum

const (
	// NetworkStatePending means the network is being provisioned.
	NetworkStatePending NetworkState = "Pending"
	// NetworkStateAvailable means the network is ready to use.
	NetworkStateAvailable NetworkState = "Available"
	// NetworkStateError means the network is in an error state.
	NetworkStateError NetworkState = "Error"
)

type NetworkStatus

type NetworkStatus struct {
	// State is the state of the machine.
	State NetworkState
	// Peerings contains the states of the network peerings for the network.
	Peerings []NetworkPeeringStatus
}

NetworkStatus defines the observed state of 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 PrefixSource

type PrefixSource struct {
	// Value is a single IPPrefix value as defined in the AliasPrefix
	Value *commonv1alpha1.IPPrefix
	// EphemeralPrefix defines the Prefix which should be allocated by the AliasPrefix
	Ephemeral *EphemeralPrefixSource
}

PrefixSource is the source of the Prefix definition in an AliasPrefix

func (*PrefixSource) DeepCopy

func (in *PrefixSource) DeepCopy() *PrefixSource

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

func (*PrefixSource) DeepCopyInto

func (in *PrefixSource) DeepCopyInto(out *PrefixSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualIP

type VirtualIP struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   VirtualIPSpec
	Status VirtualIPStatus
}

VirtualIP is the Schema for the virtualips API

func (*VirtualIP) DeepCopy

func (in *VirtualIP) DeepCopy() *VirtualIP

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

func (*VirtualIP) DeepCopyInto

func (in *VirtualIP) DeepCopyInto(out *VirtualIP)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VirtualIP) DeepCopyObject

func (in *VirtualIP) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type VirtualIPList

type VirtualIPList struct {
	metav1.TypeMeta
	metav1.ListMeta
	Items []VirtualIP
}

VirtualIPList contains a list of VirtualIP

func (*VirtualIPList) DeepCopy

func (in *VirtualIPList) DeepCopy() *VirtualIPList

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

func (*VirtualIPList) DeepCopyInto

func (in *VirtualIPList) DeepCopyInto(out *VirtualIPList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VirtualIPList) DeepCopyObject

func (in *VirtualIPList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type VirtualIPPhase

type VirtualIPPhase string

VirtualIPPhase is the binding phase of a VirtualIP.

const (
	// VirtualIPPhaseUnbound is used for any VirtualIP that is not bound.
	VirtualIPPhaseUnbound VirtualIPPhase = "Unbound"
	// VirtualIPPhasePending is used for any VirtualIP that is currently awaiting binding.
	VirtualIPPhasePending VirtualIPPhase = "Pending"
	// VirtualIPPhaseBound is used for any VirtualIP that is properly bound.
	VirtualIPPhaseBound VirtualIPPhase = "Bound"
)

type VirtualIPSource

type VirtualIPSource struct {
	// VirtualIPRef references a VirtualIP to use.
	VirtualIPRef *corev1.LocalObjectReference
	// Ephemeral instructs to create an ephemeral (i.e. coupled to the lifetime of the surrounding object)
	// VirtualIP.
	Ephemeral *EphemeralVirtualIPSource
}

VirtualIPSource is the definition of how to obtain a VirtualIP.

func (*VirtualIPSource) DeepCopy

func (in *VirtualIPSource) DeepCopy() *VirtualIPSource

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

func (*VirtualIPSource) DeepCopyInto

func (in *VirtualIPSource) DeepCopyInto(out *VirtualIPSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualIPSpec

type VirtualIPSpec struct {
	// Type is the type of VirtualIP.
	Type VirtualIPType
	// IPFamily is the ip family of the VirtualIP.
	IPFamily corev1.IPFamily

	// TargetRef references the target for this VirtualIP (currently only NetworkInterface).
	TargetRef *commonv1alpha1.LocalUIDReference
}

VirtualIPSpec defines the desired state of VirtualIP

func (*VirtualIPSpec) DeepCopy

func (in *VirtualIPSpec) DeepCopy() *VirtualIPSpec

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

func (*VirtualIPSpec) DeepCopyInto

func (in *VirtualIPSpec) DeepCopyInto(out *VirtualIPSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualIPStatus

type VirtualIPStatus struct {
	// IP is the allocated IP, if any.
	IP *commonv1alpha1.IP

	// Phase is the VirtualIPPhase of the VirtualIP.
	Phase VirtualIPPhase
	// LastPhaseTransitionTime is the last time the Phase transitioned from one value to another.
	LastPhaseTransitionTime *metav1.Time
}

VirtualIPStatus defines the observed state of VirtualIP

func (*VirtualIPStatus) DeepCopy

func (in *VirtualIPStatus) DeepCopy() *VirtualIPStatus

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

func (*VirtualIPStatus) DeepCopyInto

func (in *VirtualIPStatus) DeepCopyInto(out *VirtualIPStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualIPTemplateSpec

type VirtualIPTemplateSpec struct {
	metav1.ObjectMeta
	Spec VirtualIPSpec
}

VirtualIPTemplateSpec is the specification of a VirtualIP template.

func (*VirtualIPTemplateSpec) DeepCopy

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

func (*VirtualIPTemplateSpec) DeepCopyInto

func (in *VirtualIPTemplateSpec) DeepCopyInto(out *VirtualIPTemplateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualIPType

type VirtualIPType string

VirtualIPType is a type of VirtualIP.

const (
	// VirtualIPTypePublic is a VirtualIP that allocates and routes a stable public IP.
	VirtualIPTypePublic VirtualIPType = "Public"
)

Directories

Path Synopsis
Package v1alpha1 is the v1alpha1 version of the API.
Package v1alpha1 is the v1alpha1 version of the API.

Jump to

Keyboard shortcuts

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