v1alpha1

package
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: Mar 12, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

+k8s:deepcopy-gen=package +groupName=network.harvesterhci.io

+k8s:deepcopy-gen=package +groupName=network.harvesterhci.io

+k8s:deepcopy-gen=package +groupName=network.harvesterhci.io

Index

Constants

This section is empty.

Variables

View Source
var (
	Registered condition.Cond = "Registered"
	CacheReady condition.Cond = "CacheReady"
	AgentReady condition.Cond = "AgentReady"
	Stopped    condition.Cond = "Stopped"
)
View Source
var (
	Allocated condition.Cond = "Allocated"
	Disabled  condition.Cond = "Disabled"
)
View Source
var (
	IPPoolResourceName                      = "ippools"
	VirtualMachineNetworkConfigResourceName = "virtualmachinenetworkconfigs"
)
View Source
var (
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	AddToScheme   = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: network.GroupName, Version: "v1alpha1"}

SchemeGroupVersion is group version used to register these objects

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type IPPool

type IPPool struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   IPPoolSpec   `json:"spec,omitempty"`
	Status IPPoolStatus `json:"status,omitempty"`
}

func NewIPPool

func NewIPPool(namespace, name string, obj IPPool) *IPPool

func (*IPPool) DeepCopy

func (in *IPPool) DeepCopy() *IPPool

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

func (*IPPool) DeepCopyInto

func (in *IPPool) DeepCopyInto(out *IPPool)

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

func (*IPPool) DeepCopyObject

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

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

type IPPoolList

type IPPoolList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`

	Items []IPPool `json:"items"`
}

IPPoolList is a list of IPPool resources

func (*IPPoolList) DeepCopy

func (in *IPPoolList) DeepCopy() *IPPoolList

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

func (*IPPoolList) DeepCopyInto

func (in *IPPoolList) DeepCopyInto(out *IPPoolList)

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

func (*IPPoolList) DeepCopyObject

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

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

type IPPoolSpec

type IPPoolSpec struct {
	IPv4Config IPv4Config `json:"ipv4Config,omitempty"`

	// +kubebuilder:validation:Required
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="NetworkName is immutable"
	// +kubebuilder:validation:MaxLength=64
	NetworkName string `json:"networkName"`

	// +optional
	// +kubebuilder:validation:Optional
	Paused *bool `json:"paused,omitempty"`
}

func (*IPPoolSpec) DeepCopy

func (in *IPPoolSpec) DeepCopy() *IPPoolSpec

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

func (*IPPoolSpec) DeepCopyInto

func (in *IPPoolSpec) DeepCopyInto(out *IPPoolSpec)

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

type IPPoolStatus

type IPPoolStatus struct {
	LastUpdate metav1.Time `json:"lastUpdate,omitempty"`

	// +optional
	// +kubebuilder:validation:Optional
	IPv4 *IPv4Status `json:"ipv4,omitempty"`

	// +optional
	// +kubebuilder:validation:Optional
	AgentPodRef *PodReference `json:"agentPodRef,omitempty"`

	// +optional
	// +kubebuilder:validation:Optional
	Conditions []genericcondition.GenericCondition `json:"conditions,omitempty"`
}

func (*IPPoolStatus) DeepCopy

func (in *IPPoolStatus) DeepCopy() *IPPoolStatus

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

func (*IPPoolStatus) DeepCopyInto

func (in *IPPoolStatus) DeepCopyInto(out *IPPoolStatus)

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

type IPv4Config

type IPv4Config struct {
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="CIDR is immutable"
	CIDR string `json:"cidr"`

	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Format=ipv4
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="ServerIP is immutable"
	ServerIP string `json:"serverIP"`

	// +kubebuilder:validation:Required
	Pool Pool `json:"pool"`

	// +optional
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Format=ipv4
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Router is immutable"
	Router string `json:"router,omitempty"`

	// +optional
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Format=ipv4
	// +kubebuilder:validation:MaxItems=3
	DNS []string `json:"dns,omitempty"`

	// +optional
	// +kubebuilder:validation:Optional
	DomainName *string `json:"domainName,omitempty"`

	// +optional
	// +kubebuilder:validation:Optional
	DomainSearch []string `json:"domainSearch,omitempty"`

	// +optional
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:MaxItems=4
	NTP []string `json:"ntp,omitempty"`

	// +optional
	// +kubebuilder:validation:Optional
	LeaseTime *int `json:"leaseTime,omitempty"`
}

+kubebuilder:validation:XValidation:rule="!has(oldSelf.router) || has(self.router)", message="Router is required once set"

func (*IPv4Config) DeepCopy

func (in *IPv4Config) DeepCopy() *IPv4Config

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

func (*IPv4Config) DeepCopyInto

func (in *IPv4Config) DeepCopyInto(out *IPv4Config)

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

type IPv4Status

type IPv4Status struct {
	Allocated map[string]string `json:"allocated,omitempty"`
	Used      int               `json:"used"`
	Available int               `json:"available"`
}

func (*IPv4Status) DeepCopy

func (in *IPv4Status) DeepCopy() *IPv4Status

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

func (*IPv4Status) DeepCopyInto

func (in *IPv4Status) DeepCopyInto(out *IPv4Status)

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

type NetworkConfig

type NetworkConfig struct {
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MaxLength=64
	NetworkName string `json:"networkName"`

	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MaxLength=17
	MACAddress string `json:"macAddress"`

	// +optional
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Format=ipv4
	IPAddress *string `json:"ipAddress,omitempty"`
}

func (*NetworkConfig) DeepCopy

func (in *NetworkConfig) DeepCopy() *NetworkConfig

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

func (*NetworkConfig) DeepCopyInto

func (in *NetworkConfig) DeepCopyInto(out *NetworkConfig)

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

type NetworkConfigState

type NetworkConfigState string
const (
	AllocatedState NetworkConfigState = "Allocated"
	PendingState   NetworkConfigState = "Pending"
)

type NetworkConfigStatus

type NetworkConfigStatus struct {
	AllocatedIPAddress string             `json:"allocatedIPAddress,omitempty"`
	MACAddress         string             `json:"macAddress,omitempty"`
	NetworkName        string             `json:"networkName,omitempty"`
	State              NetworkConfigState `json:"state,omitempty"`
}

func (*NetworkConfigStatus) DeepCopy

func (in *NetworkConfigStatus) DeepCopy() *NetworkConfigStatus

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

func (*NetworkConfigStatus) DeepCopyInto

func (in *NetworkConfigStatus) DeepCopyInto(out *NetworkConfigStatus)

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

type PodReference

type PodReference struct {
	Namespace string    `json:"namespace,omitempty"`
	Name      string    `json:"name,omitempty"`
	Image     string    `json:"image,omitempty"`
	UID       types.UID `json:"uid,omitempty"`
}

func (*PodReference) DeepCopy

func (in *PodReference) DeepCopy() *PodReference

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

func (*PodReference) DeepCopyInto

func (in *PodReference) DeepCopyInto(out *PodReference)

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

type Pool

type Pool struct {
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Format=ipv4
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Start is immutable"
	Start string `json:"start"`

	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Format=ipv4
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="End is immutable"
	End string `json:"end"`

	// +optional
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Format=ipv4
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Exclude is immutable"
	Exclude []string `json:"exclude,omitempty"`
}

+kubebuilder:validation:XValidation:rule="!has(oldSelf.exclude) || has(self.exclude)", message="End is required once set"

func (*Pool) DeepCopy

func (in *Pool) DeepCopy() *Pool

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

func (*Pool) DeepCopyInto

func (in *Pool) DeepCopyInto(out *Pool)

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

type VirtualMachineNetworkConfig

type VirtualMachineNetworkConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   VirtualMachineNetworkConfigSpec   `json:"spec,omitempty"`
	Status VirtualMachineNetworkConfigStatus `json:"status,omitempty"`
}

func NewVirtualMachineNetworkConfig

func NewVirtualMachineNetworkConfig(namespace, name string, obj VirtualMachineNetworkConfig) *VirtualMachineNetworkConfig

func (*VirtualMachineNetworkConfig) DeepCopy

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

func (*VirtualMachineNetworkConfig) DeepCopyInto

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

func (*VirtualMachineNetworkConfig) DeepCopyObject

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

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

type VirtualMachineNetworkConfigList

type VirtualMachineNetworkConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`

	Items []VirtualMachineNetworkConfig `json:"items"`
}

