v1beta1

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Oct 1, 2023 License: Apache-2.0 Imports: 23 Imported by: 10

Documentation

Overview

Package v1beta1 contains API Schema definitions for the network v1beta1 API group +kubebuilder:object:generate=true +groupName=network.openstack.org

Index

Constants

View Source
const (
	// NetConfigErrorMessage
	NetConfigErrorMessage = "NetConfig error occured %s"

	// NetConfigMissingMessage
	NetConfigMissingMessage = "NetConfig missing in namespace %s"

	// ReservationListErrorMessage
	ReservationListErrorMessage = "Getting Reservations error occured %s"

	// ReservationInitMessage
	ReservationInitMessage = "Reservation create not started"

	// ReservationErrorMessage
	ReservationErrorMessage = "Reservation error occured %s"

	// ReservationMisMatchErrorMessage
	ReservationMisMatchErrorMessage = "Reservation reservations (%d) do not match requested (%d)"

	// ReservationReadyMessage
	ReservationReadyMessage = "Reservation successful"
)

Common Messages used by API objects.

View Source
const (
	// AnnotationHostnameKey -
	AnnotationHostnameKey = "dnsmasq.network.openstack.org/hostname"

	// DNSDataLabelSelectorKey - label selector to identify config maps with hosts data
	DNSDataLabelSelectorKey = "dnsmasqhosts"

	// DNSMasqContainerImage is the fall-back container image for DNSMasq
	DNSMasqContainerImage = "quay.io/podified-antelope-centos9/openstack-neutron-server:current-podified"
)
View Source
const (
	// ReservationReadyCondition indicates if the IP reservation was successful
	ReservationReadyCondition condition.Type = "ReservationReady"
)

Condition Types used by API objects.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "network.openstack.org", 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

func SetupDNSMasqDefaults

func SetupDNSMasqDefaults(defaults DNSMasqDefaults)

SetupDNSMasqDefaults - initialize DNSMasq spec defaults for use with either internal or external webhooks

func SetupDefaults

func SetupDefaults()

SetupDefaults - initializes any CRD field defaults based on environment variables (the defaulting mechanism itself is implemented via webhooks)

Types

type AllocationRange

type AllocationRange struct {
	// +kubebuilder:validation:Required
	// Start IP for the AllocationRange
	Start string `json:"start"`

	// +kubebuilder:validation:Required
	// End IP for the AllocationRange
	End string `json:"end"`
}

AllocationRange definition

func (*AllocationRange) DeepCopy

func (in *AllocationRange) DeepCopy() *AllocationRange

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

func (*AllocationRange) DeepCopyInto

func (in *AllocationRange) DeepCopyInto(out *AllocationRange)

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

type DNSData

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

	Spec   DNSDataSpec   `json:"spec,omitempty"`
	Status DNSDataStatus `json:"status,omitempty"`
}

DNSData is the Schema for the dnsdata API

func (*DNSData) DeepCopy

func (in *DNSData) DeepCopy() *DNSData

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

func (*DNSData) DeepCopyInto

func (in *DNSData) DeepCopyInto(out *DNSData)

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

func (*DNSData) DeepCopyObject

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

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

func (DNSData) IsReady

func (instance DNSData) IsReady() bool

IsReady returns true if DNSMasq reconciled successfully

type DNSDataList

type DNSDataList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []DNSData `json:"items"`
}

DNSDataList contains a list of DNSData

func (*DNSDataList) DeepCopy

func (in *DNSDataList) DeepCopy() *DNSDataList

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

func (*DNSDataList) DeepCopyInto

func (in *DNSDataList) DeepCopyInto(out *DNSDataList)

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

func (*DNSDataList) DeepCopyObject

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

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

type DNSDataSpec

type DNSDataSpec struct {
	// +kubebuilder:validation:Optional
	Hosts []DNSHost `json:"hosts,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default="dnsdata"
	// Value of the DNSDataLabelSelector to set on the created configmaps containing hosts information
	DNSDataLabelSelectorValue string `json:"dnsDataLabelSelectorValue"`
}

DNSDataSpec defines the desired state of DNSData

func (*DNSDataSpec) DeepCopy

func (in *DNSDataSpec) DeepCopy() *DNSDataSpec

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

func (*DNSDataSpec) DeepCopyInto

func (in *DNSDataSpec) DeepCopyInto(out *DNSDataSpec)

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

type DNSDataStatus

type DNSDataStatus struct {
	// Conditions
	Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`

	// Map of the dns data configmap
	Hash string `json:"hash,omitempty"`
}

