@aws-sdk/client-auto-scaling 3.696.0 → 3.697.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -717,6 +717,82 @@ export interface AvailabilityZoneImpairmentPolicy {
717
717
  */
718
718
  ImpairedZoneHealthCheckBehavior?: ImpairedZoneHealthCheckBehavior | undefined;
719
719
  }
720
+ /**
721
+ * @public
722
+ * @enum
723
+ */
724
+ export declare const CapacityReservationPreference: {
725
+ readonly CapacityReservationsFirst: "capacity-reservations-first";
726
+ readonly CapacityReservationsOnly: "capacity-reservations-only";
727
+ readonly Default: "default";
728
+ readonly None: "none";
729
+ };
730
+ /**
731
+ * @public
732
+ */
733
+ export type CapacityReservationPreference = (typeof CapacityReservationPreference)[keyof typeof CapacityReservationPreference];
734
+ /**
735
+ * <p>
736
+ * The target for the Capacity Reservation. Specify Capacity Reservations IDs or Capacity Reservation resource group ARNs.
737
+ * </p>
738
+ * @public
739
+ */
740
+ export interface CapacityReservationTarget {
741
+ /**
742
+ * <p>
743
+ * The Capacity Reservation IDs to launch instances into.
744
+ * </p>
745
+ * @public
746
+ */
747
+ CapacityReservationIds?: string[] | undefined;
748
+ /**
749
+ * <p>
750
+ * The resource group ARNs of the Capacity Reservation to launch instances into.
751
+ * </p>
752
+ * @public
753
+ */
754
+ CapacityReservationResourceGroupArns?: string[] | undefined;
755
+ }
756
+ /**
757
+ * <p>
758
+ * Describes the Capacity Reservation preference and targeting options. If you specify <code>open</code> or <code>none</code> for <code>CapacityReservationPreference</code>, do not specify a <code>CapacityReservationTarget</code>.
759
+ * </p>
760
+ * @public
761
+ */
762
+ export interface CapacityReservationSpecification {
763
+ /**
764
+ * <p>
765
+ * The capacity reservation preference. The following options are available:
766
+ * </p>
767
+ * <ul>
768
+ * <li>
769
+ * <p>
770
+ * <code>capacity-reservations-only</code> - 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.</p>
771
+ * </li>
772
+ * <li>
773
+ * <p>
774
+ * <code>capacity-reservations-first</code> - 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.</p>
775
+ * </li>
776
+ * <li>
777
+ * <p>
778
+ * <code>none</code> - Auto Scaling will not launch instances into a Capacity Reservation. Instances will run in On-Demand capacity. </p>
779
+ * </li>
780
+ * <li>
781
+ * <p>
782
+ * <code>default</code> - Auto Scaling uses the Capacity Reservation preference from your launch template or an open Capacity Reservation.</p>
783
+ * </li>
784
+ * </ul>
785
+ * @public
786
+ */
787
+ CapacityReservationPreference?: CapacityReservationPreference | undefined;
788
+ /**
789
+ * <p>
790
+ * Describes a target Capacity Reservation or Capacity Reservation resource group.
791
+ * </p>
792
+ * @public
793
+ */
794
+ CapacityReservationTarget?: CapacityReservationTarget | undefined;
795
+ }
720
796
  /**
721
797
  * <p>Describes an instance maintenance policy.</p>
722
798
  * <p>For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html">Set instance maintenance policy</a> in the
@@ -999,6 +1075,112 @@ export interface BaselineEbsBandwidthMbpsRequest {
999
1075
  */
1000
1076
  Max?: number | undefined;
1001
1077
  }
