Documentation ¶
Overview ¶
Package siderolink contains SideroLink-related resources.
Index ¶
Constants ¶
const ConfigID = resource.ID("siderolink")
ConfigID the singleton config resource ID.
const ConfigType = resource.Type("SiderolinkConfigs.siderolink.talos.dev")
ConfigType is type of Config resource.
const TunnelID = resource.ID("siderolink-tunnel")
TunnelID the singleton tunnel resource ID.
const TunnelType = resource.Type("SiderolinkTunnels.siderolink.talos.dev")
TunnelType is type of Tunnel resource.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config = typed.Resource[ConfigSpec, ConfigExtension]
Config resource holds Siderolink configuration.
type ConfigExtension ¶
type ConfigExtension struct{}
ConfigExtension provides auxiliary methods for Config.
func (ConfigExtension) ResourceDefinition ¶
func (ConfigExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements typed.Extension interface.
type ConfigSpec ¶
type ConfigSpec struct { APIEndpoint string `yaml:"apiEndpoint" protobuf:"1"` Host string `yaml:"host" protobuf:"2"` JoinToken string `yaml:"joinToken" protobuf:"3"` Insecure bool `yaml:"insecure" protobuf:"4"` Tunnel bool `yaml:"tunnel" protobuf:"5"` }
ConfigSpec describes Siderolink configuration.
func (ConfigSpec) DeepCopy ¶
func (o ConfigSpec) DeepCopy() ConfigSpec
DeepCopy generates a deep copy of ConfigSpec.
type Tunnel ¶ added in v1.7.0
type Tunnel = typed.Resource[TunnelSpec, TunnelExtension]
Tunnel resource holds Siderolink GRPC Tunnel configuration.
type TunnelExtension ¶ added in v1.7.0
type TunnelExtension struct{}
TunnelExtension provides auxiliary methods for Tunnel.
func (TunnelExtension) ResourceDefinition ¶ added in v1.7.0
func (TunnelExtension) ResourceDefinition() meta.ResourceDefinitionSpec
ResourceDefinition implements typed.Extension interface.
type TunnelSpec ¶ added in v1.7.0
type TunnelSpec struct { // APIEndpoint is the Siderolink WireGuard over GRPC endpoint. APIEndpoint string `yaml:"apiEndpoint" protobuf:"1"` // LinkName is the name to use for WireGuard tunnel. LinkName string `yaml:"linkName" protobuf:"2"` // MTU is the maximum transmission unit for the tunnel. MTU int `yaml:"mtu" protobuf:"3"` // NodeAddress is the virtual address of our node. It's used to identify our node in the WireGuard GRPC streamer. // It's not the address of the actual WireGuard interface. NodeAddress netip.AddrPort `yaml:"nodeAddress" protobuf:"4"` }
TunnelSpec describes Siderolink GRPC Tunnel configuration.
func (TunnelSpec) DeepCopy ¶ added in v1.7.0
func (o TunnelSpec) DeepCopy() TunnelSpec
DeepCopy generates a deep copy of TunnelSpec.