DNSDataStatus defines the observed state of DNSData

func (*DNSDataStatus) DeepCopy

func (in *DNSDataStatus) DeepCopy() *DNSDataStatus

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

func (*DNSDataStatus) DeepCopyInto

func (in *DNSDataStatus) DeepCopyInto(out *DNSDataStatus)

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

type DNSHost

type DNSHost struct {
	// +kubebuilder:validation:Required
	// IP address of the host file entry.
	IP string `json:"ip"`

	// +kubebuilder:validation:Required
	// Hostnames for the IP address.
	Hostnames []string `json:"hostnames"`
}

DNSHost holds the mapping between IP and hostnames that will be added to dnsmasq hosts file.

func (*DNSHost) DeepCopy

func (in *DNSHost) DeepCopy() *DNSHost

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

func (*DNSHost) DeepCopyInto

func (in *DNSHost) DeepCopyInto(out *DNSHost)

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

type DNSMasq

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

	Spec   DNSMasqSpec   `json:"spec,omitempty"`
	Status DNSMasqStatus `json:"status,omitempty"`
}

DNSMasq is the Schema for the dnsmasqs API

func (*DNSMasq) DeepCopy

func (in *DNSMasq) DeepCopy() *DNSMasq

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

func (*DNSMasq) DeepCopyInto

func (in *DNSMasq) DeepCopyInto(out *DNSMasq)

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

func (*DNSMasq) DeepCopyObject

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

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

func (*DNSMasq) Default

func (r *DNSMasq) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (DNSMasq) IsReady

func (instance DNSMasq) IsReady() bool

IsReady returns true if DNSMasq reconciled successfully

func (DNSMasq) RbacConditionsSet

func (instance DNSMasq) RbacConditionsSet(c *condition.Condition)

RbacConditionsSet - set the conditions for the rbac object

func (DNSMasq) RbacNamespace

func (instance DNSMasq) RbacNamespace() string

RbacNamespace - return the namespace

func (DNSMasq) RbacResourceName

func (instance DNSMasq) RbacResourceName() string

RbacResourceName - return the name to be used for rbac objects (serviceaccount, role, rolebinding)

func (*DNSMasq) SetupWebhookWithManager

func (r *DNSMasq) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager sets up the webhook with the Manager

func (*DNSMasq) ValidateCreate

func (r *DNSMasq) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*DNSMasq) ValidateDelete

func (r *DNSMasq) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*DNSMasq) ValidateUpdate

func (r *DNSMasq) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type DNSMasqDebug

type DNSMasqDebug struct {
	// +kubebuilder:validation:Optional
	// +kubebuilder:default=false
	// Service enable debug
	Service bool `json:"service"`
}

DNSMasqDebug defines the observed state of DNSMasq

func (*DNSMasqDebug) DeepCopy

func (in *DNSMasqDebug) DeepCopy() *DNSMasqDebug

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

func (*DNSMasqDebug) DeepCopyInto

func (in *DNSMasqDebug) DeepCopyInto(out *DNSMasqDebug)

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

type DNSMasqDefaults

type DNSMasqDefaults struct {
	ContainerImageURL string
}

DNSMasqDefaults -

func (*DNSMasqDefaults) DeepCopy

func (in *DNSMasqDefaults) DeepCopy() *DNSMasqDefaults

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

func (*DNSMasqDefaults) DeepCopyInto

func (in *DNSMasqDefaults) DeepCopyInto(out *DNSMasqDefaults)

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

type DNSMasqList

type DNSMasqList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []DNSMasq `json:"items"`
}

DNSMasqList contains a list of DNSMasq

func (*DNSMasqList) DeepCopy

func (in *DNSMasqList) DeepCopy() *DNSMasqList

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

func (*DNSMasqList) DeepCopyInto

func (in *DNSMasqList) DeepCopyInto(out *DNSMasqList)

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