1078
+ /**
1079
+ * <p>
1080
+ * Specify an instance family to use as the baseline reference for CPU performance. All instance types that All instance types that match your specified attributes will be compared against the CPU performance of the
1081
+ * referenced instance family, regardless of CPU manufacturer or architecture differences.
1082
+ * </p>
1083
+ * <note>
1084
+ * <p>Currently only one instance family can be specified in the list.</p>
1085
+ * </note>
1086
+ * @public
1087
+ */
1088
+ export interface PerformanceFactorReferenceRequest {
1089
+ /**
1090
+ * <p>
1091
+ * The instance family to use as a baseline reference.
1092
+ * </p>
1093
+ * <note>
1094
+ * <p>Make sure that you specify the correct value for the instance family. The instance family is everything before the period (.) in the instance type name. For example, in the instance <code>c6i.large</code>, the
1095
+ * instance family is <code>c6i</code>, not <code>c6</code>. For more information, see <a href="https://docs.aws.amazon.com/ec2/latest/instancetypes/instance-type-names.html">Amazon EC2 instance type naming conventions</a> in
1096
+ * <i>Amazon EC2 Instance Types</i>.</p>
1097
+ * </note>
1098
+ * <p>The following instance types are <i>not supported</i> for performance protection.</p>
1099
+ * <ul>
1100
+ * <li>
1101
+ * <p>
1102
+ * <code>c1</code>
1103
+ * </p>
1104
+ * </li>
1105
+ * <li>
1106
+ * <p>
1107
+ * <code>g3| g3s</code>
1108
+ * </p>
1109
+ * </li>
1110
+ * <li>
1111
+ * <p>
1112
+ * <code>hpc7g</code>
1113
+ * </p>
1114
+ * </li>
1115
+ * <li>
1116
+ * <p>
1117
+ * <code>m1| m2</code>
1118
+ * </p>
1119
+ * </li>
1120
+ * <li>
1121
+ * <p>
1122
+ * <code>mac1 | mac2 | mac2-m1ultra | mac2-m2 | mac2-m2pro</code>
1123
+ * </p>
1124
+ * </li>
1125
+ * <li>
1126
+ * <p>
1127
+ * <code>p3dn | p4d | p5</code>
1128
+ * </p>
1129
+ * </li>
1130
+ * <li>
1131
+ * <p>
1132
+ * <code>t1</code>
1133
+ * </p>
1134
+ * </li>
1135
+ * <li>
1136
+ * <p>
1137
+ * <code>u-12tb1 | u-18tb1 | u-24tb1 | u-3tb1 | u-6tb1 | u-9tb1 | u7i-12tb | u7in-16tb | u7in-24tb | u7in-32tb</code>
1138
+ * </p>
1139
+ * </li>
1140
+ * </ul>
1141
+ * <p>If you performance protection by specifying a supported instance family, the returned instance types will exclude the preceding unsupported instance families.</p>
1142
+ * <p>If you specify an unsupported instance family as a value for baseline performance, the API returns an empty response.</p>
1143
+ * @public
1144
+ */
1145
+ InstanceFamily?: string | undefined;
1146
+ }
1147
+ /**
1148
+ * <p>
1149
+ * The CPU performance to consider, using an instance family as the baseline reference.
1150
+ * </p>
1151
+ * @public
1152
+ */
1153
+ export interface CpuPerformanceFactorRequest {
1154
+ /**
1155
+ * <p>
1156
+ * Specify an instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes will be compared against the CPU performance of the
1157
+ * referenced instance family, regardless of CPU manufacturer or architecture differences.
1158
+ * </p>
1159
+ * <note>
1160
+ * <p>Currently only one instance family can be specified in the list.</p>
1161
+ * </note>
1162
+ * @public
1163
+ */
1164
+ References?: PerformanceFactorReferenceRequest[] | undefined;
1165
+ }
1166
+ /**
1167
+ * <p>
1168
+ * The baseline performance to consider, using an instance family as a baseline reference. The instance family establishes the lowest acceptable level of performance. Auto Scaling uses
1169
+ * this baseline to guide instance type selection, but there is no guarantee that the selected instance types will always exceed the baseline for every application.
1170
+ * </p>
1171
+ * <p>Currently, this parameter only supports CPU performance as a baseline performance factor. For example, specifying <code>c6i</code> uses the CPU performance of the <code>c6i</code>
1172
+ * family as the baseline reference.</p>
1173
+ * @public
1174
+ */
1175
+ export interface BaselinePerformanceFactorsRequest {
1176
+ /**
1177
+ * <p>
1178
+ * The CPU performance to consider, using an instance family as the baseline reference.
1179
+ * </p>
1180
+ * @public
1181
+ */
1182
+ Cpu?: CpuPerformanceFactorRequest | undefined;
1183
+ }
1002
1184
  /**
1003
1185
  * @public
1004
1186
  * @enum
@@ -1533,6 +1715,13 @@ export interface InstanceRequirements {
1533
1715
  * @public
1534
1716
  */
1535
1717
  AllowedInstanceTypes?: string[] | undefined;
1718
+ /**
1719
+ * <p>
1720
+ * The baseline performance factors for the instance requirements.
1721
+ * </p>
1722
+ * @public
1723
+ */
1724
+ BaselinePerformanceFactors?: BaselinePerformanceFactorsRequest | undefined;
1536
1725
  }
1537
1726
  /**
1538
1727
  * <p>Use this structure to let Amazon EC2 Auto Scaling do the following when the Auto Scaling group has a mixed
@@ -1988,6 +2177,13 @@ export interface CreateAutoScalingGroupType {
1988
2177
  * @public
1989
2178
  */
1990
2179
  SkipZonalShiftValidation?: boolean | undefined;
2180
+ /**
2181
+ * <p>
2182
+ * The capacity reservation specification for the Auto Scaling group.
2183
+ * </p>
2184
+ * @public
2185
+ */
2186
+ CapacityReservationSpecification?: CapacityReservationSpecification | undefined;
1991
2187
  }
1992
2188
  /**
1993
2189
  * <p>Describes information used to set up an Amazon EBS volume specified in a block device
@@ -3233,6 +3429,13 @@ export interface AutoScalingGroup {
3233
3429
  * @public
3234
3430
  */
3235
3431
  AvailabilityZoneImpairmentPolicy?: AvailabilityZoneImpairmentPolicy | undefined;
3432
+ /**
3433
+ * <p>
3434
+ * The capacity reservation specification.
3435
+ * </p>
3436
+ * @public
3437
+ */
3438
+ CapacityReservationSpecification?: CapacityReservationSpecification | undefined;
3236
3439
  }
3237
3440
  /**
3238
3441
  * @public
@@ -7588,4 +7791,11 @@ export interface UpdateAutoScalingGroupType {
7588
7791
  * @public
7589
7792
  */
7590
7793
  SkipZonalShiftValidation?: boolean | undefined;
7794
+ /**
7795
+ * <p>
7796
+ * The capacity reservation specification for the Auto Scaling group.
7797
+ * </p>
7798
+ * @public
7799
+ */
7800
+ CapacityReservationSpecification?: CapacityReservationSpecification | undefined;
7591
7801
  }
@@ -206,6 +206,22 @@ export interface AvailabilityZoneImpairmentPolicy {
206
206
  ZonalShiftEnabled?: boolean | undefined;
207
207
  ImpairedZoneHealthCheckBehavior?: ImpairedZoneHealthCheckBehavior | undefined;
208
208
  }
209
+ export declare const CapacityReservationPreference: {
210
+ readonly CapacityReservationsFirst: "capacity-reservations-first";
211
+ readonly CapacityReservationsOnly: "capacity-reservations-only";
212
+ readonly Default: "default";
213
+ readonly None: "none";
214
+ };
215
+ export type CapacityReservationPreference =
216
+ (typeof CapacityReservationPreference)[keyof typeof CapacityReservationPreference];
217
+ export interface CapacityReservationTarget {
218
+ CapacityReservationIds?: string[] | undefined;
219
+ CapacityReservationResourceGroupArns?: string[] | undefined;
220
+ }
221
+ export interface CapacityReservationSpecification {
222
+ CapacityReservationPreference?: CapacityReservationPreference | undefined;
223
+ CapacityReservationTarget?: CapacityReservationTarget | undefined;
224
+ }
209
225
  export interface InstanceMaintenancePolicy {
210
226
  MinHealthyPercentage?: number | undefined;
211
227
  MaxHealthyPercentage?: number | undefined;
@@ -242,6 +258,15 @@ export interface BaselineEbsBandwidthMbpsRequest {
242
258
  Min?: number | undefined;
243
259
  Max?: number | undefined;
244
260
  }
261
+ export interface PerformanceFactorReferenceRequest {
262
+ InstanceFamily?: string | undefined;
263
+ }
264
+ export interface CpuPerformanceFactorRequest {
265
+ References?: PerformanceFactorReferenceRequest[] | undefined;
266
+ }
267
+ export interface BaselinePerformanceFactorsRequest {
268
+ Cpu?: CpuPerformanceFactorRequest | undefined;
269
+ }
245
270
  export declare const BurstablePerformance: {
246
271
  readonly EXCLUDED: "excluded";
247
272
  readonly INCLUDED: "included";
@@ -323,6 +348,7 @@ export interface InstanceRequirements {
323
348
  AcceleratorTotalMemoryMiB?: AcceleratorTotalMemoryMiBRequest | undefined;
324
349
  NetworkBandwidthGbps?: NetworkBandwidthGbpsRequest | undefined;
325
350
  AllowedInstanceTypes?: string[] | undefined;
351
+ BaselinePerformanceFactors?: BaselinePerformanceFactorsRequest | undefined;
326
352
  }
327
353
  export interface LaunchTemplateOverrides {
328
354
  InstanceType?: string | undefined;
@@ -379,6 +405,9 @@ export interface CreateAutoScalingGroupType {
379
405
  | AvailabilityZoneImpairmentPolicy
380
406
  | undefined;
381
407
  SkipZonalShiftValidation?: boolean | undefined;
408
+ CapacityReservationSpecification?:
409
+ | CapacityReservationSpecification
410
+ | undefined;
382
411
  }
383
412
  export interface Ebs {
384
413
  SnapshotId?: string | undefined;
@@ -616,6 +645,9 @@ export interface AutoScalingGroup {
616
645
  AvailabilityZoneImpairmentPolicy?:
617
646
  | AvailabilityZoneImpairmentPolicy
618
647
  | undefined;
648
+ CapacityReservationSpecification?:
649
+ | CapacityReservationSpecification
650
+ | undefined;
619
651
  }
620
652
  export interface AutoScalingGroupsType {
621
653
  AutoScalingGroups: AutoScalingGroup[] | undefined;
@@ -1330,4 +1362,7 @@ export interface UpdateAutoScalingGroupType {
1330
1362
  | AvailabilityZoneImpairmentPolicy
1331
1363
  | undefined;
1332
1364
  SkipZonalShiftValidation?: boolean | undefined;
1365
+ CapacityReservationSpecification?:
1366
+ | CapacityReservationSpecification
1367
+ | undefined;
1333
1368
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-auto-scaling",
3
3
  "description": "AWS SDK for JavaScript Auto Scaling Client for Node.js, Browser and React Native",
4
- "version": "3.696.0",
4
+ "version": "3.697.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "node ../../scripts/compilation/inline client-auto-scaling",