From 2905d176eadbc9af7f367eef6adc060da887d612 Mon Sep 17 00:00:00 2001 From: awstools Date: Thu, 15 Feb 2024 19:17:47 +0000 Subject: [PATCH] feat(client-codepipeline): Add ability to override timeout on action level. --- .../src/commands/CreatePipelineCommand.ts | 2 + .../src/commands/GetPipelineCommand.ts | 1 + .../commands/RetryStageExecutionCommand.ts | 12 ++- .../src/commands/UpdatePipelineCommand.ts | 2 + .../src/models/models_0.ts | 101 ++++++++++++------ .../sdk-codegen/aws-models/codepipeline.json | 67 +++++++----- 6 files changed, 121 insertions(+), 64 deletions(-) diff --git a/clients/client-codepipeline/src/commands/CreatePipelineCommand.ts b/clients/client-codepipeline/src/commands/CreatePipelineCommand.ts index 8609d3d3f1a8..9324dd651efa 100644 --- a/clients/client-codepipeline/src/commands/CreatePipelineCommand.ts +++ b/clients/client-codepipeline/src/commands/CreatePipelineCommand.ts @@ -98,6 +98,7 @@ export interface CreatePipelineCommandOutput extends CreatePipelineOutput, __Met * roleArn: "STRING_VALUE", * region: "STRING_VALUE", * namespace: "STRING_VALUE", + * timeoutInMinutes: Number("int"), * }, * ], * }, @@ -238,6 +239,7 @@ export interface CreatePipelineCommandOutput extends CreatePipelineOutput, __Met * // roleArn: "STRING_VALUE", * // region: "STRING_VALUE", * // namespace: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), * // }, * // ], * // }, diff --git a/clients/client-codepipeline/src/commands/GetPipelineCommand.ts b/clients/client-codepipeline/src/commands/GetPipelineCommand.ts index 5cee7dbbee62..ae8cbbb06568 100644 --- a/clients/client-codepipeline/src/commands/GetPipelineCommand.ts +++ b/clients/client-codepipeline/src/commands/GetPipelineCommand.ts @@ -100,6 +100,7 @@ export interface GetPipelineCommandOutput extends GetPipelineOutput, __MetadataB * // roleArn: "STRING_VALUE", * // region: "STRING_VALUE", * // namespace: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), * // }, * // ], * // }, diff --git a/clients/client-codepipeline/src/commands/RetryStageExecutionCommand.ts b/clients/client-codepipeline/src/commands/RetryStageExecutionCommand.ts index 83287ac2b009..094760ac8321 100644 --- a/clients/client-codepipeline/src/commands/RetryStageExecutionCommand.ts +++ b/clients/client-codepipeline/src/commands/RetryStageExecutionCommand.ts @@ -28,10 +28,14 @@ export interface RetryStageExecutionCommandOutput extends RetryStageExecutionOut /** * @public - *

You can retry a stage that has failed without having to run a pipeline again from the beginning. You do - * this by either retrying the failed actions in a stage or by retrying all actions in the stage starting from the first action in the stage. When you retry the failed actions in a stage, - * all actions that are still in progress continue working, and failed actions are - * triggered again. When you retry a failed stage from the first action in the stage, the stage cannot have any actions in progress. Before a stage can be retried, it must either have all actions failed or some actions failed and some succeeded.

+ *

You can retry a stage that has failed without having to run a pipeline again from + * the beginning. You do this by either retrying the failed actions in a stage or by + * retrying all actions in the stage starting from the first action in the stage. When you + * retry the failed actions in a stage, all actions that are still in progress continue + * working, and failed actions are triggered again. When you retry a failed stage from the + * first action in the stage, the stage cannot have any actions in progress. Before a stage + * can be retried, it must either have all actions failed or some actions failed and some + * succeeded.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-codepipeline/src/commands/UpdatePipelineCommand.ts b/clients/client-codepipeline/src/commands/UpdatePipelineCommand.ts index c59ad14a6910..6ce6837038b5 100644 --- a/clients/client-codepipeline/src/commands/UpdatePipelineCommand.ts +++ b/clients/client-codepipeline/src/commands/UpdatePipelineCommand.ts @@ -95,6 +95,7 @@ export interface UpdatePipelineCommandOutput extends UpdatePipelineOutput, __Met * roleArn: "STRING_VALUE", * region: "STRING_VALUE", * namespace: "STRING_VALUE", + * timeoutInMinutes: Number("int"), * }, * ], * }, @@ -229,6 +230,7 @@ export interface UpdatePipelineCommandOutput extends UpdatePipelineOutput, __Met * // roleArn: "STRING_VALUE", * // region: "STRING_VALUE", * // namespace: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), * // }, * // ], * // }, diff --git a/clients/client-codepipeline/src/models/models_0.ts b/clients/client-codepipeline/src/models/models_0.ts index 639c3535d8fb..12fc9d4be6cc 100644 --- a/clients/client-codepipeline/src/models/models_0.ts +++ b/clients/client-codepipeline/src/models/models_0.ts @@ -485,6 +485,14 @@ export interface ActionDeclaration { * this action fall under this namespace.

