Documentation ¶
Index ¶
- Constants
- func IsInvalidConfig(err error) bool
- type Checker
- type ClusterChecker
- type ClusterCheckerConfig
- type ClusterPersister
- type ClusterPersisterConfig
- type Collector
- type Config
- type MachineDeploymentChecker
- type MachineDeploymentCheckerConfig
- type MachineDeploymentPersister
- type MachineDeploymentPersisterConfig
- type Persister
- type Resource
- type SubnetCollector
- type SubnetCollectorConfig
- type TestChecker
- type TestCollector
- type TestPersister
Constants ¶
const (
Name = "ipam"
)
Variables ¶
This section is empty.
Functions ¶
func IsInvalidConfig ¶
IsInvalidConfig asserts invalidConfigError.
Types ¶
type Checker ¶
Checker determines whether a subnet has to be allocated. This decision is being made based on the status of the Kubernetes runtime object defined by namespace and name.
type ClusterChecker ¶
type ClusterChecker struct {
// contains filtered or unexported fields
}
func NewClusterChecker ¶
func NewClusterChecker(config ClusterCheckerConfig) (*ClusterChecker, error)
type ClusterCheckerConfig ¶
type ClusterCheckerConfig struct { G8sClient versioned.Interface Logger micrologger.Logger }
type ClusterPersister ¶
type ClusterPersister struct {
// contains filtered or unexported fields
}
func NewClusterPersister ¶
func NewClusterPersister(config ClusterPersisterConfig) (*ClusterPersister, error)
type ClusterPersisterConfig ¶
type ClusterPersisterConfig struct { G8sClient versioned.Interface Logger micrologger.Logger }
type Collector ¶
Collector implementation must return all networks that are allocated on any given moment. Failing to do that will result in overlapping allocations.
type MachineDeploymentChecker ¶
type MachineDeploymentChecker struct {
// contains filtered or unexported fields
}
func NewMachineDeploymentChecker ¶
func NewMachineDeploymentChecker(config MachineDeploymentCheckerConfig) (*MachineDeploymentChecker, error)
type MachineDeploymentCheckerConfig ¶
type MachineDeploymentCheckerConfig struct { G8sClient versioned.Interface Logger micrologger.Logger }
type MachineDeploymentPersister ¶
type MachineDeploymentPersister struct {
// contains filtered or unexported fields
}
func NewMachineDeploymentPersister ¶
func NewMachineDeploymentPersister(config MachineDeploymentPersisterConfig) (*MachineDeploymentPersister, error)
type MachineDeploymentPersisterConfig ¶
type MachineDeploymentPersisterConfig struct { G8sClient versioned.Interface Logger micrologger.Logger }
type Persister ¶
type Persister interface {
Persist(ctx context.Context, subnet net.IPNet, namespace string, name string) error
}
Persister must mutate shared persistent state so that on successful execution persisted networks are visible by Collector implementations.
type Resource ¶
type Resource struct {
// contains filtered or unexported fields
}
func (*Resource) EnsureCreated ¶
EnsureCreated allocates tenant cluster network segments. It gathers existing subnets from existing system resources like VPCs and Cluster CRs.
func (*Resource) EnsureDeleted ¶
EnsureDeleted is a NOP for IPAM resource as allocated subnet will get released when the guest cluster VPC and AWSConfig CR is deleted.
type SubnetCollector ¶
type SubnetCollector struct {
// contains filtered or unexported fields
}
func NewSubnetCollector ¶
func NewSubnetCollector(config SubnetCollectorConfig) (*SubnetCollector, error)
type SubnetCollectorConfig ¶
type TestChecker ¶
type TestChecker struct {
// contains filtered or unexported fields
}
func NewTestChecker ¶
func NewTestChecker(proceed bool) *TestChecker
type TestCollector ¶
type TestCollector struct {
// contains filtered or unexported fields
}
func NewTestCollector ¶
func NewTestCollector(subnets []net.IPNet) *TestCollector
type TestPersister ¶
type TestPersister struct {
// contains filtered or unexported fields
}
func NewTestPersister ¶
func NewTestPersister(subnet net.IPNet) *TestPersister