@@ -182,18 +182,12 @@ func (p *DefaultProvider) List(ctx context.Context, kc *v1alpha1.KubeletConfigur
182
182
183
183
result := lo .Map (p .instanceTypesInfo , func (i * ecsclient.DescribeInstanceTypesResponseBodyInstanceTypesInstanceType , _ int ) * cloudprovider.InstanceType {
184
184
zoneData := lo .Map (allZones .UnsortedList (), func (zoneID string , _ int ) ZoneData {
185
+ ret := ZoneData {ID : zoneID , Available : true }
185
186
if ! p .instanceTypesOfferings [lo .FromPtr (i .InstanceTypeId )].Has (zoneID ) || ! vSwitchsZones .Has (zoneID ) {
186
- return ZoneData {
187
- ID : zoneID ,
188
- Available : false ,
189
- SpotAvailable : false ,
190
- }
191
- }
192
- return ZoneData {
193
- ID : zoneID ,
194
- Available : true ,
195
- SpotAvailable : p .spotInstanceTypesOfferings [lo .FromPtr (i .InstanceTypeId )].Has (zoneID ),
187
+ ret .Available = false
196
188
}
189
+ ret .SpotAvailable = p .spotInstanceTypesOfferings [lo .FromPtr (i .InstanceTypeId )].Has (zoneID )
190
+ return ret
197
191
})
198
192
199
193
// !!! Important !!!
@@ -402,10 +396,6 @@ func getAllInstanceTypes(client *ecsclient.Client) ([]*ecsclient.DescribeInstanc
402
396
func (p * DefaultProvider ) createOfferings (_ context.Context , instanceType string , zones []ZoneData ) []cloudprovider.Offering {
403
397
var offerings []cloudprovider.Offering
404
398
for _ , zone := range zones {
405
- if ! zone .Available {
406
- continue
407
- }
408
-
409
399
odPrice , odOK := p .pricingProvider .OnDemandPrice (instanceType )
410
400
spotPrice , spotOK := p .pricingProvider .SpotPrice (instanceType , zone .ID )
411
401
@@ -416,9 +406,9 @@ func (p *DefaultProvider) createOfferings(_ context.Context, instanceType string
416
406
offerings = append (offerings , p .createOffering (zone .ID , karpv1 .CapacityTypeOnDemand , odPrice , offeringAvailable ))
417
407
}
418
408
419
- if spotOK && zone . SpotAvailable {
409
+ if spotOK {
420
410
isUnavailable := p .unavailableOfferings .IsUnavailable (instanceType , zone .ID , karpv1 .CapacityTypeSpot )
421
- offeringAvailable := ! isUnavailable && zone .Available
411
+ offeringAvailable := ! isUnavailable && zone .SpotAvailable
422
412
423
413
offerings = append (offerings , p .createOffering (zone .ID , karpv1 .CapacityTypeSpot , spotPrice , offeringAvailable ))
424
414
}
0 commit comments