func (*DNSMasqList) DeepCopyObject

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

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

type DNSMasqOption

type DNSMasqOption struct {
	// +kubebuilder:validation:Enum=server;rev-server;srv-host;txt-record;ptr-record;rebind-domain-ok;naptr-record;cname;host-record;caa-record;dns-rr;auth-zone;synth-domain;no-negcache
	Key    string   `json:"key"`
	Values []string `json:"values"`
}

DNSMasqOption defines allowed options for dnsmasq

func (*DNSMasqOption) DeepCopy

func (in *DNSMasqOption) DeepCopy() *DNSMasqOption

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

func (*DNSMasqOption) DeepCopyInto

func (in *DNSMasqOption) DeepCopyInto(out *DNSMasqOption)

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

type DNSMasqOverrideSpec added in v0.2.0

type DNSMasqOverrideSpec struct {
	// Override configuration for the Service created to serve traffic to the cluster.
	Service *service.OverrideSpec `json:"service,omitempty"`
}

DNSMasqOverrideSpec to override the generated manifest of several child resources.

func (*DNSMasqOverrideSpec) DeepCopy added in v0.2.0

func (in *DNSMasqOverrideSpec) DeepCopy() *DNSMasqOverrideSpec

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

func (*DNSMasqOverrideSpec) DeepCopyInto added in v0.2.0

func (in *DNSMasqOverrideSpec) DeepCopyInto(out *DNSMasqOverrideSpec)

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

type DNSMasqSpec

type DNSMasqSpec struct {
	// +kubebuilder:validation:Optional
	// DNSMasq Container Image URL
	ContainerImage string `json:"containerImage"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default=1
	// Replicas - DNSMasq Replicas
	Replicas *int32 `json:"replicas"`

	// +kubebuilder:validation:Optional
	// Debug - enable debug for different deploy stages. If an init container is used, it runs and the
	// actual action pod gets started with sleep infinity
	Debug DNSMasqDebug `json:"debug,omitempty"`

	// +kubebuilder:validation:Optional
	// Options allows to customize the dnsmasq instance
	Options []DNSMasqOption `json:"options,omitempty"`

	// +kubebuilder:validation:Optional
	// NodeSelector to target subset of worker nodes running this service. Setting
	// NodeSelector here acts as a default value and can be overridden by service
	// specific NodeSelector Settings.
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default="dnsdata"
	// Value of the DNSDataLabelSelectorKey which was set on the configmaps containing hosts information
	DNSDataLabelSelectorValue string `json:"dnsDataLabelSelectorValue"`

	// +kubebuilder:validation:Optional
	// Override, provides the ability to override the generated manifest of several child resources.
	Override DNSMasqOverrideSpec `json:"override,omitempty"`
}

DNSMasqSpec defines the desired state of DNSMasq

func (*DNSMasqSpec) DeepCopy

func (in *DNSMasqSpec) DeepCopy() *DNSMasqSpec

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

func (*DNSMasqSpec) DeepCopyInto

func (in *DNSMasqSpec) DeepCopyInto(out *DNSMasqSpec)

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

func (*DNSMasqSpec) Default

func (spec *DNSMasqSpec) Default()

Default - set defaults for this DNSMasq spec

type DNSMasqStatus

type DNSMasqStatus struct {
	// Conditions
	Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`

	// Map of hashes to track e.g. job status
	Hash map[string]string `json:"hash,omitempty"`

	// ReadyCount of dnsmasq deployment
	ReadyCount int32 `json:"readyCount,omitempty"`

	// DNSServer Addresses
	DNSAddresses []string `json:"dnsAddresses,omitempty"`

	// DNSServer Cluster Addresses
	DNSClusterAddresses []string `json:"dnsClusterAddresses,omitempty"`
}

DNSMasqStatus defines the observed state of DNSMasq

func (*DNSMasqStatus) DeepCopy

func (in *DNSMasqStatus) DeepCopy() *DNSMasqStatus

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

func (*DNSMasqStatus) DeepCopyInto

func (in *DNSMasqStatus) DeepCopyInto(out *DNSMasqStatus)

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

func (DNSMasqStatus) GetConditions

func (s DNSMasqStatus) GetConditions() condition.Conditions

