From 3e061571a08eccbc61f7680a6579d72b5d8f2bd4 Mon Sep 17 00:00:00 2001 From: awstools Date: Wed, 20 Nov 2024 19:12:56 +0000 Subject: [PATCH] feat(client-mediaconvert): This release adds the ability to reconfigure concurrent job settings for existing queues and create queues with custom concurrent job settings. --- .../src/commands/CreateQueueCommand.ts | 10 +++ .../src/commands/GetQueueCommand.ts | 9 ++ .../src/commands/ListQueuesCommand.ts | 11 +++ .../src/commands/UpdateQueueCommand.ts | 10 +++ .../src/models/models_2.ts | 66 +++++++++++++++ .../src/protocols/Aws_restJson1.ts | 31 +++++++ .../sdk-codegen/aws-models/mediaconvert.json | 84 +++++++++++++++++++ 7 files changed, 221 insertions(+) diff --git a/clients/client-mediaconvert/src/commands/CreateQueueCommand.ts b/clients/client-mediaconvert/src/commands/CreateQueueCommand.ts index f3251ab85c947..a9f49f652c694 100644 --- a/clients/client-mediaconvert/src/commands/CreateQueueCommand.ts +++ b/clients/client-mediaconvert/src/commands/CreateQueueCommand.ts @@ -36,6 +36,7 @@ export interface CreateQueueCommandOutput extends CreateQueueResponse, __Metadat * // const { MediaConvertClient, CreateQueueCommand } = require("@aws-sdk/client-mediaconvert"); // CommonJS import * const client = new MediaConvertClient(config); * const input = { // CreateQueueRequest + * ConcurrentJobs: Number("int"), * Description: "STRING_VALUE", * Name: "STRING_VALUE", // required * PricingPlan: "ON_DEMAND" || "RESERVED", @@ -54,6 +55,7 @@ export interface CreateQueueCommandOutput extends CreateQueueResponse, __Metadat * // { // CreateQueueResponse * // Queue: { // Queue * // Arn: "STRING_VALUE", + * // ConcurrentJobs: Number("int"), * // CreatedAt: new Date("TIMESTAMP"), * // Description: "STRING_VALUE", * // LastUpdated: new Date("TIMESTAMP"), @@ -68,6 +70,14 @@ export interface CreateQueueCommandOutput extends CreateQueueResponse, __Metadat * // ReservedSlots: Number("int"), * // Status: "ACTIVE" || "EXPIRED", * // }, + * // ServiceOverrides: [ // __listOfServiceOverride + * // { // ServiceOverride + * // Message: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // OverrideValue: "STRING_VALUE", + * // Value: "STRING_VALUE", + * // }, + * // ], * // Status: "ACTIVE" || "PAUSED", * // SubmittedJobsCount: Number("int"), * // Type: "SYSTEM" || "CUSTOM", diff --git a/clients/client-mediaconvert/src/commands/GetQueueCommand.ts b/clients/client-mediaconvert/src/commands/GetQueueCommand.ts index 8d7231a67216c..674515f9d84dc 100644 --- a/clients/client-mediaconvert/src/commands/GetQueueCommand.ts +++ b/clients/client-mediaconvert/src/commands/GetQueueCommand.ts @@ -43,6 +43,7 @@ export interface GetQueueCommandOutput extends GetQueueResponse, __MetadataBeare * // { // GetQueueResponse * // Queue: { // Queue * // Arn: "STRING_VALUE", + * // ConcurrentJobs: Number("int"), * // CreatedAt: new Date("TIMESTAMP"), * // Description: "STRING_VALUE", * // LastUpdated: new Date("TIMESTAMP"), @@ -57,6 +58,14 @@ export interface GetQueueCommandOutput extends GetQueueResponse, __MetadataBeare * // ReservedSlots: Number("int"), * // Status: "ACTIVE" || "EXPIRED", * // }, + * // ServiceOverrides: [ // __listOfServiceOverride + * // { // ServiceOverride + * // Message: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // OverrideValue: "STRING_VALUE", + * // Value: "STRING_VALUE", + * // }, + * // ], * // Status: "ACTIVE" || "PAUSED", * // SubmittedJobsCount: Number("int"), * // Type: "SYSTEM" || "CUSTOM", diff --git a/clients/client-mediaconvert/src/commands/ListQueuesCommand.ts b/clients/client-mediaconvert/src/commands/ListQueuesCommand.ts index 3d011c0991ed6..2542d857f60df 100644 --- a/clients/client-mediaconvert/src/commands/ListQueuesCommand.ts +++ b/clients/client-mediaconvert/src/commands/ListQueuesCommand.ts @@ -48,6 +48,7 @@ export interface ListQueuesCommandOutput extends ListQueuesResponse, __MetadataB * // Queues: [ // __listOfQueue * // { // Queue * // Arn: "STRING_VALUE", + * // ConcurrentJobs: Number("int"), * // CreatedAt: new Date("TIMESTAMP"), * // Description: "STRING_VALUE", * // LastUpdated: new Date("TIMESTAMP"), @@ -62,11 +63,21 @@ export interface ListQueuesCommandOutput extends ListQueuesResponse, __MetadataB * // ReservedSlots: Number("int"), * // Status: "ACTIVE" || "EXPIRED", * // }, + * // ServiceOverrides: [ // __listOfServiceOverride + * // { // ServiceOverride + * // Message: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // OverrideValue: "STRING_VALUE", + * // Value: "STRING_VALUE", + * // }, + * // ], * // Status: "ACTIVE" || "PAUSED", * // SubmittedJobsCount: Number("int"), * // Type: "SYSTEM" || "CUSTOM", * // }, * // ], + * // TotalConcurrentJobs: Number("int"), + * // UnallocatedConcurrentJobs: Number("int"), * // }; * * ``` diff --git a/clients/client-mediaconvert/src/commands/UpdateQueueCommand.ts b/clients/client-mediaconvert/src/commands/UpdateQueueCommand.ts index 235e0ec0f5e28..4db4d445f623a 100644 --- a/clients/client-mediaconvert/src/commands/UpdateQueueCommand.ts +++ b/clients/client-mediaconvert/src/commands/UpdateQueueCommand.ts @@ -36,6 +36,7 @@ export interface UpdateQueueCommandOutput extends UpdateQueueResponse, __Metadat * // const { MediaConvertClient, UpdateQueueCommand } = require("@aws-sdk/client-mediaconvert"); // CommonJS import * const client = new MediaConvertClient(config); * const input = { // UpdateQueueRequest + * ConcurrentJobs: Number("int"), * Description: "STRING_VALUE", * Name: "STRING_VALUE", // required * ReservationPlanSettings: { // ReservationPlanSettings @@ -50,6 +51,7 @@ export interface UpdateQueueCommandOutput extends UpdateQueueResponse, __Metadat * // { // UpdateQueueResponse * // Queue: { // Queue * // Arn: "STRING_VALUE", + * // ConcurrentJobs: Number("int"), * // CreatedAt: new Date("TIMESTAMP"), * // Description: "STRING_VALUE", * // LastUpdated: new Date("TIMESTAMP"), @@ -64,6 +66,14 @@ export interface UpdateQueueCommandOutput extends UpdateQueueResponse, __Metadat * // ReservedSlots: Number("int"), * // Status: "ACTIVE" || "EXPIRED", * // }, + * // ServiceOverrides: [ // __listOfServiceOverride + * // { // ServiceOverride + * // Message: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // OverrideValue: "STRING_VALUE", + * // Value: "STRING_VALUE", + * // }, + * // ], * // Status: "ACTIVE" || "PAUSED", * // SubmittedJobsCount: Number("int"), * // Type: "SYSTEM" || "CUSTOM", diff --git a/clients/client-mediaconvert/src/models/models_2.ts b/clients/client-mediaconvert/src/models/models_2.ts index 87dd3b9c2c50d..a99fd86617a9a 100644 --- a/clients/client-mediaconvert/src/models/models_2.ts +++ b/clients/client-mediaconvert/src/models/models_2.ts @@ -65,6 +65,36 @@ export interface ReservationPlan { Status?: ReservationPlanStatus | undefined; } +/** + * A service override applied by MediaConvert to the settings that you have configured. If you see any overrides, we recommend that you contact AWS Support. + * @public + */ +export interface ServiceOverride { + /** + * Details about the service override that MediaConvert has applied. + * @public + */ + Message?: string | undefined; + + /** + * The name of the setting that MediaConvert has applied an override to. + * @public + */ + Name?: string | undefined; + + /** + * The current value of the service override that MediaConvert has applied. + * @public + */ + OverrideValue?: string | undefined; + + /** + * The value of the setting that you configured, prior to any overrides that MediaConvert has applied. + * @public + */ + Value?: string | undefined; +} + /** * @public * @enum @@ -90,6 +120,12 @@ export interface Queue { */ Arn?: string | undefined; + /** + * The maximum number of jobs your queue can process concurrently. + * @public + */ + ConcurrentJobs?: number | undefined; + /** * The timestamp in epoch seconds for when you created the queue. * @public @@ -132,6 +168,12 @@ export interface Queue { */ ReservationPlan?: ReservationPlan | undefined; + /** + * A list of any service overrides applied by MediaConvert to the settings that you have configured. If you see any overrides, we recommend that you contact AWS Support. + * @public + */ + ServiceOverrides?: ServiceOverride[] | undefined; + /** * Queues can be ACTIVE or PAUSED. If you pause a queue, the service won't begin processing jobs in that queue. Jobs that are running when you pause the queue continue to run until they finish or result in an error. * @public @@ -565,6 +607,12 @@ export interface ReservationPlanSettings { * @public */ export interface CreateQueueRequest { + /** + * Specify the maximum number of jobs your queue can process concurrently. For on-demand queues, the value you enter is constrained by your service quotas for Maximum concurrent jobs, per on-demand queue and Maximum concurrent jobs, per account. For reserved queues, specify the number of jobs you can process concurrently in your reservation plan instead. + * @public + */ + ConcurrentJobs?: number | undefined; + /** * Optional. A description of the queue that you are creating. * @public @@ -1143,6 +1191,18 @@ export interface ListQueuesResponse { * @public */ Queues?: Queue[] | undefined; + + /** + * The maximum number of jobs that MediaConvert can process at one time, across all of your on-demand queues in the current AWS Region. + * @public + */ + TotalConcurrentJobs?: number | undefined; + + /** + * The remaining number of concurrent jobs that are not associated with a queue and are available to allocate to a queue. You can allocate these jobs when you create or update a queue. + * @public + */ + UnallocatedConcurrentJobs?: number | undefined; } /** @@ -1457,6 +1517,12 @@ export interface UpdatePresetResponse { * @public */ export interface UpdateQueueRequest { + /** + * Specify the maximum number of jobs your queue can process concurrently. For on-demand queues, the value you enter is constrained by your service quotas for Maximum concurrent jobs, per on-demand queue and Maximum concurrent jobs, per account. For reserved queues, update your reservation plan instead in order to increase your yearly commitment. + * @public + */ + ConcurrentJobs?: number | undefined; + /** * The new description for the queue, if you are changing it. * @public diff --git a/clients/client-mediaconvert/src/protocols/Aws_restJson1.ts b/clients/client-mediaconvert/src/protocols/Aws_restJson1.ts index a2e356081e62a..b5fbe8f050a82 100644 --- a/clients/client-mediaconvert/src/protocols/Aws_restJson1.ts +++ b/clients/client-mediaconvert/src/protocols/Aws_restJson1.ts @@ -265,6 +265,7 @@ import { ReservationPlan, ReservationPlanSettings, ResourceTags, + ServiceOverride, TooManyRequestsException, } from "../models/models_2"; @@ -413,6 +414,7 @@ export const se_CreateQueueCommand = async ( let body: any; body = JSON.stringify( take(input, { + concurrentJobs: [, , `ConcurrentJobs`], description: [, , `Description`], name: [, , `Name`], pricingPlan: [, , `PricingPlan`], @@ -888,6 +890,7 @@ export const se_UpdateQueueCommand = async ( let body: any; body = JSON.stringify( take(input, { + concurrentJobs: [, , `ConcurrentJobs`], description: [, , `Description`], reservationPlanSettings: [, (_) => se_ReservationPlanSettings(_, context), `ReservationPlanSettings`], status: [, , `Status`], @@ -1310,6 +1313,8 @@ export const de_ListQueuesCommand = async ( const doc = take(data, { NextToken: [, __expectString, `nextToken`], Queues: [, (_) => de___listOfQueue(_, context), `queues`], + TotalConcurrentJobs: [, __expectInt32, `totalConcurrentJobs`], + UnallocatedConcurrentJobs: [, __expectInt32, `unallocatedConcurrentJobs`], }); Object.assign(contents, doc); return contents; @@ -4941,6 +4946,18 @@ const de___listOfQueueTransition = (output: any, context: __SerdeContext): Queue return retVal; }; +/** + * deserializeAws_restJson1__listOfServiceOverride + */ +const de___listOfServiceOverride = (output: any, context: __SerdeContext): ServiceOverride[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_ServiceOverride(entry, context); + }); + return retVal; +}; + // de___listOfTeletextPageType omitted. /** @@ -7202,6 +7219,7 @@ const de_ProresSettings = (output: any, context: __SerdeContext): ProresSettings const de_Queue = (output: any, context: __SerdeContext): Queue => { return take(output, { Arn: [, __expectString, `arn`], + ConcurrentJobs: [, __expectInt32, `concurrentJobs`], CreatedAt: [, (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), `createdAt`], Description: [, __expectString, `description`], LastUpdated: [, (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), `lastUpdated`], @@ -7209,6 +7227,7 @@ const de_Queue = (output: any, context: __SerdeContext): Queue => { PricingPlan: [, __expectString, `pricingPlan`], ProgressingJobsCount: [, __expectInt32, `progressingJobsCount`], ReservationPlan: [, (_: any) => de_ReservationPlan(_, context), `reservationPlan`], + ServiceOverrides: [, (_: any) => de___listOfServiceOverride(_, context), `serviceOverrides`], Status: [, __expectString, `status`], SubmittedJobsCount: [, __expectInt32, `submittedJobsCount`], Type: [, __expectString, `type`], @@ -7315,6 +7334,18 @@ const de_SccDestinationSettings = (output: any, context: __SerdeContext): SccDes }) as any; }; +/** + * deserializeAws_restJson1ServiceOverride + */ +const de_ServiceOverride = (output: any, context: __SerdeContext): ServiceOverride => { + return take(output, { + Message: [, __expectString, `message`], + Name: [, __expectString, `name`], + OverrideValue: [, __expectString, `overrideValue`], + Value: [, __expectString, `value`], + }) as any; +}; + /** * deserializeAws_restJson1SpekeKeyProvider */ diff --git a/codegen/sdk-codegen/aws-models/mediaconvert.json b/codegen/sdk-codegen/aws-models/mediaconvert.json index e38e1b46e872c..5136a2cc7fe09 100644 --- a/codegen/sdk-codegen/aws-models/mediaconvert.json +++ b/codegen/sdk-codegen/aws-models/mediaconvert.json @@ -5735,6 +5735,13 @@ "com.amazonaws.mediaconvert#CreateQueueRequest": { "type": "structure", "members": { + "ConcurrentJobs": { + "target": "com.amazonaws.mediaconvert#__integer", + "traits": { + "smithy.api#documentation": "Specify the maximum number of jobs your queue can process concurrently. For on-demand queues, the value you enter is constrained by your service quotas for Maximum concurrent jobs, per on-demand queue and Maximum concurrent jobs, per account. For reserved queues, specify the number of jobs you can process concurrently in your reservation plan instead.", + "smithy.api#jsonName": "concurrentJobs" + } + }, "Description": { "target": "com.amazonaws.mediaconvert#__string", "traits": { @@ -16063,6 +16070,20 @@ "smithy.api#documentation": "List of queues.", "smithy.api#jsonName": "queues" } + }, + "TotalConcurrentJobs": { + "target": "com.amazonaws.mediaconvert#__integer", + "traits": { + "smithy.api#documentation": "The maximum number of jobs that MediaConvert can process at one time, across all of your on-demand queues in the current AWS Region.", + "smithy.api#jsonName": "totalConcurrentJobs" + } + }, + "UnallocatedConcurrentJobs": { + "target": "com.amazonaws.mediaconvert#__integer", + "traits": { + "smithy.api#documentation": "The remaining number of concurrent jobs that are not associated with a queue and are available to allocate to a queue. You can allocate these jobs when you create or update a queue.", + "smithy.api#jsonName": "unallocatedConcurrentJobs" + } } }, "traits": { @@ -21517,6 +21538,13 @@ "smithy.api#jsonName": "arn" } }, + "ConcurrentJobs": { + "target": "com.amazonaws.mediaconvert#__integer", + "traits": { + "smithy.api#documentation": "The maximum number of jobs your queue can process concurrently.", + "smithy.api#jsonName": "concurrentJobs" + } + }, "CreatedAt": { "target": "com.amazonaws.mediaconvert#__timestampUnix", "traits": { @@ -21568,6 +21596,13 @@ "smithy.api#jsonName": "reservationPlan" } }, + "ServiceOverrides": { + "target": "com.amazonaws.mediaconvert#__listOfServiceOverride", + "traits": { + "smithy.api#documentation": "A list of any service overrides applied by MediaConvert to the settings that you have configured. If you see any overrides, we recommend that you contact AWS Support.", + "smithy.api#jsonName": "serviceOverrides" + } + }, "Status": { "target": "com.amazonaws.mediaconvert#QueueStatus", "traits": { @@ -22374,6 +22409,42 @@ "smithy.api#output": {} } }, + "com.amazonaws.mediaconvert#ServiceOverride": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.mediaconvert#__string", + "traits": { + "smithy.api#documentation": "Details about the service override that MediaConvert has applied.", + "smithy.api#jsonName": "message" + } + }, + "Name": { + "target": "com.amazonaws.mediaconvert#__string", + "traits": { + "smithy.api#documentation": "The name of the setting that MediaConvert has applied an override to.", + "smithy.api#jsonName": "name" + } + }, + "OverrideValue": { + "target": "com.amazonaws.mediaconvert#__string", + "traits": { + "smithy.api#documentation": "The current value of the service override that MediaConvert has applied.", + "smithy.api#jsonName": "overrideValue" + } + }, + "Value": { + "target": "com.amazonaws.mediaconvert#__string", + "traits": { + "smithy.api#documentation": "The value of the setting that you configured, prior to any overrides that MediaConvert has applied.", + "smithy.api#jsonName": "value" + } + } + }, + "traits": { + "smithy.api#documentation": "A service override applied by MediaConvert to the settings that you have configured. If you see any overrides, we recommend that you contact AWS Support." + } + }, "com.amazonaws.mediaconvert#SimulateReservedQueue": { "type": "enum", "members": { @@ -23664,6 +23735,13 @@ "com.amazonaws.mediaconvert#UpdateQueueRequest": { "type": "structure", "members": { + "ConcurrentJobs": { + "target": "com.amazonaws.mediaconvert#__integer", + "traits": { + "smithy.api#documentation": "Specify the maximum number of jobs your queue can process concurrently. For on-demand queues, the value you enter is constrained by your service quotas for Maximum concurrent jobs, per on-demand queue and Maximum concurrent jobs, per account. For reserved queues, update your reservation plan instead in order to increase your yearly commitment.", + "smithy.api#jsonName": "concurrentJobs" + } + }, "Description": { "target": "com.amazonaws.mediaconvert#__string", "traits": { @@ -27260,6 +27338,12 @@ "target": "com.amazonaws.mediaconvert#QueueTransition" } }, + "com.amazonaws.mediaconvert#__listOfServiceOverride": { + "type": "list", + "member": { + "target": "com.amazonaws.mediaconvert#ServiceOverride" + } + }, "com.amazonaws.mediaconvert#__listOfTeletextPageType": { "type": "list", "member": {