network

package
v0.1.2 Latest Latest
Warning

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

Go to latest
Published: Dec 21, 2024 License: MPL-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BaseNetworkManager

type BaseNetworkManager struct {
	// contains filtered or unexported fields
}

BaseNetworkManager is a concrete implementation of NetworkManager

func NewBaseNetworkManager

func NewBaseNetworkManager(injector di.Injector) (*BaseNetworkManager, error)

NewNetworkManager creates a new NetworkManager

func (*BaseNetworkManager) ConfigureDNS

func (n *BaseNetworkManager) ConfigureDNS() error

ConfigureDNS sets up the DNS configuration using systemd-resolved

func (*BaseNetworkManager) ConfigureGuest

func (n *BaseNetworkManager) ConfigureGuest() error

ConfigureGuest sets up the guest VM network

func (*BaseNetworkManager) ConfigureHostRoute

func (n *BaseNetworkManager) ConfigureHostRoute() error

ConfigureHostRoute sets up the local development network for Linux

func (*BaseNetworkManager) Initialize

func (n *BaseNetworkManager) Initialize() error

Initialize the network manager

type ColimaNetworkManager

type ColimaNetworkManager struct {
	BaseNetworkManager
}

colimaNetworkManager is a concrete implementation of NetworkManager

func (*ColimaNetworkManager) ConfigureGuest

func (n *ColimaNetworkManager) ConfigureGuest() error

ConfigureGuest forwards the incoming guest traffic to the container network

type MockNetworkInterfaceProvider

type MockNetworkInterfaceProvider struct {
	InterfacesFunc     func() ([]net.Interface, error)
	InterfaceAddrsFunc func(iface net.Interface) ([]net.Addr, error)
}

MockNetworkInterfaceProvider is a struct that simulates a network interface provider for testing purposes.

func (*MockNetworkInterfaceProvider) InterfaceAddrs

func (m *MockNetworkInterfaceProvider) InterfaceAddrs(iface net.Interface) ([]net.Addr, error)

InterfaceAddrs calls the custom InterfaceAddrsFunc if provided.

func (*MockNetworkInterfaceProvider) Interfaces

func (m *MockNetworkInterfaceProvider) Interfaces() ([]net.Interface, error)

Interfaces calls the custom InterfacesFunc if provided.

type MockNetworkManager

type MockNetworkManager struct {
	NetworkManager
	InitializeFunc         func() error
	ConfigureHostRouteFunc func() error
	ConfigureGuestFunc     func() error
	ConfigureDNSFunc       func() error
}

MockNetworkManager is a struct that simulates a network manager for testing purposes.

func NewMockNetworkManager

func NewMockNetworkManager() *MockNetworkManager

NewMockNetworkManager creates a new instance of MockNetworkManager.

func (*MockNetworkManager) ConfigureDNS

func (m *MockNetworkManager) ConfigureDNS() error

ConfigureDNS calls the custom ConfigureDNSFunc if provided.

func (*MockNetworkManager) ConfigureGuest

func (m *MockNetworkManager) ConfigureGuest() error

ConfigureGuest calls the custom ConfigureGuestFunc if provided.

func (*MockNetworkManager) ConfigureHostRoute

func (m *MockNetworkManager) ConfigureHostRoute() error

ConfigureHostRoute calls the custom ConfigureHostRouteFunc if provided.

func (*MockNetworkManager) Initialize

func (m *MockNetworkManager) Initialize() error

Initialize calls the custom InitializeFunc if provided.

type NetworkInterfaceProvider

type NetworkInterfaceProvider interface {
	Interfaces() ([]net.Interface, error)
	InterfaceAddrs(iface net.Interface) ([]net.Addr, error)
}

NetworkInterfaceProvider abstracts the system's network interface operations

type NetworkManager

type NetworkManager interface {
	// Initialize the network manager
	Initialize() error
	// ConfigureHostRoute sets up the local development network
	ConfigureHostRoute() error
	// ConfigureGuest sets up the guest VM network
	ConfigureGuest() error
	// ConfigureDNS sets up the DNS configuration
	ConfigureDNS() error
}

NetworkManager handles configuring the local development network

func NewColimaNetworkManager

func NewColimaNetworkManager(injector di.Injector) NetworkManager

NewColimaNetworkManager creates a new ColimaNetworkManager

type RealNetworkInterfaceProvider

type RealNetworkInterfaceProvider struct{}

RealNetworkInterfaceProvider is the real implementation of NetworkInterfaceProvider

func (*RealNetworkInterfaceProvider) InterfaceAddrs

func (p *RealNetworkInterfaceProvider) InterfaceAddrs(iface net.Interface) ([]net.Addr, error)

InterfaceAddrs returns the addresses of a network interface

func (*RealNetworkInterfaceProvider) Interfaces

func (p *RealNetworkInterfaceProvider) Interfaces() ([]net.Interface, error)

Interfaces returns the system's network interfaces

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL