Class: AWSCDK::Autoscaling::CfnAutoScalingGroup::CapacityReservationSpecificationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
autoscaling/cfn_auto_scaling_group.rb

Overview

Describes the Capacity Reservation preference and targeting options.

If you specify open or none for CapacityReservationPreference , do not specify a CapacityReservationTarget .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(capacity_reservation_preference:, capacity_reservation_target: nil) ⇒ CapacityReservationSpecificationProperty

Returns a new instance of CapacityReservationSpecificationProperty.

Parameters:



1263
1264
1265
1266
1267
1268
# File 'autoscaling/cfn_auto_scaling_group.rb', line 1263

def initialize(capacity_reservation_preference:, capacity_reservation_target: nil)
  @capacity_reservation_preference = capacity_reservation_preference
  Jsii::Type.check_type(@capacity_reservation_preference, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "capacityReservationPreference")
  @capacity_reservation_target = capacity_reservation_target.is_a?(Hash) ? ::AWSCDK::Autoscaling::CfnAutoScalingGroup::CapacityReservationTargetProperty.new(**capacity_reservation_target.transform_keys(&:to_sym)) : capacity_reservation_target
  Jsii::Type.check_type(@capacity_reservation_target, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hdXRvc2NhbGluZy5DZm5BdXRvU2NhbGluZ0dyb3VwLkNhcGFjaXR5UmVzZXJ2YXRpb25UYXJnZXRQcm9wZXJ0eSJ9XX19")), "capacityReservationTarget") unless @capacity_reservation_target.nil?
end

Instance Attribute Details

#capacity_reservation_preferenceString (readonly)

The capacity reservation preference. The following options are available:.

  • capacity-reservations-only - Auto Scaling will only launch instances into a Capacity Reservation or Capacity Reservation resource group. If capacity isn't available, instances will fail to launch.
  • capacity-reservations-first - Auto Scaling will try to launch instances into a Capacity Reservation or Capacity Reservation resource group first. If capacity isn't available, instances will run in On-Demand capacity.
  • none - Auto Scaling will not launch instances into a Capacity Reservation. Instances will run in On-Demand capacity.
  • default - Auto Scaling uses the Capacity Reservation preference from your launch template or an open Capacity Reservation.


1279
1280
1281
# File 'autoscaling/cfn_auto_scaling_group.rb', line 1279

def capacity_reservation_preference
  @capacity_reservation_preference
end

#capacity_reservation_targetAWSCDK::IResolvable, ... (readonly)

Describes a target Capacity Reservation or Capacity Reservation resource group.



1284
1285
1286
# File 'autoscaling/cfn_auto_scaling_group.rb', line 1284

def capacity_reservation_target
  @capacity_reservation_target
end

Class Method Details

.jsii_propertiesObject



1286
1287
1288
1289
1290
1291
# File 'autoscaling/cfn_auto_scaling_group.rb', line 1286

def self.jsii_properties
  {
    :capacity_reservation_preference => "capacityReservationPreference",
    :capacity_reservation_target => "capacityReservationTarget",
  }
end

Instance Method Details

#to_jsiiObject



1293
1294
1295
1296
1297
1298
1299
1300
# File 'autoscaling/cfn_auto_scaling_group.rb', line 1293

def to_jsii
  result = {}
  result.merge!({
    "capacityReservationPreference" => @capacity_reservation_preference,
    "capacityReservationTarget" => @capacity_reservation_target,
  })
  result.compact
end