Documentation ¶
Overview ¶
Package v1alpha2 contains API Schema definitions for the agent v1alpha2 API group. This is the internal API group for the switch and control node agents. Not intended to be modified by the user. +kubebuilder:object:generate=true +groupName=agent.githedgehog.com
Index ¶
- Constants
- Variables
- type Agent
- type AgentList
- type AgentSpec
- type AgentSpecConfig
- type AgentSpecConfigCollapsedCore
- type AgentSpecConfigSpineLeaf
- type AgentStatus
- type AgentVersion
- type ApplyStatusUpdate
- type Catalog
- type CatalogList
- type CatalogSpec
- type CatalogStatus
- type ControlAgent
- type ControlAgentList
- type ControlAgentSpec
- type ControlAgentStatus
- type NOSInfo
- type UserCreds
- type VirtualEdgeConfig
Constants ¶
const (
VirtualEdgeConfigAnnotation = "virtual-edge.hhfab.fabric.githedgehog.com/external-cfg"
)
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "agent.githedgehog.com", Version: "v1alpha2"} // 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 Agent ¶
type Agent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // Spec is the desired state of the Agent Spec AgentSpec `json:"spec,omitempty"` // Status is the observed state of the Agent Status AgentStatus `json:"status,omitempty"` }
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:categories=hedgehog;fabric,shortName=ag +kubebuilder:printcolumn:name="Role",type=string,JSONPath=`.spec.role`,priority=0 +kubebuilder:printcolumn:name="Descr",type=string,JSONPath=`.spec.description`,priority=0 +kubebuilder:printcolumn:name="HWSKU",type=string,JSONPath=`.status.nosInfo.hwskuVersion`,priority=1 +kubebuilder:printcolumn:name="ASIC",type=string,JSONPath=`.status.nosInfo.asicVersion`,priority=1 +kubebuilder:printcolumn:name="Heartbeat",type=date,JSONPath=`.status.lastHeartbeat`,priority=1 +kubebuilder:printcolumn:name="Applied",type=date,JSONPath=`.status.lastAppliedTime`,priority=0 +kubebuilder:printcolumn:name="AppliedG",type=string,JSONPath=`.status.lastAppliedGen`,priority=0 +kubebuilder:printcolumn:name="CurrentG",type=string,JSONPath=`.metadata.generation`,priority=0 +kubebuilder:printcolumn:name="Version",type=string,JSONPath=`.status.version`,priority=0 +kubebuilder:printcolumn:name="Software",type=string,JSONPath=`.status.nosInfo.softwareVersion`,priority=1 +kubebuilder:printcolumn:name="Attempt",type=date,JSONPath=`.status.lastAttemptTime`,priority=2 +kubebuilder:printcolumn:name="AttemptG",type=string,JSONPath=`.status.lastAttemptGen`,priority=2 +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`,priority=10 Agent is an internal API object used by the controller to pass all relevant information to the agent running on a specific switch in order to fully configure it and manage its lifecycle. It is not intended to be used directly by users. Spec of the object isn't user-editable, it is managed by the controller. Status of the object is updated by the agent and is used by the controller to track the state of the agent and the switch it is running on. Name of the Agent object is the same as the name of the switch it is running on and it's created in the same namespace as the Switch object.
func (*Agent) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Agent.
func (*Agent) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Agent) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Agent) IsCollapsedCore ¶
func (*Agent) IsFirstInRedundancyGroup ¶
func (*Agent) IsSpineLeaf ¶
type AgentList ¶
type AgentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Agent `json:"items"` }
AgentList contains a list of Agent
func (*AgentList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentList.
func (*AgentList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AgentList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AgentSpec ¶
type AgentSpec struct { Role wiringapi.SwitchRole `json:"role,omitempty"` Description string `json:"description,omitempty"` Config AgentSpecConfig `json:"config,omitempty"` Version AgentVersion `json:"version,omitempty"` Users []UserCreds `json:"users,omitempty"` Switch wiringapi.SwitchSpec `json:"switch,omitempty"` Switches map[string]wiringapi.SwitchSpec `json:"switches,omitempty"` RedundancyGroupPeers []string `json:"redundancyGroupPeers,omitempty"` Connections map[string]wiringapi.ConnectionSpec `json:"connections,omitempty"` VPCs map[string]vpcapi.VPCSpec `json:"vpcs,omitempty"` VPCAttachments map[string]vpcapi.VPCAttachmentSpec `json:"vpcAttachments,omitempty"` VPCPeerings map[string]vpcapi.VPCPeeringSpec `json:"vpcPeers,omitempty"` IPv4Namespaces map[string]vpcapi.IPv4NamespaceSpec `json:"ipv4Namespaces,omitempty"` VLANNamespaces map[string]wiringapi.VLANNamespaceSpec `json:"vlanNamespaces,omitempty"` Externals map[string]vpcapi.ExternalSpec `json:"externals,omitempty"` ExternalAttachments map[string]vpcapi.ExternalAttachmentSpec `json:"externalAttachments,omitempty"` ExternalPeerings map[string]vpcapi.ExternalPeeringSpec `json:"externalPeerings,omitempty"` ConfiguredVPCSubnets map[string]bool `json:"configuredVPCSubnets,omitempty"` AttachedVPCs map[string]bool `json:"attachedVPCs,omitempty"` Reinstall string `json:"reinstall,omitempty"` // set to InstallID to reinstall NOS Reboot string `json:"reboot,omitempty"` // set to RunID to reboot PowerReset string `json:"powerReset,omitempty"` // set to RunID to power reset Catalog CatalogSpec `json:"catalog,omitempty"` // TODO impl StatusUpdates []ApplyStatusUpdate `json:"statusUpdates,omitempty"` }
AgentSpec defines the desired state of the Agent and includes all relevant information required to fully configure the switch and manage its lifecycle. It is not intended to be used directly by users.
func (*AgentSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentSpec.
func (*AgentSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AgentSpecConfig ¶
type AgentSpecConfig struct { ControlVIP string `json:"controlVIP,omitempty"` VPCPeeringDisabled bool `json:"vpcPeeringDisabled,omitempty"` CollapsedCore *AgentSpecConfigCollapsedCore `json:"collapsedCore,omitempty"` SpineLeaf *AgentSpecConfigSpineLeaf `json:"spineLeaf,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"` }
func (*AgentSpecConfig) DeepCopy ¶
func (in *AgentSpecConfig) DeepCopy() *AgentSpecConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentSpecConfig.
func (*AgentSpecConfig) DeepCopyInto ¶
func (in *AgentSpecConfig) DeepCopyInto(out *AgentSpecConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AgentSpecConfigCollapsedCore ¶
type AgentSpecConfigCollapsedCore struct{}
func (*AgentSpecConfigCollapsedCore) DeepCopy ¶
func (in *AgentSpecConfigCollapsedCore) DeepCopy() *AgentSpecConfigCollapsedCore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentSpecConfigCollapsedCore.
func (*AgentSpecConfigCollapsedCore) DeepCopyInto ¶
func (in *AgentSpecConfigCollapsedCore) DeepCopyInto(out *AgentSpecConfigCollapsedCore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AgentSpecConfigSpineLeaf ¶
type AgentSpecConfigSpineLeaf struct{}
func (*AgentSpecConfigSpineLeaf) DeepCopy ¶
func (in *AgentSpecConfigSpineLeaf) DeepCopy() *AgentSpecConfigSpineLeaf
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentSpecConfigSpineLeaf.
func (*AgentSpecConfigSpineLeaf) DeepCopyInto ¶
func (in *AgentSpecConfigSpineLeaf) DeepCopyInto(out *AgentSpecConfigSpineLeaf)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AgentStatus ¶
type AgentStatus struct { // Current running agent version Version string `json:"version,omitempty"` // ID of the agent installation, used to track NOS re-installs InstallID string `json:"installID,omitempty"` // ID of the agent run, used to track NOS reboots RunID string `json:"runID,omitempty"` // Time of the last heartbeat from the agent LastHeartbeat metav1.Time `json:"lastHeartbeat,omitempty"` // Time of the last attempt to apply configuration LastAttemptTime metav1.Time `json:"lastAttemptTime,omitempty"` // Generation of the last attempt to apply configuration LastAttemptGen int64 `json:"lastAttemptGen,omitempty"` // Time of the last successful configuration application LastAppliedTime metav1.Time `json:"lastAppliedTime,omitempty"` // Generation of the last successful configuration application LastAppliedGen int64 `json:"lastAppliedGen,omitempty"` // Information about the switch and NOS NOSInfo NOSInfo `json:"nosInfo,omitempty"` // Status updates from the agent StatusUpdates []ApplyStatusUpdate `json:"statusUpdates,omitempty"` // Conditions of the agent, includes readiness marker for use with kubectl wait Conditions []metav1.Condition `json:"conditions"` }
AgentStatus defines the observed state of the agent running on a specific switch and includes information about the switch itself as well as the state of the agent and applied configuration.
func (*AgentStatus) DeepCopy ¶
func (in *AgentStatus) DeepCopy() *AgentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentStatus.
func (*AgentStatus) DeepCopyInto ¶
func (in *AgentStatus) DeepCopyInto(out *AgentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AgentVersion ¶
type AgentVersion struct { Default string `json:"default,omitempty"` Override string `json:"override,omitempty"` Repo string `json:"repo,omitempty"` CA string `json:"ca,omitempty"` }
func (*AgentVersion) DeepCopy ¶
func (in *AgentVersion) DeepCopy() *AgentVersion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentVersion.
func (*AgentVersion) DeepCopyInto ¶
func (in *AgentVersion) DeepCopyInto(out *AgentVersion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplyStatusUpdate ¶
type ApplyStatusUpdate struct { APIVersion string `json:"apiVersion,omitempty"` Kind string `json:"kind,omitempty"` Name string `json:"name,omitempty"` Namespace string `json:"namespace,omitempty"` Generation int64 `json:"generation,omitempty"` }
func (*ApplyStatusUpdate) DeepCopy ¶
func (in *ApplyStatusUpdate) DeepCopy() *ApplyStatusUpdate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplyStatusUpdate.
func (*ApplyStatusUpdate) DeepCopyInto ¶
func (in *ApplyStatusUpdate) DeepCopyInto(out *ApplyStatusUpdate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Catalog ¶
type Catalog struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CatalogSpec `json:"spec,omitempty"` Status CatalogStatus `json:"status,omitempty"` }
Catalog is the Schema for the catalogs API
func (*Catalog) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Catalog.
func (*Catalog) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Catalog) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CatalogList ¶
type CatalogList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Catalog `json:"items"` }
CatalogList contains a list of Catalog
func (*CatalogList) DeepCopy ¶
func (in *CatalogList) DeepCopy() *CatalogList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CatalogList.
func (*CatalogList) DeepCopyInto ¶
func (in *CatalogList) DeepCopyInto(out *CatalogList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CatalogList) DeepCopyObject ¶
func (in *CatalogList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CatalogSpec ¶
type CatalogSpec struct { // ConnectionSystemIDs stores connection name -> ID, globally unique for the fabric ConnectionIDs map[string]uint32 `json:"connectionIDs,omitempty"` // VPCVNIs stores VPC name -> VPC VNI, globally unique for the fabric VPCVNIs map[string]uint32 `json:"vpcVNIs,omitempty"` // VPCSubnetVNIs stores VPC name -> subnet name -> VPC Subnet VNI, globally unique for the fabric VPCSubnetVNIs map[string]map[string]uint32 `json:"vpcSubnetVNIs,omitempty"` // IRBVLANs stores VPC name -> IRB VLAN ID, unique per redundancy group (or switch) IRBVLANs map[string]uint16 `json:"irbVLANs,omitempty"` // PortChannelIDs stores Connection name -> PortChannel ID, unique per redundancy group (or switch) PortChannelIDs map[string]uint16 `json:"portChannelIDs,omitempty"` // LoopbackWorkaroundLinks stores loopback workaround "request" name (vpc@<vpc-peering> or ext@<external-peering>) -> loopback link name (<port1--port2>), unique per switch LooopbackWorkaroundLinks map[string]string `json:"loopbackWorkaroundLinks,omitempty"` // LoopbackWorkaroundVLANs stores loopback workaround "request" -> VLAN ID, unique per switch LoopbackWorkaroundVLANs map[string]uint16 `json:"loopbackWorkaroundVLANs,omitempty"` // ExternalIDs stores external name -> ID, unique per switch ExternalIDs map[string]uint16 `json:"externalIDs,omitempty"` // SubnetIDs stores subnet -> ID, unique per switch SubnetIDs map[string]uint32 `json:"subnetIDs,omitempty"` }
CatalogSpec defines the desired state of Catalog
func (*CatalogSpec) DeepCopy ¶
func (in *CatalogSpec) DeepCopy() *CatalogSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CatalogSpec.
func (*CatalogSpec) DeepCopyInto ¶
func (in *CatalogSpec) DeepCopyInto(out *CatalogSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CatalogSpec) GetVPCSubnetVNI ¶
func (c *CatalogSpec) GetVPCSubnetVNI(vpc, subnet string) (uint32, bool)
type CatalogStatus ¶
type CatalogStatus struct{}
CatalogStatus defines the observed state of Catalog
func (*CatalogStatus) DeepCopy ¶
func (in *CatalogStatus) DeepCopy() *CatalogStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CatalogStatus.
func (*CatalogStatus) DeepCopyInto ¶
func (in *CatalogStatus) DeepCopyInto(out *CatalogStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlAgent ¶
type ControlAgent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ControlAgentSpec `json:"spec,omitempty"` Status ControlAgentStatus `json:"status,omitempty"` }
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:categories=hedgehog;fabric,shortName=cag +kubebuilder:printcolumn:name="Heartbeat",type=date,JSONPath=`.status.lastHeartbeat`,priority=0 +kubebuilder:printcolumn:name="Applied",type=date,JSONPath=`.status.lastAppliedTime`,priority=0 +kubebuilder:printcolumn:name="AppliedG",type=string,JSONPath=`.status.lastAppliedGen`,priority=0 +kubebuilder:printcolumn:name="CurrentG",type=string,JSONPath=`.metadata.generation`,priority=0 +kubebuilder:printcolumn:name="Version",type=string,JSONPath=`.status.version`,priority=0 +kubebuilder:printcolumn:name="Attempt",type=date,JSONPath=`.status.lastAttemptTime`,priority=2 +kubebuilder:printcolumn:name="AttemptG",type=string,JSONPath=`.status.lastAttemptGen`,priority=2 +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`,priority=10 ControlAgent is the Schema for the controlagents API
func (*ControlAgent) DeepCopy ¶
func (in *ControlAgent) DeepCopy() *ControlAgent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlAgent.
func (*ControlAgent) DeepCopyInto ¶
func (in *ControlAgent) DeepCopyInto(out *ControlAgent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControlAgent) DeepCopyObject ¶
func (in *ControlAgent) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ControlAgentList ¶
type ControlAgentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ControlAgent `json:"items"` }
ControlAgentList contains a list of ControlAgent
func (*ControlAgentList) DeepCopy ¶
func (in *ControlAgentList) DeepCopy() *ControlAgentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlAgentList.
func (*ControlAgentList) DeepCopyInto ¶
func (in *ControlAgentList) DeepCopyInto(out *ControlAgentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControlAgentList) DeepCopyObject ¶
func (in *ControlAgentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ControlAgentSpec ¶
type ControlAgentSpec struct { ControlVIP string `json:"controlVIP,omitempty"` Version AgentVersion `json:"version,omitempty"` Networkd map[string]string `json:"networkd,omitempty"` Hosts map[string]string `json:"hosts,omitempty"` }
ControlAgentSpec defines the desired state of the ControlAgent and includes all relevant information to configure the control node. Not intended to be modified by the user.
func (*ControlAgentSpec) DeepCopy ¶
func (in *ControlAgentSpec) DeepCopy() *ControlAgentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlAgentSpec.
func (*ControlAgentSpec) DeepCopyInto ¶
func (in *ControlAgentSpec) DeepCopyInto(out *ControlAgentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlAgentStatus ¶
type ControlAgentStatus struct { Conditions []metav1.Condition `json:"conditions"` Version string `json:"version,omitempty"` LastHeartbeat metav1.Time `json:"lastHeartbeat,omitempty"` LastAttemptTime metav1.Time `json:"lastAttemptTime,omitempty"` LastAttemptGen int64 `json:"lastAttemptGen,omitempty"` LastAppliedTime metav1.Time `json:"lastAppliedTime,omitempty"` LastAppliedGen int64 `json:"lastAppliedGen,omitempty"` }
ControlAgentStatus defines the observed state of ControlAgent
func (*ControlAgentStatus) DeepCopy ¶
func (in *ControlAgentStatus) DeepCopy() *ControlAgentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlAgentStatus.
func (*ControlAgentStatus) DeepCopyInto ¶
func (in *ControlAgentStatus) DeepCopyInto(out *ControlAgentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NOSInfo ¶
type NOSInfo struct { // ASIC name, such as "broadcom" or "vs" AsicVersion string `json:"asicVersion,omitempty"` // NOS build commit BuildCommit string `json:"buildCommit,omitempty"` // NOS build date BuildDate string `json:"buildDate,omitempty"` // NOS build user BuiltBy string `json:"builtBy,omitempty"` // NOS config DB version, such as "version_4_2_1" ConfigDbVersion string `json:"configDbVersion,omitempty"` // Distribution version, such as "Debian 10.13" DistributionVersion string `json:"distributionVersion,omitempty"` // Hardware version, such as "X01" HardwareVersion string `json:"hardwareVersion,omitempty"` // Hwsku version, such as "DellEMC-S5248f-P-25G-DPB" HwskuVersion string `json:"hwskuVersion,omitempty"` // Kernel version, such as "5.10.0-21-amd64" KernelVersion string `json:"kernelVersion,omitempty"` // Manufacturer name, such as "Dell EMC" MfgName string `json:"mfgName,omitempty"` // Platform name, such as "x86_64-dellemc_s5248f_c3538-r0" PlatformName string `json:"platformName,omitempty"` // NOS product description, such as "Enterprise SONiC Distribution by Broadcom - Enterprise Base package" ProductDescription string `json:"productDescription,omitempty"` // NOS product version, empty for Broadcom SONiC ProductVersion string `json:"productVersion,omitempty"` // Switch serial number SerialNumber string `json:"serialNumber,omitempty"` // NOS software version, such as "4.2.0-Enterprise_Base" SoftwareVersion string `json:"softwareVersion,omitempty"` // Switch uptime, such as "21:21:27 up 1 day, 23:26, 0 users, load average: 1.92, 1.99, 2.00 " UpTime string `json:"upTime,omitempty"` }
NOSInfo contains information about the switch and NOS received from the switch itself by the agent
func (*NOSInfo) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NOSInfo.
func (*NOSInfo) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UserCreds ¶
type UserCreds struct { Name string `json:"name,omitempty"` Password string `json:"password,omitempty"` Role string `json:"role,omitempty"` SSHKeys []string `json:"sshKeys,omitempty"` }
func (*UserCreds) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserCreds.
func (*UserCreds) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VirtualEdgeConfig ¶
type VirtualEdgeConfig struct { ASN string `json:"ASN"` VRF string `json:"VRF"` CommunityIn string `json:"CommunityIn"` CommunityOut string `json:"CommunityOut"` NeighborIP string `json:"NeighborIP"` IfName string `json:"ifName"` IfVlan string `json:"ifVlan"` IfIP string `json:"ifIP"` }
+kubebuilder:skip
func (*VirtualEdgeConfig) DeepCopy ¶
func (in *VirtualEdgeConfig) DeepCopy() *VirtualEdgeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualEdgeConfig.
func (*VirtualEdgeConfig) DeepCopyInto ¶
func (in *VirtualEdgeConfig) DeepCopyInto(out *VirtualEdgeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.