v1alpha1

package
v0.13.10 Latest Latest
Warning

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

Go to latest
Published: May 31, 2023 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the metallb v1alpha1 API group +kubebuilder:object:generate=true +groupName=metallb.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "metallb.io", Version: "v1alpha1"}

	// 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 AddressPool

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

	Spec   AddressPoolSpec   `json:"spec"`
	Status AddressPoolStatus `json:"status,omitempty"`
}

AddressPool is the Schema for the addresspools API.

func (*AddressPool) ConvertFrom

func (dst *AddressPool) ConvertFrom(srcRaw conversion.Hub) error

ConvertFrom converts from the Hub version (vbeta1) to this version.

func (*AddressPool) ConvertTo

func (src *AddressPool) ConvertTo(dstRaw conversion.Hub) error

ConvertTo converts this AddressPool to the Hub version (vbeta1).

func (*AddressPool) DeepCopy

func (in *AddressPool) DeepCopy() *AddressPool

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

func (*AddressPool) DeepCopyInto

func (in *AddressPool) DeepCopyInto(out *AddressPool)

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

func (*AddressPool) DeepCopyObject

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

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

type AddressPoolList

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

AddressPoolList contains a list of AddressPool.

func (*AddressPoolList) DeepCopy

func (in *AddressPoolList) DeepCopy() *AddressPoolList

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

func (*AddressPoolList) DeepCopyInto

func (in *AddressPoolList) DeepCopyInto(out *AddressPoolList)

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

func (*AddressPoolList) DeepCopyObject

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

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

type AddressPoolSpec

type AddressPoolSpec struct {
	// Protocol can be used to select how the announcement is done.
	// +kubebuilder:validation:Enum:=layer2; bgp
	Protocol string `json:"protocol"`

	// A list of IP address ranges over which MetalLB has authority.
	// You can list multiple ranges in a single pool, they will all share the
	// same settings. Each range can be either a CIDR prefix, or an explicit
	// start-end range of IPs.
	Addresses []string `json:"addresses"`

	// AutoAssign flag used to prevent MetallB from automatic allocation
	// for a pool.
	// +optional
	// +kubebuilder:default:=true
	AutoAssign *bool `json:"autoAssign,omitempty"`

	// When an IP is allocated from this pool, how should it be
	// translated into BGP announcements?
	// +optional
	BGPAdvertisements []BgpAdvertisement `json:"bgpAdvertisements,omitempty"`
}

AddressPoolSpec defines the desired state of AddressPool.

func (*AddressPoolSpec) DeepCopy

func (in *AddressPoolSpec) DeepCopy() *AddressPoolSpec

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

func (*AddressPoolSpec) DeepCopyInto

func (in *AddressPoolSpec) DeepCopyInto(out *AddressPoolSpec)

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

type AddressPoolStatus

type AddressPoolStatus struct {
}

AddressPoolStatus defines the observed state of AddressPool.

func (*AddressPoolStatus) DeepCopy

func (in *AddressPoolStatus) DeepCopy() *AddressPoolStatus

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

func (*AddressPoolStatus) DeepCopyInto

func (in *AddressPoolStatus) DeepCopyInto(out *AddressPoolStatus)

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

type BgpAdvertisement

type BgpAdvertisement struct {
	// The aggregation-length advertisement option lets you “roll up” the /32s into a larger prefix.
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:default:=32
	// +optional
	AggregationLength *int32 `json:"aggregationLength,omitempty"`

	// Optional, defaults to 128 (i.e. no aggregation) if not
	// specified.
	// +kubebuilder:default:=128
	// +optional
	AggregationLengthV6 *int32 `json:"aggregationLengthV6,omitempty"`

	// BGP LOCAL_PREF attribute which is used by BGP best path algorithm,
	// Path with higher localpref is preferred over one with lower localpref.
	LocalPref uint32 `json:"localPref,omitempty"`

	// BGP communities
	Communities []string `json:"communities,omitempty"`
}

func (*BgpAdvertisement) DeepCopy

func (in *BgpAdvertisement) DeepCopy() *BgpAdvertisement

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

func (*BgpAdvertisement) DeepCopyInto

func (in *BgpAdvertisement) DeepCopyInto(out *BgpAdvertisement)

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