Documentation ¶
Overview ¶
Package controllers contains stripped versions of Talos controllers.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FindLink ¶
func FindLink(links []rtnetlink.LinkMessage, name string) *rtnetlink.LinkMessage
FindLink looks up the link in the list of the links from rtnetlink.
func WireguardSpec ¶
func WireguardSpec(r *network.WireguardSpec) wireguardSpec
WireguardSpec adapter provides encoding/decoding to netlink structures.
Types ¶
type APIDController ¶
APIDController interacts with SideroLink API and brings up the SideroLink Wireguard interface.
func (*APIDController) Inputs ¶
func (ctrl *APIDController) Inputs() []controller.Input
Inputs implements controller.Controller interface.
func (*APIDController) Name ¶
func (ctrl *APIDController) Name() string
Name implements controller.Controller interface.
func (*APIDController) Outputs ¶
func (ctrl *APIDController) Outputs() []controller.Output
Outputs implements controller.Controller interface.
func (*APIDController) Run ¶
func (ctrl *APIDController) Run(ctx context.Context, r controller.Runtime, logger *zap.Logger) error
Run implements controller.Controller interface.
type AddressSpecController ¶
type AddressSpecController struct{}
AddressSpecController applies network.AddressSpec to the actual interfaces.
func (*AddressSpecController) Inputs ¶
func (ctrl *AddressSpecController) Inputs() []controller.Input
Inputs implements controller.Controller interface.
func (*AddressSpecController) Name ¶
func (ctrl *AddressSpecController) Name() string
Name implements controller.Controller interface.
func (*AddressSpecController) Outputs ¶
func (ctrl *AddressSpecController) Outputs() []controller.Output
Outputs implements controller.Controller interface.
func (*AddressSpecController) Run ¶
func (ctrl *AddressSpecController) Run(ctx context.Context, r controller.Runtime, logger *zap.Logger) error
Run implements controller.Controller interface.
type LinkSpecController ¶
type LinkSpecController struct{}
LinkSpecController applies network.LinkSpec to the actual interfaces.
func (*LinkSpecController) Inputs ¶
func (ctrl *LinkSpecController) Inputs() []controller.Input
Inputs implements controller.Controller interface.
func (*LinkSpecController) Name ¶
func (ctrl *LinkSpecController) Name() string
Name implements controller.Controller interface.
func (*LinkSpecController) Outputs ¶
func (ctrl *LinkSpecController) Outputs() []controller.Output
Outputs implements controller.Controller interface.
func (*LinkSpecController) Run ¶
func (ctrl *LinkSpecController) Run(ctx context.Context, r controller.Runtime, logger *zap.Logger) error
Run implements controller.Controller interface.
type ManagerController ¶
type ManagerController struct { MachineIndex int // contains filtered or unexported fields }
ManagerController interacts with SideroLink API and brings up the SideroLink Wireguard interface.
func (*ManagerController) Inputs ¶
func (ctrl *ManagerController) Inputs() []controller.Input
Inputs implements controller.Controller interface.
func (*ManagerController) Name ¶
func (ctrl *ManagerController) Name() string
Name implements controller.Controller interface.
func (*ManagerController) Outputs ¶
func (ctrl *ManagerController) Outputs() []controller.Output
Outputs implements controller.Controller interface.
func (*ManagerController) Run ¶
func (ctrl *ManagerController) Run(ctx context.Context, r controller.Runtime, logger *zap.Logger) error
Run implements controller.Controller interface.