GetConditions returns the list of conditions from the status

type IPAddress

type IPAddress struct {
	// Network name
	Network NetNameStr `json:"network"`

	// Subnet name
	Subnet NetNameStr `json:"subnet"`

	// Address contains the IP address
	Address string `json:"address"`
}

IPAddress -

func (*IPAddress) DeepCopy

func (in *IPAddress) DeepCopy() *IPAddress

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

func (*IPAddress) DeepCopyInto

func (in *IPAddress) DeepCopyInto(out *IPAddress)

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

type IPSet

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

	Spec   IPSetSpec   `json:"spec,omitempty"`
	Status IPSetStatus `json:"status,omitempty"`
}

IPSet is the Schema for the ipsets API

func (*IPSet) DeepCopy

func (in *IPSet) DeepCopy() *IPSet

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

func (*IPSet) DeepCopyInto

func (in *IPSet) DeepCopyInto(out *IPSet)

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

func (*IPSet) DeepCopyObject

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

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

func (*IPSet) Default

func (r *IPSet) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*IPSet) SetupWebhookWithManager

func (r *IPSet) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager sets up the webhook with the Manager

func (*IPSet) ValidateCreate

func (r *IPSet) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*IPSet) ValidateDelete

func (r *IPSet) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*IPSet) ValidateUpdate

func (r *IPSet) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type IPSetList

type IPSetList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []IPSet `json:"items"`
}

IPSetList contains a list of IPSet

func (*IPSetList) DeepCopy

func (in *IPSetList) DeepCopy() *IPSetList

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

func (*IPSetList) DeepCopyInto

func (in *IPSetList) DeepCopyInto(out *IPSetList)

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

func (*IPSetList) DeepCopyObject

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

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

type IPSetNetwork

type IPSetNetwork struct {
	// +kubebuilder:validation:Required
	// Network Name
	Name NetNameStr `json:"name"`

	// +kubebuilder:validation:Required
	// Subnet Name
	SubnetName NetNameStr `json:"subnetName"`

	// +kubebuilder:validation:Optional
	// Fixed Ip
	FixedIP *string `json:"fixedIP,omitempty"`

	// +kubebuilder:validation:Optional
	// Use gateway from subnet as default route. There can only be one default route defined per IPSet.
	DefaultRoute *bool `json:"defaultRoute,omitempty"`
}

IPSetNetwork Type

func (*IPSetNetwork) DeepCopy

func (in *IPSetNetwork) DeepCopy() *IPSetNetwork

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

func (*IPSetNetwork) DeepCopyInto

func (in *IPSetNetwork) DeepCopyInto(out *IPSetNetwork)

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

type IPSetReservation

type IPSetReservation struct {
	// Network name
	Network NetNameStr `json:"network"`

	// Subnet name
	Subnet NetNameStr `json:"subnet"`

	// Address contains the IP address
	Address string `json:"address"`

	// MTU of the network
	MTU int `json:"mtu,omitempty" optional:"true"`

	// Cidr the cidr to use for this network
	Cidr string `json:"cidr,omitempty" optional:"true"`

	// Vlan ID
	Vlan *int `json:"vlan,omitempty" optional:"true"`

	// Gateway optional gateway for the network
	Gateway *string `json:"gateway,omitempty" optional:"true"`

	// Routes, list of networks that should be routed via network gateway.
	Routes []Route `json:"routes,omitempty" optional:"true"`

	// DNSDomain of the subnet
	DNSDomain string `json:"dnsDomain"`
}

IPSetReservation defines reservation status per requested network

func (*IPSetReservation) DeepCopy

func (in *IPSetReservation) DeepCopy() *IPSetReservation

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

func (*IPSetReservation) DeepCopyInto

func (in *IPSetReservation) DeepCopyInto(out *IPSetReservation)

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

type IPSetSpec

type IPSetSpec struct {
	// +kubebuilder:validation:Optional
	// +kubebuilder:default=false
	// Immutable, if `true` the validation webhook will block any update to the Spec, except of Spec.Immutable.
	// This allows the caller to add safety mechanism to the object. If a change is required to the object,
	// an extra update needs to be done to make updates possible.
	Immutable bool `json:"immutable"`

	// Networks used to request IPs for
	Networks []IPSetNetwork `json:"networks"`
}

