@aws-sdk/client-emr 3.650.0 → 3.651.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.
package/dist-cjs/index.js CHANGED
@@ -883,7 +883,7 @@ var se_ModifyClusterCommand = /* @__PURE__ */ __name(async (input, context) => {
883
883
  var se_ModifyInstanceFleetCommand = /* @__PURE__ */ __name(async (input, context) => {
884
884
  const headers = sharedHeaders("ModifyInstanceFleet");
885
885
  let body;
886
- body = JSON.stringify((0, import_smithy_client._json)(input));
886
+ body = JSON.stringify(se_ModifyInstanceFleetInput(input, context));
887
887
  return buildHttpRpcRequest(context, headers, "/", void 0, body);
888
888
  }, "se_ModifyInstanceFleetCommand");
889
889
  var se_ModifyInstanceGroupsCommand = /* @__PURE__ */ __name(async (input, context) => {
@@ -1817,6 +1817,15 @@ var se_InstanceFleetConfigList = /* @__PURE__ */ __name((input, context) => {
1817
1817
  return se_InstanceFleetConfig(entry, context);
1818
1818
  });
1819
1819
  }, "se_InstanceFleetConfigList");
1820
+ var se_InstanceFleetModifyConfig = /* @__PURE__ */ __name((input, context) => {
1821
+ return (0, import_smithy_client.take)(input, {
1822
+ InstanceFleetId: [],
1823
+ InstanceTypeConfigs: (_) => se_InstanceTypeConfigList(_, context),
1824
+ ResizeSpecifications: import_smithy_client._json,
1825
+ TargetOnDemandCapacity: [],
1826
+ TargetSpotCapacity: []
1827
+ });
1828
+ }, "se_InstanceFleetModifyConfig");
1820
1829
  var se_InstanceGroupConfig = /* @__PURE__ */ __name((input, context) => {
1821
1830
  return (0, import_smithy_client.take)(input, {
1822
1831
  AutoScalingPolicy: (_) => se_AutoScalingPolicy(_, context),
@@ -1908,6 +1917,12 @@ var se_ListNotebookExecutionsInput = /* @__PURE__ */ __name((input, context) =>
1908
1917
  To: (_) => _.getTime() / 1e3
1909
1918
  });
1910
1919
  }, "se_ListNotebookExecutionsInput");
1920
+ var se_ModifyInstanceFleetInput = /* @__PURE__ */ __name((input, context) => {
1921
+ return (0, import_smithy_client.take)(input, {
1922
+ ClusterId: [],
1923
+ InstanceFleet: (_) => se_InstanceFleetModifyConfig(_, context)
1924
+ });
1925
+ }, "se_ModifyInstanceFleetInput");
1911
1926
  var se_ModifyInstanceGroupsInput = /* @__PURE__ */ __name((input, context) => {
1912
1927
  return (0, import_smithy_client.take)(input, {
1913
1928
  ClusterId: [],
@@ -222,7 +222,7 @@ export const se_ModifyClusterCommand = async (input, context) => {
222
222
  export const se_ModifyInstanceFleetCommand = async (input, context) => {
223
223
  const headers = sharedHeaders("ModifyInstanceFleet");
224
224
  let body;
225
- body = JSON.stringify(_json(input));
225
+ body = JSON.stringify(se_ModifyInstanceFleetInput(input, context));
226
226
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
227
227
  };
228
228
  export const se_ModifyInstanceGroupsCommand = async (input, context) => {
@@ -1160,6 +1160,15 @@ const se_InstanceFleetConfigList = (input, context) => {
1160
1160
  return se_InstanceFleetConfig(entry, context);
1161
1161
  });
1162
1162
  };
1163
+ const se_InstanceFleetModifyConfig = (input, context) => {
1164
+ return take(input, {
1165
+ InstanceFleetId: [],
1166
+ InstanceTypeConfigs: (_) => se_InstanceTypeConfigList(_, context),
1167
+ ResizeSpecifications: _json,
1168
+ TargetOnDemandCapacity: [],
1169
+ TargetSpotCapacity: [],
1170
+ });
1171
+ };
1163
1172
  const se_InstanceGroupConfig = (input, context) => {
1164
1173
  return take(input, {
1165
1174
  AutoScalingPolicy: (_) => se_AutoScalingPolicy(_, context),
@@ -1257,6 +1266,12 @@ const se_ListNotebookExecutionsInput = (input, context) => {
1257
1266
  To: (_) => _.getTime() / 1000,
1258
1267
  });
1259
1268
  };
1269
+ const se_ModifyInstanceFleetInput = (input, context) => {
1270
+ return take(input, {
1271
+ ClusterId: [],
1272
+ InstanceFleet: (_) => se_InstanceFleetModifyConfig(_, context),
1273
+ });
1274
+ };
1260
1275
  const se_ModifyInstanceGroupsInput = (input, context) => {
1261
1276
  return take(input, {
1262
1277
  ClusterId: [],
@@ -104,10 +104,17 @@ declare const AddInstanceFleetCommand_base: {
104
104
  * },
105
105
  * ResizeSpecifications: { // InstanceFleetResizingSpecifications
106
106
  * SpotResizeSpecification: { // SpotResizingSpecification
107
- * TimeoutDurationMinutes: Number("int"), // required
107
+ * TimeoutDurationMinutes: Number("int"),
108
+ * AllocationStrategy: "capacity-optimized" || "price-capacity-optimized" || "lowest-price" || "diversified" || "capacity-optimized-prioritized",
108
109
  * },
109
110
  * OnDemandResizeSpecification: { // OnDemandResizingSpecification
110
- * TimeoutDurationMinutes: Number("int"), // required
111
+ * TimeoutDurationMinutes: Number("int"),
112
+ * AllocationStrategy: "lowest-price" || "prioritized",
113
+ * CapacityReservationOptions: {
114
+ * UsageStrategy: "use-capacity-reservations-first",
115
+ * CapacityReservationPreference: "open" || "none",
116
+ * CapacityReservationResourceGroupArn: "STRING_VALUE",
117
+ * },
111
118
  * },
112
119
  * },
113
120
  * },
@@ -123,10 +123,17 @@ declare const ListInstanceFleetsCommand_base: {
123
123
  * // },
124
124
  * // ResizeSpecifications: { // InstanceFleetResizingSpecifications
125
125
  * // SpotResizeSpecification: { // SpotResizingSpecification
126
- * // TimeoutDurationMinutes: Number("int"), // required
126
+ * // TimeoutDurationMinutes: Number("int"),
127
+ * // AllocationStrategy: "capacity-optimized" || "price-capacity-optimized" || "lowest-price" || "diversified" || "capacity-optimized-prioritized",
127
128
  * // },
128
129
  * // OnDemandResizeSpecification: { // OnDemandResizingSpecification
129
- * // TimeoutDurationMinutes: Number("int"), // required
130
+ * // TimeoutDurationMinutes: Number("int"),
131
+ * // AllocationStrategy: "lowest-price" || "prioritized",
132
+ * // CapacityReservationOptions: {
133
+ * // UsageStrategy: "use-capacity-reservations-first",
134
+ * // CapacityReservationPreference: "open" || "none",
135
+ * // CapacityReservationResourceGroupArn: "STRING_VALUE",
136
+ * // },
130
137
  * // },
131
138
  * // },
132
139
  * // },
@@ -48,12 +48,60 @@ declare const ModifyInstanceFleetCommand_base: {
48
48
  * TargetSpotCapacity: Number("int"),
49
49
  * ResizeSpecifications: { // InstanceFleetResizingSpecifications
50
50
  * SpotResizeSpecification: { // SpotResizingSpecification
51
- * TimeoutDurationMinutes: Number("int"), // required
51
+ * TimeoutDurationMinutes: Number("int"),
52
+ * AllocationStrategy: "capacity-optimized" || "price-capacity-optimized" || "lowest-price" || "diversified" || "capacity-optimized-prioritized",
52
53
  * },
53
54
  * OnDemandResizeSpecification: { // OnDemandResizingSpecification
54
- * TimeoutDurationMinutes: Number("int"), // required
55
+ * TimeoutDurationMinutes: Number("int"),
56
+ * AllocationStrategy: "lowest-price" || "prioritized",
57
+ * CapacityReservationOptions: { // OnDemandCapacityReservationOptions
58
+ * UsageStrategy: "use-capacity-reservations-first",
59
+ * CapacityReservationPreference: "open" || "none",
60
+ * CapacityReservationResourceGroupArn: "STRING_VALUE",
61
+ * },
55
62
  * },
56
63
  * },
64
+ * InstanceTypeConfigs: [ // InstanceTypeConfigList
65
+ * { // InstanceTypeConfig
66
+ * InstanceType: "STRING_VALUE", // required
67
+ * WeightedCapacity: Number("int"),
68
+ * BidPrice: "STRING_VALUE",
69
+ * BidPriceAsPercentageOfOnDemandPrice: Number("double"),
70
+ * EbsConfiguration: { // EbsConfiguration
71
+ * EbsBlockDeviceConfigs: [ // EbsBlockDeviceConfigList
72
+ * { // EbsBlockDeviceConfig
73
+ * VolumeSpecification: { // VolumeSpecification
74
+ * VolumeType: "STRING_VALUE", // required
75
+ * Iops: Number("int"),
76
+ * SizeInGB: Number("int"), // required
77
+ * Throughput: Number("int"),
78
+ * },
79
+ * VolumesPerInstance: Number("int"),
80
+ * },
81
+ * ],
82
+ * EbsOptimized: true || false,
83
+ * },
84
+ * Configurations: [ // ConfigurationList
85
+ * { // Configuration
86
+ * Classification: "STRING_VALUE",
87
+ * Configurations: [
88
+ * {
89
+ * Classification: "STRING_VALUE",
90
+ * Configurations: "<ConfigurationList>",
91
+ * Properties: { // StringMap
92
+ * "<keys>": "STRING_VALUE",
93
+ * },
94
+ * },
95
+ * ],
96
+ * Properties: {
97
+ * "<keys>": "STRING_VALUE",
98
+ * },
99
+ * },
100
+ * ],
101
+ * CustomAmiId: "STRING_VALUE",
102
+ * Priority: Number("double"),
103
+ * },
104
+ * ],
57
105
  * },
58
106
  * };
59
107
  * const command = new ModifyInstanceFleetCommand(input);
@@ -195,10 +195,17 @@ declare const RunJobFlowCommand_base: {
195
195
  * },
196
196
  * ResizeSpecifications: { // InstanceFleetResizingSpecifications
197
197
  * SpotResizeSpecification: { // SpotResizingSpecification
198
- * TimeoutDurationMinutes: Number("int"), // required
198
+ * TimeoutDurationMinutes: Number("int"),
199
+ * AllocationStrategy: "capacity-optimized" || "price-capacity-optimized" || "lowest-price" || "diversified" || "capacity-optimized-prioritized",
199
200
  * },
200
201
  * OnDemandResizeSpecification: { // OnDemandResizingSpecification
201
- * TimeoutDurationMinutes: Number("int"), // required
202
+ * TimeoutDurationMinutes: Number("int"),
203
+ * AllocationStrategy: "lowest-price" || "prioritized",
204
+ * CapacityReservationOptions: {
205
+ * UsageStrategy: "use-capacity-reservations-first",
206
+ * CapacityReservationPreference: "open" || "none",
207
+ * CapacityReservationResourceGroupArn: "STRING_VALUE",
208
+ * },
202
209
  * },
203
210
  * },
204
211
  * },
@@ -293,8 +293,7 @@ export interface SpotProvisioningSpecification {
293
293
  AllocationStrategy?: SpotProvisioningAllocationStrategy;
294
294
  }
295
295
  /**
296
- * <p>The launch specification for Spot Instances in the fleet, which determines the defined
297
- * duration, provisioning timeout behavior, and allocation strategy.</p>
296
+ * <p>The launch specification for On-Demand and Spot Instances in the fleet.</p>
298
297
  * <note>
299
298
  * <p>The instance fleet configuration is available only in Amazon EMR releases
300
299
  * 4.8.0 and later, excluding 5.0.x versions. On-Demand and Spot instance allocation
@@ -304,14 +303,14 @@ export interface SpotProvisioningSpecification {
304
303
  */
305
304
  export interface InstanceFleetProvisioningSpecifications {
306
305
  /**
307
- * <p>The launch specification for Spot instances in the fleet, which determines the defined
308
- * duration, provisioning timeout behavior, and allocation strategy.</p>
306
+ * <p>The launch specification for Spot instances in the fleet, which determines the allocation strategy, defined
307
+ * duration, and provisioning timeout behavior.</p>
309
308
  * @public
310
309
  */
311
310
  SpotSpecification?: SpotProvisioningSpecification;
312
311
  /**
313
312
  * <p> The launch specification for On-Demand Instances in the instance fleet, which
314
- * determines the allocation strategy. </p>
313
+ * determines the allocation strategy and capacity reservation options.</p>
315
314
  * <note>
316
315
  * <p>The instance fleet configuration is available only in Amazon EMR releases
317
316
  * 4.8.0 and later, excluding 5.0.x versions. On-Demand Instances allocation strategy is
@@ -336,7 +335,18 @@ export interface OnDemandResizingSpecification {
336
335
  * Amazon EMR SDK ModifyInstanceFleet API) or by Amazon EMR due to Amazon EC2 Spot Reclamation.</p>
337
336
  * @public
338
337
  */
339
- TimeoutDurationMinutes: number | undefined;
338
+ TimeoutDurationMinutes?: number;
339
+ /**
340
+ * <p>Specifies the allocation strategy to use to launch On-Demand instances during a resize. The default is <code>lowest-price</code>.</p>
341
+ * @public
342
+ */
343
+ AllocationStrategy?: OnDemandProvisioningAllocationStrategy;
344
+ /**
345
+ * <p>Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand
346
+ * capacity.</p>
347
+ * @public
348
+ */
349
+ CapacityReservationOptions?: OnDemandCapacityReservationOptions;
340
350
  }
341
351
  /**
342
352
  * <p>The resize specification for Spot Instances in the instance fleet, which contains the
@@ -353,7 +363,14 @@ export interface SpotResizingSpecification {
353
363
  * modify-instance-fleet or Amazon EMR SDK ModifyInstanceFleet API) or by Amazon EMR due to Amazon EC2 Spot Reclamation.</p>
354
364
  * @public
355
365
  */
356
- TimeoutDurationMinutes: number | undefined;
366
+ TimeoutDurationMinutes?: number;
367
+ /**
368
+ * <p>Specifies the allocation strategy to use to launch Spot instances during a resize. If you run Amazon EMR releases 6.9.0 or higher,
369
+ * the default is <code>price-capacity-optimized</code>. If you run Amazon EMR releases 6.8.0 or lower, the default is
370
+ * <code>capacity-optimized</code>.</p>
371
+ * @public
372
+ */
373
+ AllocationStrategy?: SpotProvisioningAllocationStrategy;
357
374
  }
358
375
  /**
359
376
  * <p>The resize specification for On-Demand and Spot Instances in the fleet.</p>
@@ -362,13 +379,13 @@ export interface SpotResizingSpecification {
362
379
  export interface InstanceFleetResizingSpecifications {
363
380
  /**
364
381
  * <p>The resize specification for Spot Instances in the instance fleet, which contains the
365
- * resize timeout period. </p>
382
+ * allocation strategy and the resize timeout period. </p>
366
383
  * @public
367
384
  */
368
385
  SpotResizeSpecification?: SpotResizingSpecification;
369
386
  /**
370
387
  * <p>The resize specification for On-Demand Instances in the instance fleet, which contains
371
- * the resize timeout period. </p>
388
+ * the allocation strategy, capacity reservation options, and the resize timeout period. </p>
372
389
  * @public
373
390
  */
374
391
  OnDemandResizeSpecification?: OnDemandResizingSpecification;
@@ -4815,53 +4832,6 @@ export interface ModifyClusterOutput {
4815
4832
  */
4816
4833
  StepConcurrencyLevel?: number;
4817
4834
  }
4818
- /**
4819
- * <p>Configuration parameters for an instance fleet modification request.</p>
4820
- * <note>
4821
- * <p>The instance fleet configuration is available only in Amazon EMR releases
4822
- * 4.8.0 and later, excluding 5.0.x versions.</p>
4823
- * </note>
4824
- * @public
4825
- */
4826
- export interface InstanceFleetModifyConfig {
4827
- /**
4828
- * <p>A unique identifier for the instance fleet.</p>
4829
- * @public
4830
- */
4831
- InstanceFleetId: string | undefined;
4832
- /**
4833
- * <p>The target capacity of On-Demand units for the instance fleet. For more information see
4834
- * <a>InstanceFleetConfig$TargetOnDemandCapacity</a>.</p>
4835
- * @public
4836
- */
4837
- TargetOnDemandCapacity?: number;
4838
- /**
4839
- * <p>The target capacity of Spot units for the instance fleet. For more information, see
4840
- * <a>InstanceFleetConfig$TargetSpotCapacity</a>.</p>
4841
- * @public
4842
- */
4843
- TargetSpotCapacity?: number;
4844
- /**
4845
- * <p>The resize specification for the instance fleet.</p>
4846
- * @public
4847
- */
4848
- ResizeSpecifications?: InstanceFleetResizingSpecifications;
4849
- }
4850
- /**
4851
- * @public
4852
- */
4853
- export interface ModifyInstanceFleetInput {
4854
- /**
4855
- * <p>The unique identifier of the cluster.</p>
4856
- * @public
4857
- */
4858
- ClusterId: string | undefined;
4859
- /**
4860
- * <p>The configuration parameters of the instance fleet.</p>
4861
- * @public
4862
- */
4863
- InstanceFleet: InstanceFleetModifyConfig | undefined;
4864
- }
4865
4835
  /**
4866
4836
  * @public
4867
4837
  * @enum
@@ -6184,6 +6154,44 @@ export interface InstanceFleetConfig {
6184
6154
  */
6185
6155
  ResizeSpecifications?: InstanceFleetResizingSpecifications;
6186
6156
  }
6157
+ /**
6158
+ * <p>Configuration parameters for an instance fleet modification request.</p>
6159
+ * <note>
6160
+ * <p>The instance fleet configuration is available only in Amazon EMR releases
6161
+ * 4.8.0 and later, excluding 5.0.x versions.</p>
6162
+ * </note>
6163
+ * @public
6164
+ */
6165
+ export interface InstanceFleetModifyConfig {
6166
+ /**
6167
+ * <p>A unique identifier for the instance fleet.</p>
6168
+ * @public
6169
+ */
6170
+ InstanceFleetId: string | undefined;
6171
+ /**
6172
+ * <p>The target capacity of On-Demand units for the instance fleet. For more information see
6173
+ * <a>InstanceFleetConfig$TargetOnDemandCapacity</a>.</p>
6174
+ * @public
6175
+ */
6176
+ TargetOnDemandCapacity?: number;
6177
+ /**
6178
+ * <p>The target capacity of Spot units for the instance fleet. For more information, see
6179
+ * <a>InstanceFleetConfig$TargetSpotCapacity</a>.</p>
6180
+ * @public
6181
+ */
6182
+ TargetSpotCapacity?: number;
6183
+ /**
6184
+ * <p>The resize specification for the instance fleet.</p>
6185
+ * @public
6186
+ */
6187
+ ResizeSpecifications?: InstanceFleetResizingSpecifications;
6188
+ /**
6189
+ * <p>An array of InstanceTypeConfig objects that specify how Amazon EMR provisions Amazon EC2 instances
6190
+ * when it fulfills On-Demand and Spot capacities. For more information, see <a href="https://docs.aws.amazon.com/emr/latest/APIReference/API_InstanceTypeConfig.html">InstanceTypeConfig</a>.</p>
6191
+ * @public
6192
+ */
6193
+ InstanceTypeConfigs?: InstanceTypeConfig[];
6194
+ }
6187
6195
  /**
6188
6196
  * <p>Change the size of some instance groups.</p>
6189
6197
  * @public
@@ -6327,6 +6335,21 @@ export interface InstanceGroup {
6327
6335
  */
6328
6336
  CustomAmiId?: string;
6329
6337
  }
6338
+ /**
6339
+ * @public
6340
+ */
6341
+ export interface ModifyInstanceFleetInput {
6342
+ /**
6343
+ * <p>The unique identifier of the cluster.</p>
6344
+ * @public
6345
+ */
6346
+ ClusterId: string | undefined;
6347
+ /**
6348
+ * <p>The configuration parameters of the instance fleet.</p>
6349
+ * @public
6350
+ */
6351
+ InstanceFleet: InstanceFleetModifyConfig | undefined;
6352
+ }
6330
6353
  /**
6331
6354
  * @public
6332
6355
  */
@@ -81,10 +81,13 @@ export interface InstanceFleetProvisioningSpecifications {
81
81
  OnDemandSpecification?: OnDemandProvisioningSpecification;
82
82
  }
83
83
  export interface OnDemandResizingSpecification {
84
- TimeoutDurationMinutes: number | undefined;
84
+ TimeoutDurationMinutes?: number;
85
+ AllocationStrategy?: OnDemandProvisioningAllocationStrategy;
86
+ CapacityReservationOptions?: OnDemandCapacityReservationOptions;
85
87
  }
86
88
  export interface SpotResizingSpecification {
87
- TimeoutDurationMinutes: number | undefined;
89
+ TimeoutDurationMinutes?: number;
90
+ AllocationStrategy?: SpotProvisioningAllocationStrategy;
88
91
  }
89
92
  export interface InstanceFleetResizingSpecifications {
90
93
  SpotResizeSpecification?: SpotResizingSpecification;
@@ -1181,16 +1184,6 @@ export interface ModifyClusterInput {
1181
1184
  export interface ModifyClusterOutput {
1182
1185
  StepConcurrencyLevel?: number;
1183
1186
  }
1184
- export interface InstanceFleetModifyConfig {
1185
- InstanceFleetId: string | undefined;
1186
- TargetOnDemandCapacity?: number;
1187
- TargetSpotCapacity?: number;
1188
- ResizeSpecifications?: InstanceFleetResizingSpecifications;
1189
- }
1190
- export interface ModifyInstanceFleetInput {
1191
- ClusterId: string | undefined;
1192
- InstanceFleet: InstanceFleetModifyConfig | undefined;
1193
- }
1194
1187
  export declare const ReconfigurationType: {
1195
1188
  readonly MERGE: "MERGE";
1196
1189
  readonly OVERWRITE: "OVERWRITE";
@@ -1434,6 +1427,13 @@ export interface InstanceFleetConfig {
1434
1427
  LaunchSpecifications?: InstanceFleetProvisioningSpecifications;
1435
1428
  ResizeSpecifications?: InstanceFleetResizingSpecifications;
1436
1429
  }
1430
+ export interface InstanceFleetModifyConfig {
1431
+ InstanceFleetId: string | undefined;
1432
+ TargetOnDemandCapacity?: number;
1433
+ TargetSpotCapacity?: number;
1434
+ ResizeSpecifications?: InstanceFleetResizingSpecifications;
1435
+ InstanceTypeConfigs?: InstanceTypeConfig[];
1436
+ }
1437
1437
  export interface ModifyInstanceGroupsInput {
1438
1438
  ClusterId?: string;
1439
1439
  InstanceGroups?: InstanceGroupModifyConfig[];
@@ -1462,6 +1462,10 @@ export interface InstanceGroup {
1462
1462
  AutoScalingPolicy?: AutoScalingPolicyDescription;
1463
1463
  CustomAmiId?: string;
1464
1464
  }
1465
+ export interface ModifyInstanceFleetInput {
1466
+ ClusterId: string | undefined;
1467
+ InstanceFleet: InstanceFleetModifyConfig | undefined;
1468
+ }
1465
1469
  export interface ListInstanceFleetsOutput {
1466
1470
  InstanceFleets?: InstanceFleet[];
1467
1471
  Marker?: string;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-emr",
3
3
  "description": "AWS SDK for JavaScript Emr Client for Node.js, Browser and React Native",
4
- "version": "3.650.0",
4
+ "version": "3.651.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-emr",