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.