etcd

package
v0.25.1 Latest Latest
Warning

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

Go to latest
Published: Apr 12, 2024 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewLocalManager

func NewLocalManager(ctx context.Context, config *EtcdConfig, prevSubnet ip.IP4Net, prevIPv6Subnet ip.IP6Net, subnetLeaseRenewMargin int) (subnet.Manager, error)

func NewMockManager

func NewMockManager(registry *MockSubnetRegistry) subnet.Manager

func NewMockManagerWithSubnet

func NewMockManagerWithSubnet(registry *MockSubnetRegistry, sn ip.IP4Net, sn6 ip.IP6Net) subnet.Manager

Types

type EtcdConfig

type EtcdConfig struct {
	Endpoints []string
	Keyfile   string
	Certfile  string
	CAFile    string
	Prefix    string
	Username  string
	Password  string
}

type LocalManager

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

func (*LocalManager) AcquireLease

func (m *LocalManager) AcquireLease(ctx context.Context, attrs *lease.LeaseAttrs) (*lease.Lease, error)

func (*LocalManager) CompleteLease

func (m *LocalManager) CompleteLease(ctx context.Context, myLease *lease.Lease, wg *sync.WaitGroup) error

CompleteLease monitor lease

func (*LocalManager) GetNetworkConfig

func (m *LocalManager) GetNetworkConfig(ctx context.Context) (*subnet.Config, error)

func (*LocalManager) GetStoredMacAddress added in v0.24.1

func (m *LocalManager) GetStoredMacAddress(ctx context.Context) string

func (*LocalManager) HandleSubnetFile

func (m *LocalManager) HandleSubnetFile(path string, config *subnet.Config, ipMasq bool, sn ip.IP4Net, ipv6sn ip.IP6Net, mtu int) error

For etcd subnet manager, the file never changes so we just write it once at startup

func (*LocalManager) Name

func (m *LocalManager) Name() string

func (*LocalManager) RenewLease

func (m *LocalManager) RenewLease(ctx context.Context, lease *lease.Lease) error

func (*LocalManager) WatchLease

func (m *LocalManager) WatchLease(ctx context.Context, sn ip.IP4Net, sn6 ip.IP6Net, receiver chan []lease.LeaseWatchResult) error

func (*LocalManager) WatchLeases

func (m *LocalManager) WatchLeases(ctx context.Context, receiver chan []lease.LeaseWatchResult) error

type MockSubnetRegistry

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

func NewMockRegistry

func NewMockRegistry(config string, initialSubnets []lease.Lease) *MockSubnetRegistry

type Registry

type Registry interface {
	// contains filtered or unexported methods
}

Jump to

Keyboard shortcuts

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