*/ namespace?: string; + + /** + * @public + *

A timeout duration in minutes that can be applied against the ActionType’s default + * timeout value specified in Quotas for CodePipeline + * . This attribute is available only to the manual approval ActionType.

+ */ + timeoutInMinutes?: number; } /** @@ -835,7 +843,8 @@ export type StartTimeRange = (typeof StartTimeRange)[keyof typeof StartTimeRange /** * @public - *

The field that specifies to filter on the latest execution in the pipeline.

+ *

The field that specifies to filter on the latest execution in the + * pipeline.

* *

Filtering on the latest execution is available for executions run on or after * February 08, 2024.

@@ -2002,18 +2011,21 @@ export interface StageDeclaration { /** * @public - *

The Git repository branches specified as filter criteria to start the pipeline.

+ *

The Git repository branches specified as filter criteria to start the + * pipeline.

*/ export interface GitBranchFilterCriteria { /** * @public - *

The list of patterns of Git branches that, when a commit is pushed, are to be included as criteria that starts the pipeline.

+ *

The list of patterns of Git branches that, when a commit is pushed, are to be + * included as criteria that starts the pipeline.

*/ includes?: string[]; /** * @public - *

The list of patterns of Git branches that, when a commit is pushed, are to be excluded from starting the pipeline.

+ *

The list of patterns of Git branches that, when a commit is pushed, are to be + * excluded from starting the pipeline.

*/ excludes?: string[]; } @@ -2035,42 +2047,49 @@ export type GitPullRequestEventType = (typeof GitPullRequestEventType)[keyof typ /** * @public - *

The Git repository file paths specified as filter criteria to start the pipeline.

+ *

The Git repository file paths specified as filter criteria to start the + * pipeline.

*/ export interface GitFilePathFilterCriteria { /** * @public - *

The list of patterns of Git repository file paths that, when a commit is pushed, are to be included as criteria that starts the pipeline.

+ *

The list of patterns of Git repository file paths that, when a commit is pushed, + * are to be included as criteria that starts the pipeline.

*/ includes?: string[]; /** * @public - *

The list of patterns of Git repository file paths that, when a commit is pushed, are to be excluded from starting the pipeline.

+ *

The list of patterns of Git repository file paths that, when a commit is pushed, + * are to be excluded from starting the pipeline.

*/ excludes?: string[]; } /** * @public - *

The event criteria for the pull request trigger configuration, such as the lists of branches or file paths to include and exclude.

+ *

The event criteria for the pull request trigger configuration, such as the lists of + * branches or file paths to include and exclude.

*/ export interface GitPullRequestFilter { /** * @public - *

The field that specifies which pull request events to filter on (opened, updated, closed) for the trigger configuration.

+ *

The field that specifies which pull request events to filter on (opened, updated, + * closed) for the trigger configuration.

*/ events?: GitPullRequestEventType[]; /** * @public - *

The field that specifies to filter on branches for the pull request trigger configuration.

+ *

The field that specifies to filter on branches for the pull request trigger + * configuration.

*/ branches?: GitBranchFilterCriteria; /** * @public - *

The field that specifies to filter on file paths for the pull request trigger configuration.

+ *

The field that specifies to filter on file paths for the pull request trigger + * configuration.

*/ filePaths?: GitFilePathFilterCriteria; } @@ -2098,7 +2117,9 @@ export interface GitTagFilterCriteria { /** * @public - *

The event criteria that specify when a specified repository event will start the pipeline for the specified trigger configuration, such as the lists of Git tags to include and exclude.

+ *

The event criteria that specify when a specified repository event will start the + * pipeline for the specified trigger configuration, such as the lists of Git tags to + * include and exclude.

*/ export interface GitPushFilter { /** @@ -2110,13 +2131,15 @@ export interface GitPushFilter { /** * @public - *

The field that specifies to filter on branches for the push trigger configuration.

+ *

The field that specifies to filter on branches for the push trigger + * configuration.

*/ branches?: GitBranchFilterCriteria; /** * @public - *

The field that specifies to filter on file paths for the push trigger configuration.

+ *

The field that specifies to filter on file paths for the push trigger + * configuration.

*/ filePaths?: GitFilePathFilterCriteria; } @@ -2151,7 +2174,8 @@ export interface GitConfiguration { /** * @public - *

The field where the repository event that will start the pipeline is specified as pull requests.

+ *

The field where the repository event that will start the pipeline is specified as + * pull requests.

*/ pullRequest?: GitPullRequestFilter[]; } @@ -2218,7 +2242,8 @@ export interface PipelineVariableDeclaration { /** * @public - *

The description of a pipeline-level variable. It's used to add additional context about the variable, and not being used at time when pipeline executes.

+ *

The description of a pipeline-level variable. It's used to add additional context + * about the variable, and not being used at time when pipeline executes.

*/ description?: string; } @@ -2284,15 +2309,16 @@ export interface PipelineDeclaration { /** * @public - *

The method that the pipeline will use to handle multiple executions. The default mode is SUPERSEDED.

+ *

The method that the pipeline will use to handle multiple executions. The default + * mode is SUPERSEDED.

*/ executionMode?: ExecutionMode; /** * @public - *

CodePipeline provides the following pipeline types, which differ in characteristics and - * price, so that you can tailor your pipeline features and cost to the needs of your - * applications.

+ *

CodePipeline provides the following pipeline types, which differ in + * characteristics and price, so that you can tailor your pipeline features and cost to the + * needs of your applications.

*