IPSetSpec defines the desired state of IPSet

func (*IPSetSpec) DeepCopy

func (in *IPSetSpec) DeepCopy() *IPSetSpec

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

func (*IPSetSpec) DeepCopyInto

func (in *IPSetSpec) DeepCopyInto(out *IPSetSpec)

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

type IPSetStatus

type IPSetStatus struct {
	// Reservation
	Reservation []IPSetReservation `json:"reservations,omitempty" optional:"true"`

	// Conditions
	Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
}

IPSetStatus defines the observed state of IPSet

func (*IPSetStatus) DeepCopy

func (in *IPSetStatus) DeepCopy() *IPSetStatus

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

func (*IPSetStatus) DeepCopyInto

func (in *IPSetStatus) DeepCopyInto(out *IPSetStatus)

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

func (IPSetStatus) GetConditions

func (s IPSetStatus) GetConditions() condition.Conditions

GetConditions returns the list of conditions from the status

type NetConfig

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

	Spec   NetConfigSpec   `json:"spec,omitempty"`
	Status NetConfigStatus `json:"status,omitempty"`
}

NetConfig is the Schema for the netconfigs API

func (*NetConfig) DeepCopy

func (in *NetConfig) DeepCopy() *NetConfig

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

func (*NetConfig) DeepCopyInto

func (in *NetConfig) DeepCopyInto(out *NetConfig)

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

func (*NetConfig) DeepCopyObject

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

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

func (*NetConfig) Default

func (r *NetConfig) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (NetConfig) GetNet

func (instance NetConfig) GetNet(name NetNameStr) (*Network, error)

GetNet returns the network with name

func (NetConfig) GetNetAndSubnet

func (instance NetConfig) GetNetAndSubnet(name NetNameStr, subnetName NetNameStr) (*Network, *Subnet, error)

GetNetAndSubnet returns the network and subnet with name

func (*NetConfig) SetupWebhookWithManager

func (r *NetConfig) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager -

func (*NetConfig) ValidateCreate

func (r *NetConfig) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*NetConfig) ValidateDelete

func (r *NetConfig) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*NetConfig) ValidateUpdate

func (r *NetConfig) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type NetConfigList

type NetConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NetConfig `json:"items"`
}

NetConfigList contains a list of NetConfig

func (*NetConfigList) DeepCopy

func (in *NetConfigList) DeepCopy() *NetConfigList

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

func (*NetConfigList) DeepCopyInto

func (in *NetConfigList) DeepCopyInto(out *NetConfigList)

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

func (*NetConfigList) DeepCopyObject

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

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

type NetConfigSpec

type NetConfigSpec struct {
	// +kubebuilder:validation:Required
	// Networks, list of all tripleo networks of the deployment
	Networks []Network `json:"networks"`
}

NetConfigSpec defines the desired state of NetConfig

func (*NetConfigSpec) DeepCopy

func (in *NetConfigSpec) DeepCopy() *NetConfigSpec

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

func (*NetConfigSpec) DeepCopyInto

func (in *NetConfigSpec) DeepCopyInto(out *NetConfigSpec)

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

type NetConfigStatus

type NetConfigStatus struct {
}

NetConfigStatus defines the observed state of NetConfig

func (*NetConfigStatus) DeepCopy

func (in *NetConfigStatus) DeepCopy() *NetConfigStatus

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

func (*NetConfigStatus) DeepCopyInto

func (in *NetConfigStatus) DeepCopyInto(out *NetConfigStatus)

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

type NetNameStr

type NetNameStr string

NetNameStr is used for validation of a net name.

type Network

