Documentation ¶
Index ¶
- Variables
- func CheckVLANRangesOverlap(ranges []VLANRange) error
- func DefaultObjectMetadata(obj client.Object)
- func SortVLANRanges(ranges []VLANRange)
- func ValidateObjectMetadata(obj client.Object) error
- type AlloyBasicAuth
- type AlloyConfig
- type AlloyLokiTarget
- type AlloyPrometheusTarget
- type AlloyTarget
- type DHCPMode
- type Defaultable
- type FabricConfig
- type FabricMode
- type Object
- type ObjectList
- type Range
- type RedundancyType
- type UserCreds
- type VLANRange
- type Validatable
Constants ¶
This section is empty.
Variables ¶
var DHCPModes = []DHCPMode{ DHCPModeISC, DHCPModeHedgehog, }
var FabricModes = []FabricMode{ FabricModeCollapsedCore, FabricModeSpineLeaf, }
var RedundancyTypes = []RedundancyType{ RedundancyTypeNone, RedundancyTypeMCLAG, RedundancyTypeESLAG, }
Functions ¶
func CheckVLANRangesOverlap ¶
func DefaultObjectMetadata ¶
func SortVLANRanges ¶
func SortVLANRanges(ranges []VLANRange)
func ValidateObjectMetadata ¶
Types ¶
type AlloyBasicAuth ¶ added in v0.35.5
type AlloyConfig ¶ added in v0.35.5
type AlloyConfig struct { AgentScrapeIntervalSeconds uint `json:"agentScrapeIntervalSeconds,omitempty"` UnixExporterEnabled bool `json:"unixExporterEnabled,omitempty"` UnixExporterCollectors []string `json:"unixExporterCollectors,omitempty"` UnixScrapeIntervalSeconds uint `json:"unixScrapeIntervalSeconds,omitempty"` PrometheusTargets map[string]AlloyPrometheusTarget `json:"prometheusTargets,omitempty"` LokiTargets map[string]AlloyLokiTarget `json:"lokiTargets,omitempty"` }
+kubebuilder:object:generate=true
func (*AlloyConfig) DeepCopy ¶ added in v0.35.5
func (in *AlloyConfig) DeepCopy() *AlloyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlloyConfig.
func (*AlloyConfig) DeepCopyInto ¶ added in v0.35.5
func (in *AlloyConfig) DeepCopyInto(out *AlloyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AlloyConfig) Default ¶ added in v0.35.5
func (a *AlloyConfig) Default()
func (*AlloyConfig) Validate ¶ added in v0.35.5
func (a *AlloyConfig) Validate() error
type AlloyLokiTarget ¶ added in v0.35.5
type AlloyLokiTarget struct {
AlloyTarget `json:",inline"`
}
+kubebuilder:object:generate=true
func (*AlloyLokiTarget) DeepCopy ¶ added in v0.35.5
func (in *AlloyLokiTarget) DeepCopy() *AlloyLokiTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlloyLokiTarget.
func (*AlloyLokiTarget) DeepCopyInto ¶ added in v0.35.5
func (in *AlloyLokiTarget) DeepCopyInto(out *AlloyLokiTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AlloyPrometheusTarget ¶ added in v0.35.5
type AlloyPrometheusTarget struct { AlloyTarget `json:",inline"` SendIntervalSeconds uint `json:"sendIntervalSeconds,omitempty"` }
+kubebuilder:object:generate=true
func (*AlloyPrometheusTarget) DeepCopy ¶ added in v0.35.5
func (in *AlloyPrometheusTarget) DeepCopy() *AlloyPrometheusTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlloyPrometheusTarget.
func (*AlloyPrometheusTarget) DeepCopyInto ¶ added in v0.35.5
func (in *AlloyPrometheusTarget) DeepCopyInto(out *AlloyPrometheusTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AlloyTarget ¶ added in v0.35.5
type AlloyTarget struct { URL string `json:"url,omitempty"` BasicAuth AlloyBasicAuth `json:"basicAuth,omitempty"` BearerToken string `json:"bearerToken,omitempty"` Labels map[string]string `json:"labels,omitempty"` UseControlProxy bool `json:"useControlProxy,omitempty"` InsecureSkipVerify bool `json:"insecureSkipVerify,omitempty"` CAPEM string `json:"caPEM,omitempty"` CertPEM string `json:"certPEM,omitempty"` }
+kubebuilder:object:generate=true
func (*AlloyTarget) DeepCopy ¶ added in v0.35.5
func (in *AlloyTarget) DeepCopy() *AlloyTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlloyTarget.
func (*AlloyTarget) DeepCopyInto ¶ added in v0.35.5
func (in *AlloyTarget) DeepCopyInto(out *AlloyTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Defaultable ¶
type Defaultable interface {
Default()
}
type FabricConfig ¶
type FabricConfig struct { ControlVIP string `json:"controlVIP,omitempty"` APIServer string `json:"apiServer,omitempty"` AgentRepo string `json:"agentRepo,omitempty"` AgentRepoCA string `json:"agentRepoCA,omitempty"` VPCIRBVLANRanges []VLANRange `json:"vpcIRBVLANRange,omitempty"` VPCPeeringVLANRanges []VLANRange `json:"vpcPeeringVLANRange,omitempty"` // TODO rename (loopback workaround) VPCPeeringDisabled bool `json:"vpcPeeringDisabled,omitempty"` ReservedSubnets []string `json:"reservedSubnets,omitempty"` Users []UserCreds `json:"users,omitempty"` DHCPMode DHCPMode `json:"dhcpMode,omitempty"` DHCPDConfigMap string `json:"dhcpdConfigMap,omitempty"` DHCPDConfigKey string `json:"dhcpdConfigKey,omitempty"` FabricMode FabricMode `json:"fabricMode,omitempty"` BaseVPCCommunity string `json:"baseVPCCommunity,omitempty"` VPCLoopbackSubnet string `json:"vpcLoopbackSubnet,omitempty"` FabricMTU uint16 `json:"fabricMTU,omitempty"` ServerFacingMTUOffset uint16 `json:"serverFacingMTUOffset,omitempty"` ESLAGMACBase string `json:"eslagMACBase,omitempty"` ESLAGESIPrefix string `json:"eslagESIPrefix,omitempty"` AlloyRepo string `json:"alloyRepo,omitempty"` AlloyVersion string `json:"alloyVersion,omitempty"` Alloy AlloyConfig `json:"alloy,omitempty"` // contains filtered or unexported fields }
func LoadFabricConfig ¶
func LoadFabricConfig(basedir string) (*FabricConfig, error)
func (*FabricConfig) ParsedReservedSubnets ¶
func (cfg *FabricConfig) ParsedReservedSubnets() []*net.IPNet
type FabricMode ¶
type FabricMode string
const ( FabricModeCollapsedCore FabricMode = "collapsed-core" FabricModeSpineLeaf FabricMode = "spine-leaf" )
type Object ¶
type Object interface { client.Object Defaultable Validatable }
type ObjectList ¶ added in v0.34.0
type ObjectList interface { client.ObjectList GetItems() []Object }
type Range ¶
type Range[T comparable] interface { From() T To() T }
type RedundancyType ¶
type RedundancyType string
+kubebuilder:validation:Enum=mclag;eslag RedundancyType is the type of the redundancy group, could be mclag or eslag. It defines how redundancy will be configured and handled on the switch as well as which connection types will be available.
const ( RedundancyTypeNone RedundancyType = "" RedundancyTypeMCLAG RedundancyType = "mclag" RedundancyTypeESLAG RedundancyType = "eslag" )