VirtualMachineNetworkConfigList is a list of VirtualMachineNetworkConfig resources

func (*VirtualMachineNetworkConfigList) DeepCopy

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

func (*VirtualMachineNetworkConfigList) DeepCopyInto

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

func (*VirtualMachineNetworkConfigList) DeepCopyObject

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

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

type VirtualMachineNetworkConfigSpec

type VirtualMachineNetworkConfigSpec struct {
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="VMName is immutable"
	// +kubebuilder:validation:MaxLength=64
	VMName string `json:"vmName"`

	// +optional
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:XValidation:rule="oldSelf.all(x, x in self)",message="NetworkConfig may only be added"
	// +kubebuilder:validation:MaxItems=4
	NetworkConfigs []NetworkConfig `json:"networkConfigs,omitempty"`

	// +optional
	// +kubebuilder:validation:Optional
	Paused *bool `json:"paused,omitempty"`
}

func (*VirtualMachineNetworkConfigSpec) DeepCopy

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

func (*VirtualMachineNetworkConfigSpec) DeepCopyInto

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

type VirtualMachineNetworkConfigStatus

type VirtualMachineNetworkConfigStatus struct {
	NetworkConfigs []NetworkConfigStatus `json:"networkConfigs,omitempty"`

	// +optional
	// +kubebuilder:validation:Optional
	Conditions []genericcondition.GenericCondition `json:"conditions,omitempty"`
}

func (*VirtualMachineNetworkConfigStatus) DeepCopy

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

func (*VirtualMachineNetworkConfigStatus) DeepCopyInto

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

Jump to

Keyboard shortcuts

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