type Network struct {
	// +kubebuilder:validation:Required
	// Name of the network, e.g. External, InternalApi, ...
	Name NetNameStr `json:"name"`

	// +kubebuilder:validation:Required
	// DNSDomain name of the Network
	DNSDomain string `json:"dnsDomain"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default=1500
	// MTU of the network
	MTU int `json:"mtu"`

	// +kubebuilder:validation:Required
	// Subnets of the tripleo network
	Subnets []Subnet `json:"subnets"`
}

Network definition

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.

type Reservation

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

	Spec   ReservationSpec   `json:"spec,omitempty"`
	Status ReservationStatus `json:"status,omitempty"`
}

Reservation is the Schema for the reservations API

func (*Reservation) DeepCopy

func (in *Reservation) DeepCopy() *Reservation

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

func (*Reservation) DeepCopyInto

func (in *Reservation) DeepCopyInto(out *Reservation)

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

func (*Reservation) DeepCopyObject

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

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

func (*Reservation) Default

func (r *Reservation) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*Reservation) SetupWebhookWithManager

func (r *Reservation) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager sets up the webhook with the Manager

func (*Reservation) ValidateCreate

func (r *Reservation) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Reservation) ValidateDelete

func (r *Reservation) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Reservation) ValidateUpdate

func (r *Reservation) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ReservationList

type ReservationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Reservation `json:"items"`
}

ReservationList contains a list of Reservation

func (*ReservationList) DeepCopy

func (in *ReservationList) DeepCopy() *ReservationList

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

func (*ReservationList) DeepCopyInto

func (in *ReservationList) DeepCopyInto(out *ReservationList)

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

func (*ReservationList) DeepCopyObject

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

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

type ReservationSpec

type ReservationSpec struct {
	// IPSetRef points to the IPSet object the IPs were created for.
	IPSetRef corev1.ObjectReference `json:"ipSetRef"`

	// +kubebuilder:validation:Required
	// Reservation, map (index network name) with reservation
	Reservation map[string]IPAddress `json:"reservation"`
}

ReservationSpec defines the desired state of Reservation

func (*ReservationSpec) DeepCopy

func (in *ReservationSpec) DeepCopy() *ReservationSpec

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

func (*ReservationSpec) DeepCopyInto

func (in *ReservationSpec) DeepCopyInto(out *ReservationSpec)

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

type ReservationStatus

type ReservationStatus struct {
}

ReservationStatus defines the observed state of Reservation

func (*ReservationStatus) DeepCopy

func (in *ReservationStatus) DeepCopy() *ReservationStatus

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

func (*ReservationStatus) DeepCopyInto

func (in *ReservationStatus) DeepCopyInto(out *ReservationStatus)

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

type Route

type Route struct {
	// +kubebuilder:validation:Required
	// Destination, network CIDR
	Destination string `json:"destination"`

	// +kubebuilder:validation:Required
	// Nexthop, gateway for the destination
	Nexthop string `json:"nexthop"`
}

Route definition

func (*Route) DeepCopy

func (in *Route) DeepCopy() *Route

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

func (*Route) DeepCopyInto

func (in *Route) DeepCopyInto(out *Route)

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

type Subnet

type Subnet struct {
	// +kubebuilder:validation:Required
	// Name of the subnet
	Name NetNameStr `json:"name"`

	// +kubebuilder:validation:Required
	// Cidr the cidr to use for this network
	Cidr string `json:"cidr"`

	// +kubebuilder:validation:Optional
	// DNSDomain name of the subnet, allows to overwrite the DNSDomain of the Network
	DNSDomain *string `json:"dnsDomain,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Maximum=4094
	// Vlan ID
	Vlan *int `json:"vlan,omitempty"`

	// +kubebuilder:validation:Required
	// AllocationRanges a list of AllocationRange for assignment. Allocation will start
	// from first range, first address.
	AllocationRanges []AllocationRange `json:"allocationRanges"`

	// +kubebuilder:validation:Optional
	// ExcludeAddresses a set of IPs that should be excluded from used as reservation, for both dynamic
	// and static via IPSet FixedIP parameter
	ExcludeAddresses []string `json:"excludeAddresses,omitempty"`

	// +kubebuilder:validation:Optional
	// Gateway optional gateway for the network
	Gateway *string `json:"gateway,omitempty"`

	// +kubebuilder:validation:Optional
	// Routes, list of networks that should be routed via network gateway.
	Routes []Route `json:"routes,omitempty"`
}

Subnet definition

func (*Subnet) DeepCopy

func (in *Subnet) DeepCopy() *Subnet

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

func (*Subnet) DeepCopyInto

func (in *Subnet) DeepCopyInto(out *Subnet)

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