Documentation
¶
Index ¶
- type DefaultProvider
- func (p *DefaultProvider) List(ctx context.Context, nodeClass *v1alpha1.ECSNodeClass) ([]*vpc.DescribeVSwitchesResponseBodyVSwitchesVSwitch, error)
- func (p *DefaultProvider) LivenessProbe(_ *http.Request) error
- func (p *DefaultProvider) UpdateInflightIPs(createAutoProvisioningGroupRequest *ecs.CreateAutoProvisioningGroupRequest, ...)
- func (p *DefaultProvider) ZonalVSwitchesForLaunch(ctx context.Context, nodeClass *v1alpha1.ECSNodeClass, ...) (map[string]*VSwitch, error)
- type Provider
- type VSwitch
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DefaultProvider ¶
func NewDefaultProvider ¶
func NewDefaultProvider(region string, vpcapi *vpc.Client, cache *cache.Cache, availableIPAddressCache *cache.Cache) *DefaultProvider
func (*DefaultProvider) List ¶
func (p *DefaultProvider) List(ctx context.Context, nodeClass *v1alpha1.ECSNodeClass) ([]*vpc.DescribeVSwitchesResponseBodyVSwitchesVSwitch, error)
func (*DefaultProvider) LivenessProbe ¶
func (p *DefaultProvider) LivenessProbe(_ *http.Request) error
func (*DefaultProvider) UpdateInflightIPs ¶
func (p *DefaultProvider) UpdateInflightIPs(createAutoProvisioningGroupRequest *ecs.CreateAutoProvisioningGroupRequest, createAutoProvisioningGroupResponse *ecs.DescribeInstancesResponseBodyInstances, instanceTypes []*cloudprovider.InstanceType, vSwitches []*VSwitch, capacityType string)
UpdateInflightIPs is used to refresh the in-memory IP usage by adding back unused IPs after a CreateAutoProvisioningGroup response is returned
func (*DefaultProvider) ZonalVSwitchesForLaunch ¶
func (p *DefaultProvider) ZonalVSwitchesForLaunch(ctx context.Context, nodeClass *v1alpha1.ECSNodeClass, instanceTypes []*cloudprovider.InstanceType, capacityType string) (map[string]*VSwitch, error)
ZonalVSwitchesForLaunch returns a mapping of zone to the vSwitch with the most available IP addresses and deducts the passed ips from the available count
type Provider ¶
type Provider interface {
LivenessProbe(*http.Request) error
List(context.Context, *v1alpha1.ECSNodeClass) ([]*vpc.DescribeVSwitchesResponseBodyVSwitchesVSwitch, error)
ZonalVSwitchesForLaunch(context.Context, *v1alpha1.ECSNodeClass, []*cloudprovider.InstanceType, string) (map[string]*VSwitch, error)
UpdateInflightIPs(*ecs.CreateAutoProvisioningGroupRequest, *ecs.DescribeInstancesResponseBodyInstances, []*cloudprovider.InstanceType, []*VSwitch, string)
}
Click to show internal directories.
Click to hide internal directories.