From 5e8b92d3ad100d0a2a75fbddb18205b6154c778c Mon Sep 17 00:00:00 2001 From: awstools Date: Tue, 30 Jul 2024 18:19:26 +0000 Subject: [PATCH] feat(client-codepipeline): AWS CodePipeline V2 type pipelines now support stage level conditions to enable development teams to safely release changes that meet quality and compliance requirements. --- clients/client-codepipeline/README.md | 24 + .../client-codepipeline/src/CodePipeline.ts | 64 + .../src/CodePipelineClient.ts | 12 + .../src/commands/CreatePipelineCommand.ts | 174 +- .../src/commands/GetPipelineCommand.ts | 87 +- .../src/commands/GetPipelineStateCommand.ts | 123 ++ .../src/commands/ListRuleExecutionsCommand.ts | 154 ++ .../src/commands/ListRuleTypesCommand.ts | 120 ++ .../commands/OverrideStageConditionCommand.ts | 107 + .../src/commands/PutActionRevisionCommand.ts | 3 + .../commands/RetryStageExecutionCommand.ts | 3 + .../src/commands/UpdatePipelineCommand.ts | 174 +- .../client-codepipeline/src/commands/index.ts | 3 + .../src/models/models_0.ts | 1325 ++++++++++-- .../pagination/ListRuleExecutionsPaginator.ts | 24 + .../src/pagination/index.ts | 1 + .../src/protocols/Aws_json1_1.ts | 409 +++- .../sdk-codegen/aws-models/codepipeline.json | 1779 ++++++++++++++--- 18 files changed, 4079 insertions(+), 507 deletions(-) create mode 100644 clients/client-codepipeline/src/commands/ListRuleExecutionsCommand.ts create mode 100644 clients/client-codepipeline/src/commands/ListRuleTypesCommand.ts create mode 100644 clients/client-codepipeline/src/commands/OverrideStageConditionCommand.ts create mode 100644 clients/client-codepipeline/src/pagination/ListRuleExecutionsPaginator.ts diff --git a/clients/client-codepipeline/README.md b/clients/client-codepipeline/README.md index 35afb9a1bf7c..7a013c45f009 100644 --- a/clients/client-codepipeline/README.md +++ b/clients/client-codepipeline/README.md @@ -556,6 +556,22 @@ ListPipelines [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/codepipeline/command/ListPipelinesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-codepipeline/Interface/ListPipelinesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-codepipeline/Interface/ListPipelinesCommandOutput/) + +
+ +ListRuleExecutions + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/codepipeline/command/ListRuleExecutionsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-codepipeline/Interface/ListRuleExecutionsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-codepipeline/Interface/ListRuleExecutionsCommandOutput/) + +
+
+ +ListRuleTypes + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/codepipeline/command/ListRuleTypesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-codepipeline/Interface/ListRuleTypesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-codepipeline/Interface/ListRuleTypesCommandOutput/) +
@@ -572,6 +588,14 @@ ListWebhooks [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/codepipeline/command/ListWebhooksCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-codepipeline/Interface/ListWebhooksCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-codepipeline/Interface/ListWebhooksCommandOutput/) +
+
+ +OverrideStageCondition + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/codepipeline/command/OverrideStageConditionCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-codepipeline/Interface/OverrideStageConditionCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-codepipeline/Interface/OverrideStageConditionCommandOutput/) +
diff --git a/clients/client-codepipeline/src/CodePipeline.ts b/clients/client-codepipeline/src/CodePipeline.ts index 85f74a62d267..a350c104717a 100644 --- a/clients/client-codepipeline/src/CodePipeline.ts +++ b/clients/client-codepipeline/src/CodePipeline.ts @@ -99,6 +99,16 @@ import { ListPipelinesCommandInput, ListPipelinesCommandOutput, } from "./commands/ListPipelinesCommand"; +import { + ListRuleExecutionsCommand, + ListRuleExecutionsCommandInput, + ListRuleExecutionsCommandOutput, +} from "./commands/ListRuleExecutionsCommand"; +import { + ListRuleTypesCommand, + ListRuleTypesCommandInput, + ListRuleTypesCommandOutput, +} from "./commands/ListRuleTypesCommand"; import { ListTagsForResourceCommand, ListTagsForResourceCommandInput, @@ -109,6 +119,11 @@ import { ListWebhooksCommandInput, ListWebhooksCommandOutput, } from "./commands/ListWebhooksCommand"; +import { + OverrideStageConditionCommand, + OverrideStageConditionCommandInput, + OverrideStageConditionCommandOutput, +} from "./commands/OverrideStageConditionCommand"; import { PollForJobsCommand, PollForJobsCommandInput, PollForJobsCommandOutput } from "./commands/PollForJobsCommand"; import { PollForThirdPartyJobsCommand, @@ -209,8 +224,11 @@ const commands = { ListActionTypesCommand, ListPipelineExecutionsCommand, ListPipelinesCommand, + ListRuleExecutionsCommand, + ListRuleTypesCommand, ListTagsForResourceCommand, ListWebhooksCommand, + OverrideStageConditionCommand, PollForJobsCommand, PollForThirdPartyJobsCommand, PutActionRevisionCommand, @@ -533,6 +551,35 @@ export interface CodePipeline { cb: (err: any, data?: ListPipelinesCommandOutput) => void ): void; + /** + * @see {@link ListRuleExecutionsCommand} + */ + listRuleExecutions( + args: ListRuleExecutionsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listRuleExecutions( + args: ListRuleExecutionsCommandInput, + cb: (err: any, data?: ListRuleExecutionsCommandOutput) => void + ): void; + listRuleExecutions( + args: ListRuleExecutionsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListRuleExecutionsCommandOutput) => void + ): void; + + /** + * @see {@link ListRuleTypesCommand} + */ + listRuleTypes(): Promise; + listRuleTypes(args: ListRuleTypesCommandInput, options?: __HttpHandlerOptions): Promise; + listRuleTypes(args: ListRuleTypesCommandInput, cb: (err: any, data?: ListRuleTypesCommandOutput) => void): void; + listRuleTypes( + args: ListRuleTypesCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListRuleTypesCommandOutput) => void + ): void; + /** * @see {@link ListTagsForResourceCommand} */ @@ -562,6 +609,23 @@ export interface CodePipeline { cb: (err: any, data?: ListWebhooksCommandOutput) => void ): void; + /** + * @see {@link OverrideStageConditionCommand} + */ + overrideStageCondition( + args: OverrideStageConditionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + overrideStageCondition( + args: OverrideStageConditionCommandInput, + cb: (err: any, data?: OverrideStageConditionCommandOutput) => void + ): void; + overrideStageCondition( + args: OverrideStageConditionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: OverrideStageConditionCommandOutput) => void + ): void; + /** * @see {@link PollForJobsCommand} */ diff --git a/clients/client-codepipeline/src/CodePipelineClient.ts b/clients/client-codepipeline/src/CodePipelineClient.ts index dbbd99f8ad59..e641825a414b 100644 --- a/clients/client-codepipeline/src/CodePipelineClient.ts +++ b/clients/client-codepipeline/src/CodePipelineClient.ts @@ -103,11 +103,17 @@ import { ListPipelineExecutionsCommandOutput, } from "./commands/ListPipelineExecutionsCommand"; import { ListPipelinesCommandInput, ListPipelinesCommandOutput } from "./commands/ListPipelinesCommand"; +import { ListRuleExecutionsCommandInput, ListRuleExecutionsCommandOutput } from "./commands/ListRuleExecutionsCommand"; +import { ListRuleTypesCommandInput, ListRuleTypesCommandOutput } from "./commands/ListRuleTypesCommand"; import { ListTagsForResourceCommandInput, ListTagsForResourceCommandOutput, } from "./commands/ListTagsForResourceCommand"; import { ListWebhooksCommandInput, ListWebhooksCommandOutput } from "./commands/ListWebhooksCommand"; +import { + OverrideStageConditionCommandInput, + OverrideStageConditionCommandOutput, +} from "./commands/OverrideStageConditionCommand"; import { PollForJobsCommandInput, PollForJobsCommandOutput } from "./commands/PollForJobsCommand"; import { PollForThirdPartyJobsCommandInput, @@ -188,8 +194,11 @@ export type ServiceInputTypes = | ListActionTypesCommandInput | ListPipelineExecutionsCommandInput | ListPipelinesCommandInput + | ListRuleExecutionsCommandInput + | ListRuleTypesCommandInput | ListTagsForResourceCommandInput | ListWebhooksCommandInput + | OverrideStageConditionCommandInput | PollForJobsCommandInput | PollForThirdPartyJobsCommandInput | PutActionRevisionCommandInput @@ -233,8 +242,11 @@ export type ServiceOutputTypes = | ListActionTypesCommandOutput | ListPipelineExecutionsCommandOutput | ListPipelinesCommandOutput + | ListRuleExecutionsCommandOutput + | ListRuleTypesCommandOutput | ListTagsForResourceCommandOutput | ListWebhooksCommandOutput + | OverrideStageConditionCommandOutput | PollForJobsCommandOutput | PollForThirdPartyJobsCommandOutput | PutActionRevisionCommandOutput diff --git a/clients/client-codepipeline/src/commands/CreatePipelineCommand.ts b/clients/client-codepipeline/src/commands/CreatePipelineCommand.ts index 99d64dc8616a..2d6631fb54d9 100644 --- a/clients/client-codepipeline/src/commands/CreatePipelineCommand.ts +++ b/clients/client-codepipeline/src/commands/CreatePipelineCommand.ts @@ -102,7 +102,92 @@ export interface CreatePipelineCommandOutput extends CreatePipelineOutput, __Met * }, * ], * onFailure: { // FailureConditions - * result: "ROLLBACK", + * result: "ROLLBACK" || "FAIL", + * conditions: [ // ConditionList + * { // Condition + * result: "ROLLBACK" || "FAIL", + * rules: [ // RuleDeclarationList + * { // RuleDeclaration + * name: "STRING_VALUE", // required + * ruleTypeId: { // RuleTypeId + * category: "Rule", // required + * owner: "AWS", + * provider: "STRING_VALUE", // required + * version: "STRING_VALUE", + * }, + * configuration: { // RuleConfigurationMap + * "": "STRING_VALUE", + * }, + * inputArtifacts: [ + * { + * name: "STRING_VALUE", // required + * }, + * ], + * roleArn: "STRING_VALUE", + * region: "STRING_VALUE", + * timeoutInMinutes: Number("int"), + * }, + * ], + * }, + * ], + * }, + * onSuccess: { // SuccessConditions + * conditions: [ // required + * { + * result: "ROLLBACK" || "FAIL", + * rules: [ + * { + * name: "STRING_VALUE", // required + * ruleTypeId: { + * category: "Rule", // required + * owner: "AWS", + * provider: "STRING_VALUE", // required + * version: "STRING_VALUE", + * }, + * configuration: { + * "": "STRING_VALUE", + * }, + * inputArtifacts: [ + * { + * name: "STRING_VALUE", // required + * }, + * ], + * roleArn: "STRING_VALUE", + * region: "STRING_VALUE", + * timeoutInMinutes: Number("int"), + * }, + * ], + * }, + * ], + * }, + * beforeEntry: { // BeforeEntryConditions + * conditions: [ // required + * { + * result: "ROLLBACK" || "FAIL", + * rules: [ + * { + * name: "STRING_VALUE", // required + * ruleTypeId: { + * category: "Rule", // required + * owner: "AWS", + * provider: "STRING_VALUE", // required + * version: "STRING_VALUE", + * }, + * configuration: { + * "": "STRING_VALUE", + * }, + * inputArtifacts: [ + * { + * name: "STRING_VALUE", // required + * }, + * ], + * roleArn: "STRING_VALUE", + * region: "STRING_VALUE", + * timeoutInMinutes: Number("int"), + * }, + * ], + * }, + * ], * }, * }, * ], @@ -246,7 +331,92 @@ export interface CreatePipelineCommandOutput extends CreatePipelineOutput, __Met * // }, * // ], * // onFailure: { // FailureConditions - * // result: "ROLLBACK", + * // result: "ROLLBACK" || "FAIL", + * // conditions: [ // ConditionList + * // { // Condition + * // result: "ROLLBACK" || "FAIL", + * // rules: [ // RuleDeclarationList + * // { // RuleDeclaration + * // name: "STRING_VALUE", // required + * // ruleTypeId: { // RuleTypeId + * // category: "Rule", // required + * // owner: "AWS", + * // provider: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }, + * // configuration: { // RuleConfigurationMap + * // "": "STRING_VALUE", + * // }, + * // inputArtifacts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // roleArn: "STRING_VALUE", + * // region: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), + * // }, + * // ], + * // }, + * // ], + * // }, + * // onSuccess: { // SuccessConditions + * // conditions: [ // required + * // { + * // result: "ROLLBACK" || "FAIL", + * // rules: [ + * // { + * // name: "STRING_VALUE", // required + * // ruleTypeId: { + * // category: "Rule", // required + * // owner: "AWS", + * // provider: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }, + * // configuration: { + * // "": "STRING_VALUE", + * // }, + * // inputArtifacts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // roleArn: "STRING_VALUE", + * // region: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), + * // }, + * // ], + * // }, + * // ], + * // }, + * // beforeEntry: { // BeforeEntryConditions + * // conditions: [ // required + * // { + * // result: "ROLLBACK" || "FAIL", + * // rules: [ + * // { + * // name: "STRING_VALUE", // required + * // ruleTypeId: { + * // category: "Rule", // required + * // owner: "AWS", + * // provider: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }, + * // configuration: { + * // "": "STRING_VALUE", + * // }, + * // inputArtifacts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // roleArn: "STRING_VALUE", + * // region: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), + * // }, + * // ], + * // }, + * // ], * // }, * // }, * // ], diff --git a/clients/client-codepipeline/src/commands/GetPipelineCommand.ts b/clients/client-codepipeline/src/commands/GetPipelineCommand.ts index cde625fd5bf8..d13520dc33dd 100644 --- a/clients/client-codepipeline/src/commands/GetPipelineCommand.ts +++ b/clients/client-codepipeline/src/commands/GetPipelineCommand.ts @@ -104,7 +104,92 @@ export interface GetPipelineCommandOutput extends GetPipelineOutput, __MetadataB * // }, * // ], * // onFailure: { // FailureConditions - * // result: "ROLLBACK", + * // result: "ROLLBACK" || "FAIL", + * // conditions: [ // ConditionList + * // { // Condition + * // result: "ROLLBACK" || "FAIL", + * // rules: [ // RuleDeclarationList + * // { // RuleDeclaration + * // name: "STRING_VALUE", // required + * // ruleTypeId: { // RuleTypeId + * // category: "Rule", // required + * // owner: "AWS", + * // provider: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }, + * // configuration: { // RuleConfigurationMap + * // "": "STRING_VALUE", + * // }, + * // inputArtifacts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // roleArn: "STRING_VALUE", + * // region: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), + * // }, + * // ], + * // }, + * // ], + * // }, + * // onSuccess: { // SuccessConditions + * // conditions: [ // required + * // { + * // result: "ROLLBACK" || "FAIL", + * // rules: [ + * // { + * // name: "STRING_VALUE", // required + * // ruleTypeId: { + * // category: "Rule", // required + * // owner: "AWS", + * // provider: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }, + * // configuration: { + * // "": "STRING_VALUE", + * // }, + * // inputArtifacts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // roleArn: "STRING_VALUE", + * // region: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), + * // }, + * // ], + * // }, + * // ], + * // }, + * // beforeEntry: { // BeforeEntryConditions + * // conditions: [ // required + * // { + * // result: "ROLLBACK" || "FAIL", + * // rules: [ + * // { + * // name: "STRING_VALUE", // required + * // ruleTypeId: { + * // category: "Rule", // required + * // owner: "AWS", + * // provider: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }, + * // configuration: { + * // "": "STRING_VALUE", + * // }, + * // inputArtifacts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // roleArn: "STRING_VALUE", + * // region: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), + * // }, + * // ], + * // }, + * // ], * // }, * // }, * // ], diff --git a/clients/client-codepipeline/src/commands/GetPipelineStateCommand.ts b/clients/client-codepipeline/src/commands/GetPipelineStateCommand.ts index 98f7f6af843d..cd8371203bfc 100644 --- a/clients/client-codepipeline/src/commands/GetPipelineStateCommand.ts +++ b/clients/client-codepipeline/src/commands/GetPipelineStateCommand.ts @@ -102,6 +102,129 @@ export interface GetPipelineStateCommandOutput extends GetPipelineStateOutput, _ * // status: "Cancelled" || "InProgress" || "Failed" || "Stopped" || "Stopping" || "Succeeded", // required * // type: "STANDARD" || "ROLLBACK", * // }, + * // beforeEntryConditionState: { // StageConditionState + * // latestExecution: { // StageConditionsExecution + * // status: "InProgress" || "Failed" || "Errored" || "Succeeded" || "Cancelled" || "Abandoned" || "Overridden", + * // summary: "STRING_VALUE", + * // }, + * // conditionStates: [ // ConditionStateList + * // { // ConditionState + * // latestExecution: { // ConditionExecution + * // status: "InProgress" || "Failed" || "Errored" || "Succeeded" || "Cancelled" || "Abandoned" || "Overridden", + * // summary: "STRING_VALUE", + * // lastStatusChange: new Date("TIMESTAMP"), + * // }, + * // ruleStates: [ // RuleStateList + * // { // RuleState + * // ruleName: "STRING_VALUE", + * // currentRevision: { // RuleRevision + * // revisionId: "STRING_VALUE", // required + * // revisionChangeId: "STRING_VALUE", // required + * // created: new Date("TIMESTAMP"), // required + * // }, + * // latestExecution: { // RuleExecution + * // ruleExecutionId: "STRING_VALUE", + * // status: "InProgress" || "Abandoned" || "Succeeded" || "Failed", + * // summary: "STRING_VALUE", + * // lastStatusChange: new Date("TIMESTAMP"), + * // token: "STRING_VALUE", + * // lastUpdatedBy: "STRING_VALUE", + * // externalExecutionId: "STRING_VALUE", + * // externalExecutionUrl: "STRING_VALUE", + * // errorDetails: { + * // code: "STRING_VALUE", + * // message: "STRING_VALUE", + * // }, + * // }, + * // entityUrl: "STRING_VALUE", + * // revisionUrl: "STRING_VALUE", + * // }, + * // ], + * // }, + * // ], + * // }, + * // onSuccessConditionState: { + * // latestExecution: { + * // status: "InProgress" || "Failed" || "Errored" || "Succeeded" || "Cancelled" || "Abandoned" || "Overridden", + * // summary: "STRING_VALUE", + * // }, + * // conditionStates: [ + * // { + * // latestExecution: { + * // status: "InProgress" || "Failed" || "Errored" || "Succeeded" || "Cancelled" || "Abandoned" || "Overridden", + * // summary: "STRING_VALUE", + * // lastStatusChange: new Date("TIMESTAMP"), + * // }, + * // ruleStates: [ + * // { + * // ruleName: "STRING_VALUE", + * // currentRevision: { + * // revisionId: "STRING_VALUE", // required + * // revisionChangeId: "STRING_VALUE", // required + * // created: new Date("TIMESTAMP"), // required + * // }, + * // latestExecution: { + * // ruleExecutionId: "STRING_VALUE", + * // status: "InProgress" || "Abandoned" || "Succeeded" || "Failed", + * // summary: "STRING_VALUE", + * // lastStatusChange: new Date("TIMESTAMP"), + * // token: "STRING_VALUE", + * // lastUpdatedBy: "STRING_VALUE", + * // externalExecutionId: "STRING_VALUE", + * // externalExecutionUrl: "STRING_VALUE", + * // errorDetails: { + * // code: "STRING_VALUE", + * // message: "STRING_VALUE", + * // }, + * // }, + * // entityUrl: "STRING_VALUE", + * // revisionUrl: "STRING_VALUE", + * // }, + * // ], + * // }, + * // ], + * // }, + * // onFailureConditionState: { + * // latestExecution: { + * // status: "InProgress" || "Failed" || "Errored" || "Succeeded" || "Cancelled" || "Abandoned" || "Overridden", + * // summary: "STRING_VALUE", + * // }, + * // conditionStates: [ + * // { + * // latestExecution: { + * // status: "InProgress" || "Failed" || "Errored" || "Succeeded" || "Cancelled" || "Abandoned" || "Overridden", + * // summary: "STRING_VALUE", + * // lastStatusChange: new Date("TIMESTAMP"), + * // }, + * // ruleStates: [ + * // { + * // ruleName: "STRING_VALUE", + * // currentRevision: { + * // revisionId: "STRING_VALUE", // required + * // revisionChangeId: "STRING_VALUE", // required + * // created: new Date("TIMESTAMP"), // required + * // }, + * // latestExecution: { + * // ruleExecutionId: "STRING_VALUE", + * // status: "InProgress" || "Abandoned" || "Succeeded" || "Failed", + * // summary: "STRING_VALUE", + * // lastStatusChange: new Date("TIMESTAMP"), + * // token: "STRING_VALUE", + * // lastUpdatedBy: "STRING_VALUE", + * // externalExecutionId: "STRING_VALUE", + * // externalExecutionUrl: "STRING_VALUE", + * // errorDetails: { + * // code: "STRING_VALUE", + * // message: "STRING_VALUE", + * // }, + * // }, + * // entityUrl: "STRING_VALUE", + * // revisionUrl: "STRING_VALUE", + * // }, + * // ], + * // }, + * // ], + * // }, * // }, * // ], * // created: new Date("TIMESTAMP"), diff --git a/clients/client-codepipeline/src/commands/ListRuleExecutionsCommand.ts b/clients/client-codepipeline/src/commands/ListRuleExecutionsCommand.ts new file mode 100644 index 000000000000..8c4cb4519ade --- /dev/null +++ b/clients/client-codepipeline/src/commands/ListRuleExecutionsCommand.ts @@ -0,0 +1,154 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { CodePipelineClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../CodePipelineClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListRuleExecutionsInput, ListRuleExecutionsOutput } from "../models/models_0"; +import { de_ListRuleExecutionsCommand, se_ListRuleExecutionsCommand } from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListRuleExecutionsCommand}. + */ +export interface ListRuleExecutionsCommandInput extends ListRuleExecutionsInput {} +/** + * @public + * + * The output of {@link ListRuleExecutionsCommand}. + */ +export interface ListRuleExecutionsCommandOutput extends ListRuleExecutionsOutput, __MetadataBearer {} + +/** + *

Lists the rule executions that have occurred in a pipeline configured for conditions with rules.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CodePipelineClient, ListRuleExecutionsCommand } from "@aws-sdk/client-codepipeline"; // ES Modules import + * // const { CodePipelineClient, ListRuleExecutionsCommand } = require("@aws-sdk/client-codepipeline"); // CommonJS import + * const client = new CodePipelineClient(config); + * const input = { // ListRuleExecutionsInput + * pipelineName: "STRING_VALUE", // required + * filter: { // RuleExecutionFilter + * pipelineExecutionId: "STRING_VALUE", + * latestInPipelineExecution: { // LatestInPipelineExecutionFilter + * pipelineExecutionId: "STRING_VALUE", // required + * startTimeRange: "Latest" || "All", // required + * }, + * }, + * maxResults: Number("int"), + * nextToken: "STRING_VALUE", + * }; + * const command = new ListRuleExecutionsCommand(input); + * const response = await client.send(command); + * // { // ListRuleExecutionsOutput + * // ruleExecutionDetails: [ // RuleExecutionDetailList + * // { // RuleExecutionDetail + * // pipelineExecutionId: "STRING_VALUE", + * // ruleExecutionId: "STRING_VALUE", + * // pipelineVersion: Number("int"), + * // stageName: "STRING_VALUE", + * // ruleName: "STRING_VALUE", + * // startTime: new Date("TIMESTAMP"), + * // lastUpdateTime: new Date("TIMESTAMP"), + * // updatedBy: "STRING_VALUE", + * // status: "InProgress" || "Abandoned" || "Succeeded" || "Failed", + * // input: { // RuleExecutionInput + * // ruleTypeId: { // RuleTypeId + * // category: "Rule", // required + * // owner: "AWS", + * // provider: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }, + * // configuration: { // RuleConfigurationMap + * // "": "STRING_VALUE", + * // }, + * // resolvedConfiguration: { // ResolvedRuleConfigurationMap + * // "": "STRING_VALUE", + * // }, + * // roleArn: "STRING_VALUE", + * // region: "STRING_VALUE", + * // inputArtifacts: [ // ArtifactDetailList + * // { // ArtifactDetail + * // name: "STRING_VALUE", + * // s3location: { // S3Location + * // bucket: "STRING_VALUE", + * // key: "STRING_VALUE", + * // }, + * // }, + * // ], + * // }, + * // output: { // RuleExecutionOutput + * // executionResult: { // RuleExecutionResult + * // externalExecutionId: "STRING_VALUE", + * // externalExecutionSummary: "STRING_VALUE", + * // externalExecutionUrl: "STRING_VALUE", + * // errorDetails: { // ErrorDetails + * // code: "STRING_VALUE", + * // message: "STRING_VALUE", + * // }, + * // }, + * // }, + * // }, + * // ], + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListRuleExecutionsCommandInput - {@link ListRuleExecutionsCommandInput} + * @returns {@link ListRuleExecutionsCommandOutput} + * @see {@link ListRuleExecutionsCommandInput} for command's `input` shape. + * @see {@link ListRuleExecutionsCommandOutput} for command's `response` shape. + * @see {@link CodePipelineClientResolvedConfig | config} for CodePipelineClient's `config` shape. + * + * @throws {@link InvalidNextTokenException} (client fault) + *

The next token was specified in an invalid format. Make sure that the next token + * you provide is the token returned by a previous call.

+ * + * @throws {@link PipelineExecutionNotFoundException} (client fault) + *

The pipeline execution was specified in an invalid format or cannot be found, or an + * execution ID does not belong to the specified pipeline.

+ * + * @throws {@link PipelineNotFoundException} (client fault) + *

The pipeline was specified in an invalid format or cannot be found.

+ * + * @throws {@link ValidationException} (client fault) + *

The validation was specified in an invalid format.

+ * + * @throws {@link CodePipelineServiceException} + *

Base exception class for all service exceptions from CodePipeline service.

+ * + * @public + */ +export class ListRuleExecutionsCommand extends $Command + .classBuilder< + ListRuleExecutionsCommandInput, + ListRuleExecutionsCommandOutput, + CodePipelineClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: CodePipelineClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CodePipeline_20150709", "ListRuleExecutions", {}) + .n("CodePipelineClient", "ListRuleExecutionsCommand") + .f(void 0, void 0) + .ser(se_ListRuleExecutionsCommand) + .de(de_ListRuleExecutionsCommand) + .build() {} diff --git a/clients/client-codepipeline/src/commands/ListRuleTypesCommand.ts b/clients/client-codepipeline/src/commands/ListRuleTypesCommand.ts new file mode 100644 index 000000000000..bb6b91038b73 --- /dev/null +++ b/clients/client-codepipeline/src/commands/ListRuleTypesCommand.ts @@ -0,0 +1,120 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { CodePipelineClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../CodePipelineClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListRuleTypesInput, ListRuleTypesOutput } from "../models/models_0"; +import { de_ListRuleTypesCommand, se_ListRuleTypesCommand } from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListRuleTypesCommand}. + */ +export interface ListRuleTypesCommandInput extends ListRuleTypesInput {} +/** + * @public + * + * The output of {@link ListRuleTypesCommand}. + */ +export interface ListRuleTypesCommandOutput extends ListRuleTypesOutput, __MetadataBearer {} + +/** + *

Lists the rules for the condition.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CodePipelineClient, ListRuleTypesCommand } from "@aws-sdk/client-codepipeline"; // ES Modules import + * // const { CodePipelineClient, ListRuleTypesCommand } = require("@aws-sdk/client-codepipeline"); // CommonJS import + * const client = new CodePipelineClient(config); + * const input = { // ListRuleTypesInput + * ruleOwnerFilter: "AWS", + * regionFilter: "STRING_VALUE", + * }; + * const command = new ListRuleTypesCommand(input); + * const response = await client.send(command); + * // { // ListRuleTypesOutput + * // ruleTypes: [ // RuleTypeList // required + * // { // RuleType + * // id: { // RuleTypeId + * // category: "Rule", // required + * // owner: "AWS", + * // provider: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }, + * // settings: { // RuleTypeSettings + * // thirdPartyConfigurationUrl: "STRING_VALUE", + * // entityUrlTemplate: "STRING_VALUE", + * // executionUrlTemplate: "STRING_VALUE", + * // revisionUrlTemplate: "STRING_VALUE", + * // }, + * // ruleConfigurationProperties: [ // RuleConfigurationPropertyList + * // { // RuleConfigurationProperty + * // name: "STRING_VALUE", // required + * // required: true || false, // required + * // key: true || false, // required + * // secret: true || false, // required + * // queryable: true || false, + * // description: "STRING_VALUE", + * // type: "String" || "Number" || "Boolean", + * // }, + * // ], + * // inputArtifactDetails: { // ArtifactDetails + * // minimumCount: Number("int"), // required + * // maximumCount: Number("int"), // required + * // }, + * // }, + * // ], + * // }; + * + * ``` + * + * @param ListRuleTypesCommandInput - {@link ListRuleTypesCommandInput} + * @returns {@link ListRuleTypesCommandOutput} + * @see {@link ListRuleTypesCommandInput} for command's `input` shape. + * @see {@link ListRuleTypesCommandOutput} for command's `response` shape. + * @see {@link CodePipelineClientResolvedConfig | config} for CodePipelineClient's `config` shape. + * + * @throws {@link InvalidNextTokenException} (client fault) + *

The next token was specified in an invalid format. Make sure that the next token + * you provide is the token returned by a previous call.

+ * + * @throws {@link ValidationException} (client fault) + *

The validation was specified in an invalid format.

+ * + * @throws {@link CodePipelineServiceException} + *

Base exception class for all service exceptions from CodePipeline service.

+ * + * @public + */ +export class ListRuleTypesCommand extends $Command + .classBuilder< + ListRuleTypesCommandInput, + ListRuleTypesCommandOutput, + CodePipelineClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: CodePipelineClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CodePipeline_20150709", "ListRuleTypes", {}) + .n("CodePipelineClient", "ListRuleTypesCommand") + .f(void 0, void 0) + .ser(se_ListRuleTypesCommand) + .de(de_ListRuleTypesCommand) + .build() {} diff --git a/clients/client-codepipeline/src/commands/OverrideStageConditionCommand.ts b/clients/client-codepipeline/src/commands/OverrideStageConditionCommand.ts new file mode 100644 index 000000000000..75b77ff9632e --- /dev/null +++ b/clients/client-codepipeline/src/commands/OverrideStageConditionCommand.ts @@ -0,0 +1,107 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { CodePipelineClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../CodePipelineClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { OverrideStageConditionInput } from "../models/models_0"; +import { de_OverrideStageConditionCommand, se_OverrideStageConditionCommand } from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link OverrideStageConditionCommand}. + */ +export interface OverrideStageConditionCommandInput extends OverrideStageConditionInput {} +/** + * @public + * + * The output of {@link OverrideStageConditionCommand}. + */ +export interface OverrideStageConditionCommandOutput extends __MetadataBearer {} + +/** + *

Used to override a stage condition.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CodePipelineClient, OverrideStageConditionCommand } from "@aws-sdk/client-codepipeline"; // ES Modules import + * // const { CodePipelineClient, OverrideStageConditionCommand } = require("@aws-sdk/client-codepipeline"); // CommonJS import + * const client = new CodePipelineClient(config); + * const input = { // OverrideStageConditionInput + * pipelineName: "STRING_VALUE", // required + * stageName: "STRING_VALUE", // required + * pipelineExecutionId: "STRING_VALUE", // required + * conditionType: "BEFORE_ENTRY" || "ON_SUCCESS", // required + * }; + * const command = new OverrideStageConditionCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param OverrideStageConditionCommandInput - {@link OverrideStageConditionCommandInput} + * @returns {@link OverrideStageConditionCommandOutput} + * @see {@link OverrideStageConditionCommandInput} for command's `input` shape. + * @see {@link OverrideStageConditionCommandOutput} for command's `response` shape. + * @see {@link CodePipelineClientResolvedConfig | config} for CodePipelineClient's `config` shape. + * + * @throws {@link ConcurrentPipelineExecutionsLimitExceededException} (client fault) + *

The pipeline has reached the limit for concurrent pipeline executions.

+ * + * @throws {@link ConditionNotOverridableException} (client fault) + *

Unable to override because the condition does not allow overrides.

+ * + * @throws {@link ConflictException} (client fault) + *

Your request cannot be handled because the pipeline is busy handling ongoing + * activities. Try again later.

+ * + * @throws {@link NotLatestPipelineExecutionException} (client fault) + *

The stage has failed in a later run of the pipeline and the + * pipelineExecutionId associated with the request is out of + * date.

+ * + * @throws {@link PipelineNotFoundException} (client fault) + *

The pipeline was specified in an invalid format or cannot be found.

+ * + * @throws {@link StageNotFoundException} (client fault) + *

The stage was specified in an invalid format or cannot be found.

+ * + * @throws {@link ValidationException} (client fault) + *

The validation was specified in an invalid format.

+ * + * @throws {@link CodePipelineServiceException} + *

Base exception class for all service exceptions from CodePipeline service.

+ * + * @public + */ +export class OverrideStageConditionCommand extends $Command + .classBuilder< + OverrideStageConditionCommandInput, + OverrideStageConditionCommandOutput, + CodePipelineClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep({ + ...commonParams, + }) + .m(function (this: any, Command: any, cs: any, config: CodePipelineClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CodePipeline_20150709", "OverrideStageCondition", {}) + .n("CodePipelineClient", "OverrideStageConditionCommand") + .f(void 0, void 0) + .ser(se_OverrideStageConditionCommand) + .de(de_OverrideStageConditionCommand) + .build() {} diff --git a/clients/client-codepipeline/src/commands/PutActionRevisionCommand.ts b/clients/client-codepipeline/src/commands/PutActionRevisionCommand.ts index 81aea96bbc68..e0cbb431abb5 100644 --- a/clients/client-codepipeline/src/commands/PutActionRevisionCommand.ts +++ b/clients/client-codepipeline/src/commands/PutActionRevisionCommand.ts @@ -64,6 +64,9 @@ export interface PutActionRevisionCommandOutput extends PutActionRevisionOutput, * @throws {@link ActionNotFoundException} (client fault) *

The specified action cannot be found.

* + * @throws {@link ConcurrentPipelineExecutionsLimitExceededException} (client fault) + *

The pipeline has reached the limit for concurrent pipeline executions.

+ * * @throws {@link PipelineNotFoundException} (client fault) *

The pipeline was specified in an invalid format or cannot be found.

* diff --git a/clients/client-codepipeline/src/commands/RetryStageExecutionCommand.ts b/clients/client-codepipeline/src/commands/RetryStageExecutionCommand.ts index 8fe905c481c6..83e6365b055c 100644 --- a/clients/client-codepipeline/src/commands/RetryStageExecutionCommand.ts +++ b/clients/client-codepipeline/src/commands/RetryStageExecutionCommand.ts @@ -62,6 +62,9 @@ export interface RetryStageExecutionCommandOutput extends RetryStageExecutionOut * @see {@link RetryStageExecutionCommandOutput} for command's `response` shape. * @see {@link CodePipelineClientResolvedConfig | config} for CodePipelineClient's `config` shape. * + * @throws {@link ConcurrentPipelineExecutionsLimitExceededException} (client fault) + *

The pipeline has reached the limit for concurrent pipeline executions.

+ * * @throws {@link ConflictException} (client fault) *

Your request cannot be handled because the pipeline is busy handling ongoing * activities. Try again later.

diff --git a/clients/client-codepipeline/src/commands/UpdatePipelineCommand.ts b/clients/client-codepipeline/src/commands/UpdatePipelineCommand.ts index d52a506e059a..fe82fdecf6d6 100644 --- a/clients/client-codepipeline/src/commands/UpdatePipelineCommand.ts +++ b/clients/client-codepipeline/src/commands/UpdatePipelineCommand.ts @@ -99,7 +99,92 @@ export interface UpdatePipelineCommandOutput extends UpdatePipelineOutput, __Met * }, * ], * onFailure: { // FailureConditions - * result: "ROLLBACK", + * result: "ROLLBACK" || "FAIL", + * conditions: [ // ConditionList + * { // Condition + * result: "ROLLBACK" || "FAIL", + * rules: [ // RuleDeclarationList + * { // RuleDeclaration + * name: "STRING_VALUE", // required + * ruleTypeId: { // RuleTypeId + * category: "Rule", // required + * owner: "AWS", + * provider: "STRING_VALUE", // required + * version: "STRING_VALUE", + * }, + * configuration: { // RuleConfigurationMap + * "": "STRING_VALUE", + * }, + * inputArtifacts: [ + * { + * name: "STRING_VALUE", // required + * }, + * ], + * roleArn: "STRING_VALUE", + * region: "STRING_VALUE", + * timeoutInMinutes: Number("int"), + * }, + * ], + * }, + * ], + * }, + * onSuccess: { // SuccessConditions + * conditions: [ // required + * { + * result: "ROLLBACK" || "FAIL", + * rules: [ + * { + * name: "STRING_VALUE", // required + * ruleTypeId: { + * category: "Rule", // required + * owner: "AWS", + * provider: "STRING_VALUE", // required + * version: "STRING_VALUE", + * }, + * configuration: { + * "": "STRING_VALUE", + * }, + * inputArtifacts: [ + * { + * name: "STRING_VALUE", // required + * }, + * ], + * roleArn: "STRING_VALUE", + * region: "STRING_VALUE", + * timeoutInMinutes: Number("int"), + * }, + * ], + * }, + * ], + * }, + * beforeEntry: { // BeforeEntryConditions + * conditions: [ // required + * { + * result: "ROLLBACK" || "FAIL", + * rules: [ + * { + * name: "STRING_VALUE", // required + * ruleTypeId: { + * category: "Rule", // required + * owner: "AWS", + * provider: "STRING_VALUE", // required + * version: "STRING_VALUE", + * }, + * configuration: { + * "": "STRING_VALUE", + * }, + * inputArtifacts: [ + * { + * name: "STRING_VALUE", // required + * }, + * ], + * roleArn: "STRING_VALUE", + * region: "STRING_VALUE", + * timeoutInMinutes: Number("int"), + * }, + * ], + * }, + * ], * }, * }, * ], @@ -237,7 +322,92 @@ export interface UpdatePipelineCommandOutput extends UpdatePipelineOutput, __Met * // }, * // ], * // onFailure: { // FailureConditions - * // result: "ROLLBACK", + * // result: "ROLLBACK" || "FAIL", + * // conditions: [ // ConditionList + * // { // Condition + * // result: "ROLLBACK" || "FAIL", + * // rules: [ // RuleDeclarationList + * // { // RuleDeclaration + * // name: "STRING_VALUE", // required + * // ruleTypeId: { // RuleTypeId + * // category: "Rule", // required + * // owner: "AWS", + * // provider: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }, + * // configuration: { // RuleConfigurationMap + * // "": "STRING_VALUE", + * // }, + * // inputArtifacts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // roleArn: "STRING_VALUE", + * // region: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), + * // }, + * // ], + * // }, + * // ], + * // }, + * // onSuccess: { // SuccessConditions + * // conditions: [ // required + * // { + * // result: "ROLLBACK" || "FAIL", + * // rules: [ + * // { + * // name: "STRING_VALUE", // required + * // ruleTypeId: { + * // category: "Rule", // required + * // owner: "AWS", + * // provider: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }, + * // configuration: { + * // "": "STRING_VALUE", + * // }, + * // inputArtifacts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // roleArn: "STRING_VALUE", + * // region: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), + * // }, + * // ], + * // }, + * // ], + * // }, + * // beforeEntry: { // BeforeEntryConditions + * // conditions: [ // required + * // { + * // result: "ROLLBACK" || "FAIL", + * // rules: [ + * // { + * // name: "STRING_VALUE", // required + * // ruleTypeId: { + * // category: "Rule", // required + * // owner: "AWS", + * // provider: "STRING_VALUE", // required + * // version: "STRING_VALUE", + * // }, + * // configuration: { + * // "": "STRING_VALUE", + * // }, + * // inputArtifacts: [ + * // { + * // name: "STRING_VALUE", // required + * // }, + * // ], + * // roleArn: "STRING_VALUE", + * // region: "STRING_VALUE", + * // timeoutInMinutes: Number("int"), + * // }, + * // ], + * // }, + * // ], * // }, * // }, * // ], diff --git a/clients/client-codepipeline/src/commands/index.ts b/clients/client-codepipeline/src/commands/index.ts index 90b51e1559a3..0d79c7a12f07 100644 --- a/clients/client-codepipeline/src/commands/index.ts +++ b/clients/client-codepipeline/src/commands/index.ts @@ -19,8 +19,11 @@ export * from "./ListActionExecutionsCommand"; export * from "./ListActionTypesCommand"; export * from "./ListPipelineExecutionsCommand"; export * from "./ListPipelinesCommand"; +export * from "./ListRuleExecutionsCommand"; +export * from "./ListRuleTypesCommand"; export * from "./ListTagsForResourceCommand"; export * from "./ListWebhooksCommand"; +export * from "./OverrideStageConditionCommand"; export * from "./PollForJobsCommand"; export * from "./PollForThirdPartyJobsCommand"; export * from "./PutActionRevisionCommand"; diff --git a/clients/client-codepipeline/src/models/models_0.ts b/clients/client-codepipeline/src/models/models_0.ts index 7dd0e6ded6b5..1f042ce3c349 100644 --- a/clients/client-codepipeline/src/models/models_0.ts +++ b/clients/client-codepipeline/src/models/models_0.ts @@ -1745,6 +1745,171 @@ export interface AWSSessionCredentials { sessionToken: string | undefined; } +/** + * @public + * @enum + */ +export const Result = { + FAIL: "FAIL", + ROLLBACK: "ROLLBACK", +} as const; + +/** + * @public + */ +export type Result = (typeof Result)[keyof typeof Result]; + +/** + * @public + * @enum + */ +export const RuleCategory = { + Rule: "Rule", +} as const; + +/** + * @public + */ +export type RuleCategory = (typeof RuleCategory)[keyof typeof RuleCategory]; + +/** + * @public + * @enum + */ +export const RuleOwner = { + AWS: "AWS", +} as const; + +/** + * @public + */ +export type RuleOwner = (typeof RuleOwner)[keyof typeof RuleOwner]; + +/** + *

The ID for the rule type, which is made up of the combined values for category, owner, provider, and version.

+ * @public + */ +export interface RuleTypeId { + /** + *

A category defines what kind of rule can be run in the stage, and constrains + * the provider type for the rule. Valid categories are limited to one of the following + * values.

+ *
    + *
  • + *

    INVOKE

    + *
  • + *
  • + *

    Approval

    + *
  • + *
  • + *

    Rule

    + *
  • + *
+ * @public + */ + category: RuleCategory | undefined; + + /** + *

The creator of the rule being called. The valid value for the + * Owner field in the rule category is AWS.

+ * @public + */ + owner?: RuleOwner; + + /** + *

The provider of the service being called by the rule. Valid providers are + * determined by the rulecategory. For example, a managed rule in the Rule category type + * has an owner of AWS, which would be specified as + * AWS.

+ * @public + */ + provider: string | undefined; + + /** + *

A string that describes the rule version.

+ * @public + */ + version?: string; +} + +/** + *

Represents information about the rule to be created for an associated condition. An example would be creating a new rule for an entry condition, such as a rule that checks for a test result before allowing the run to enter the deployment stage.

+ * @public + */ +export interface RuleDeclaration { + /** + *

The name of the rule that is created for the condition, such as CheckAllResults.

+ * @public + */ + name: string | undefined; + + /** + *

The ID for the rule type, which is made up of the combined values for category, owner, provider, and version.

+ * @public + */ + ruleTypeId: RuleTypeId | undefined; + + /** + *

The action configuration fields for the rule.

+ * @public + */ + configuration?: Record; + + /** + *

The input artifacts fields for the rule, such as specifying an input file for the rule.

+ * @public + */ + inputArtifacts?: InputArtifact[]; + + /** + *

The pipeline role ARN associated with the rule.

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

The Region for the condition associated with the rule.

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

The action timeout for the rule.

+ * @public + */ + timeoutInMinutes?: number; +} + +/** + *

The condition for the stage. A condition is made up of the rules and the result for the condition.

+ * @public + */ +export interface Condition { + /** + *

The action to be done when the condition is met. For example, rolling back an execution for a failure condition.

+ * @public + */ + result?: Result; + + /** + *

The rules that make up the condition.

+ * @public + */ + rules?: RuleDeclaration[]; +} + +/** + *

The conditions for making checks for entry to a stage.

+ * @public + */ +export interface BeforeEntryConditions { + /** + *

The conditions that are configured as entry conditions.

+ * @public + */ + conditions: Condition[] | undefined; +} + /** * @public * @enum @@ -1985,19 +2150,6 @@ export const PipelineType = { */ export type PipelineType = (typeof PipelineType)[keyof typeof PipelineType]; -/** - * @public - * @enum - */ -export const Result = { - ROLLBACK: "ROLLBACK", -} as const; - -/** - * @public - */ -export type Result = (typeof Result)[keyof typeof Result]; - /** *

The configuration that specifies the result, such as rollback, to occur upon stage * failure.

@@ -2010,6 +2162,24 @@ export interface FailureConditions { * @public */ result?: Result; + + /** + *

The conditions that are configured as failure conditions.

+ * @public + */ + conditions?: Condition[]; +} + +/** + *

The conditions for making checks that, if met, succeed a stage.

+ * @public + */ +export interface SuccessConditions { + /** + *

The conditions that are success conditions.

+ * @public + */ + conditions: Condition[] | undefined; } /** @@ -2042,6 +2212,19 @@ export interface StageDeclaration { * @public */ onFailure?: FailureConditions; + + /** + *

The method to use when a stage has succeeded. For example, + * configuring this field for conditions will allow the stage to succeed when the conditions are met.

+ * @public + */ + onSuccess?: SuccessConditions; + + /** + *

The method to use when a stage allows entry. For example, configuring this field for conditions will allow entry to the stage when the conditions are met.

+ * @public + */ + beforeEntry?: BeforeEntryConditions; } /** @@ -3365,153 +3548,413 @@ export interface GetPipelineStateInput { * @public * @enum */ -export const StageExecutionStatus = { +export const ConditionExecutionStatus = { + Abandoned: "Abandoned", Cancelled: "Cancelled", + Errored: "Errored", Failed: "Failed", InProgress: "InProgress", - Stopped: "Stopped", - Stopping: "Stopping", + Overridden: "Overridden", Succeeded: "Succeeded", } as const; /** * @public */ -export type StageExecutionStatus = (typeof StageExecutionStatus)[keyof typeof StageExecutionStatus]; +export type ConditionExecutionStatus = (typeof ConditionExecutionStatus)[keyof typeof ConditionExecutionStatus]; /** - *

Represents information about the run of a stage.

+ *

The run of a condition.

* @public */ -export interface StageExecution { +export interface ConditionExecution { /** - *

The ID of the pipeline execution associated with the stage.

+ *

The status of the run for a condition.

* @public */ - pipelineExecutionId: string | undefined; + status?: ConditionExecutionStatus; /** - *

The status of the stage, or for a completed stage, the last status of the - * stage.

- * - *

A status of cancelled means that the pipeline’s definition was updated before the - * stage execution could be completed.

- *
+ *

The summary of information about a run for a condition.

* @public */ - status: StageExecutionStatus | undefined; + summary?: string; /** - *

The type of pipeline execution for the stage, such as a rollback pipeline - * execution.

+ *

The last status change of the condition.

* @public */ - type?: ExecutionType; + lastStatusChange?: Date; } /** - *

Represents information about the state of transitions between one stage and another - * stage.

+ *

The change to a rule that creates a revision of the rule.

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

Whether the transition between stages is enabled (true) or disabled - * (false).

- * @public - */ - enabled?: boolean; - +export interface RuleRevision { /** - *

The ID of the user who last changed the transition state.

+ *

The system-generated unique ID that identifies the revision number of the + * rule.

* @public */ - lastChangedBy?: string; + revisionId: string | undefined; /** - *

The timestamp when the transition state was last changed.

+ *

The unique identifier of the change that set the state to this revision (for + * example, a deployment ID or timestamp).

* @public */ - lastChangedAt?: Date; + revisionChangeId: string | undefined; /** - *

The user-specified reason why the transition between two stages of a pipeline was - * disabled.

+ *

The date and time when the most recent version of the rule was created, in + * timestamp format.

* @public */ - disabledReason?: string; + created: Date | undefined; } /** - *

Represents information about the state of the stage.

* @public + * @enum */ -export interface StageState { +export const RuleExecutionStatus = { + Abandoned: "Abandoned", + Failed: "Failed", + InProgress: "InProgress", + Succeeded: "Succeeded", +} as const; + +/** + * @public + */ +export type RuleExecutionStatus = (typeof RuleExecutionStatus)[keyof typeof RuleExecutionStatus]; + +/** + *

Represents information about each time a rule is run as part of the pipeline execution for a pipeline configured with conditions.

+ * @public + */ +export interface RuleExecution { /** - *

The name of the stage.

+ *

The execution ID for the run of the rule.

* @public */ - stageName?: string; + ruleExecutionId?: string; /** - *

Represents information about the run of a stage.

+ *

The status of the run of the rule, such as FAILED.

* @public */ - inboundExecution?: StageExecution; + status?: RuleExecutionStatus; /** - *

The inbound executions for a stage.

+ *

A summary of the run of the rule.

* @public */ - inboundExecutions?: StageExecution[]; + summary?: string; /** - *

The state of the inbound transition, which is either enabled or disabled.

+ *

The last status change of the rule.

* @public */ - inboundTransitionState?: TransitionState; + lastStatusChange?: Date; /** - *

The state of the stage.

+ *

The system-generated token used to identify a unique request.

* @public */ - actionStates?: ActionState[]; + token?: string; /** - *

Information about the latest execution in the stage, including its ID and - * status.

+ *

The ARN of the user who last changed the rule.

* @public */ - latestExecution?: StageExecution; -} + lastUpdatedBy?: string; -/** - *

Represents the output of a GetPipelineState action.

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

The name of the pipeline for which you want to get the state.

+ *

The external ID of the run of the rule.

* @public */ - pipelineName?: string; + externalExecutionId?: string; /** - *

The version number of the pipeline.

- * - *

A newly created pipeline is always assigned a version number of - * 1.

- *
+ *

The URL of a resource external to Amazon Web Services that is used when running the + * rule (for example, an external repository URL).

* @public */ - pipelineVersion?: number; + externalExecutionUrl?: string; /** - *

A list of the pipeline stage output information, including stage name, state, most - * recent run details, whether the stage is disabled, and other data.

+ *

Represents information about an error in CodePipeline.

* @public */ - stageStates?: StageState[]; + errorDetails?: ErrorDetails; +} + +/** + *

Returns information about the state of a rule.

+ * + *

Values returned in the revisionId field indicate the rule revision information, such as the commit ID, for the current state.

+ *
+ * @public + */ +export interface RuleState { + /** + *

The name of the rule.

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

The ID of the current revision of the artifact successfully worked on by the + * job.

+ * @public + */ + currentRevision?: RuleRevision; + + /** + *

Represents information about the latest run of an rule.

+ * @public + */ + latestExecution?: RuleExecution; + + /** + *

A URL link for more information about the state of the action, such as a details page.

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

A URL link for more information about the revision, such as a commit details + * page.

+ * @public + */ + revisionUrl?: string; +} + +/** + *

Information about the state of the condition.

+ * @public + */ +export interface ConditionState { + /** + *

The state of the latest run of the rule.

+ * @public + */ + latestExecution?: ConditionExecution; + + /** + *

The state of the rules for the condition.

+ * @public + */ + ruleStates?: RuleState[]; +} + +/** + *

Represents information about the run of a condition for a stage.

+ * @public + */ +export interface StageConditionsExecution { + /** + *

The status of a run of a condition for a stage.

+ * @public + */ + status?: ConditionExecutionStatus; + + /** + *

A summary of the run of the condition for a stage.

+ * @public + */ + summary?: string; +} + +/** + *

The state of a run of a condition for a stage.

+ * @public + */ +export interface StageConditionState { + /** + *

Represents information about the latest run of a condition for a stage.

+ * @public + */ + latestExecution?: StageConditionsExecution; + + /** + *

The states of the conditions for a run of a condition for a stage.

+ * @public + */ + conditionStates?: ConditionState[]; +} + +/** + * @public + * @enum + */ +export const StageExecutionStatus = { + Cancelled: "Cancelled", + Failed: "Failed", + InProgress: "InProgress", + Stopped: "Stopped", + Stopping: "Stopping", + Succeeded: "Succeeded", +} as const; + +/** + * @public + */ +export type StageExecutionStatus = (typeof StageExecutionStatus)[keyof typeof StageExecutionStatus]; + +/** + *

Represents information about the run of a stage.

+ * @public + */ +export interface StageExecution { + /** + *

The ID of the pipeline execution associated with the stage.

+ * @public + */ + pipelineExecutionId: string | undefined; + + /** + *

The status of the stage, or for a completed stage, the last status of the + * stage.

+ * + *

A status of cancelled means that the pipeline’s definition was updated before the + * stage execution could be completed.

+ *
+ * @public + */ + status: StageExecutionStatus | undefined; + + /** + *

The type of pipeline execution for the stage, such as a rollback pipeline + * execution.

+ * @public + */ + type?: ExecutionType; +} + +/** + *

Represents information about the state of transitions between one stage and another + * stage.

+ * @public + */ +export interface TransitionState { + /** + *

Whether the transition between stages is enabled (true) or disabled + * (false).

+ * @public + */ + enabled?: boolean; + + /** + *

The ID of the user who last changed the transition state.

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

The timestamp when the transition state was last changed.

+ * @public + */ + lastChangedAt?: Date; + + /** + *

The user-specified reason why the transition between two stages of a pipeline was + * disabled.

+ * @public + */ + disabledReason?: string; +} + +/** + *

Represents information about the state of the stage.

+ * @public + */ +export interface StageState { + /** + *

The name of the stage.

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

Represents information about the run of a stage.

+ * @public + */ + inboundExecution?: StageExecution; + + /** + *

The inbound executions for a stage.

+ * @public + */ + inboundExecutions?: StageExecution[]; + + /** + *

The state of the inbound transition, which is either enabled or disabled.

+ * @public + */ + inboundTransitionState?: TransitionState; + + /** + *

The state of the stage.

+ * @public + */ + actionStates?: ActionState[]; + + /** + *

Information about the latest execution in the stage, including its ID and + * status.

+ * @public + */ + latestExecution?: StageExecution; + + /** + *

The state of the entry conditions for a stage.

+ * @public + */ + beforeEntryConditionState?: StageConditionState; + + /** + *

The state of the success conditions for a stage.

+ * @public + */ + onSuccessConditionState?: StageConditionState; + + /** + *

The state of the failure conditions for a stage.

+ * @public + */ + onFailureConditionState?: StageConditionState; +} + +/** + *

Represents the output of a GetPipelineState action.

+ * @public + */ +export interface GetPipelineStateOutput { + /** + *

The name of the pipeline for which you want to get the state.

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

The version number of the pipeline.

+ * + *

A newly created pipeline is always assigned a version number of + * 1.

+ *
+ * @public + */ + pipelineVersion?: number; + + /** + *

A list of the pipeline stage output information, including stage name, state, most + * recent run details, whether the stage is disabled, and other data.

+ * @public + */ + stageStates?: StageState[]; /** *

The date and time the pipeline was created, in timestamp format.

@@ -4028,105 +4471,516 @@ export interface ListPipelineExecutionsOutput { *

Represents the input of a ListPipelines action.

* @public */ -export interface ListPipelinesInput { +export interface ListPipelinesInput { + /** + *

An identifier that was returned from the previous list pipelines call. It can be + * used to return the next set of pipelines in the list.

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

The maximum number of pipelines to return in a single call. To retrieve the remaining + * pipelines, make another call with the returned nextToken value. The minimum value you + * can specify is 1. The maximum accepted value is 1000.

+ * @public + */ + maxResults?: number; +} + +/** + *

Returns a summary of a pipeline.

+ * @public + */ +export interface PipelineSummary { + /** + *

The name of the pipeline.

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

The version number of the pipeline.

+ * @public + */ + version?: number; + + /** + *

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.

+ *
    + *
  • + *

    V1 type pipelines have a JSON structure that contains standard pipeline, + * stage, and action-level parameters.

    + *
  • + *
  • + *

    V2 type pipelines have the same structure as a V1 type, along with additional + * parameters for release safety and trigger configuration.

    + *
  • + *
+ * + *

Including V2 parameters, such as triggers on Git tags, in the pipeline JSON when + * creating or updating a pipeline will result in the pipeline having the V2 type of + * pipeline and the associated costs.

+ *
+ *

For information about pricing for CodePipeline, see Pricing.

+ *

For information about which type of pipeline to choose, see What type of + * pipeline is right for me?.

+ * @public + */ + pipelineType?: PipelineType; + + /** + *

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

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

The date and time the pipeline was created, in timestamp format.

+ * @public + */ + created?: Date; + + /** + *

The date and time of the last update to the pipeline, in timestamp + * format.

+ * @public + */ + updated?: Date; +} + +/** + *

Represents the output of a ListPipelines action.

+ * @public + */ +export interface ListPipelinesOutput { + /** + *

The list of pipelines.

+ * @public + */ + pipelines?: PipelineSummary[]; + + /** + *

If the amount of returned information is significantly large, an identifier is also + * returned. It can be used in a subsequent list pipelines call to return the next set of + * pipelines in the list.

+ * @public + */ + nextToken?: string; +} + +/** + *

Filter values for the rule execution.

+ * @public + */ +export interface RuleExecutionFilter { + /** + *

The pipeline execution ID used to filter rule execution history.

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

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.

+ *
+ * @public + */ + latestInPipelineExecution?: LatestInPipelineExecutionFilter; +} + +/** + * @public + */ +export interface ListRuleExecutionsInput { + /** + *

The name of the pipeline for which you want to get execution summary + * information.

+ * @public + */ + pipelineName: string | undefined; + + /** + *

Input information used to filter rule execution history.

+ * @public + */ + filter?: RuleExecutionFilter; + + /** + *

The maximum number of results to return in a single call. To retrieve the remaining + * results, make another call with the returned nextToken value. Pipeline history is + * limited to the most recent 12 months, based on pipeline execution start times. Default + * value is 100.

+ * @public + */ + maxResults?: number; + + /** + *

The token that was returned from the previous ListRuleExecutions + * call, which can be used to return the next set of rule executions in the + * list.

+ * @public + */ + nextToken?: string; +} + +/** + *

Input information used for a rule execution.

+ * @public + */ +export interface RuleExecutionInput { + /** + *

The ID for the rule type, which is made up of the combined values for category, owner, provider, and version.

+ * @public + */ + ruleTypeId?: RuleTypeId; + + /** + *

Configuration data for a rule execution, such as the resolved values for that run.

+ * @public + */ + configuration?: Record; + + /** + *

Configuration data for a rule execution with all variable references replaced with + * their real values for the execution.

+ * @public + */ + resolvedConfiguration?: Record; + + /** + *

The ARN of the IAM service role that performs the declared rule. This is assumed + * through the roleArn for the pipeline.

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

The Amazon Web Services Region for the rule, such as us-east-1.

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

Details of input artifacts of the rule that correspond to the rule + * execution.

+ * @public + */ + inputArtifacts?: ArtifactDetail[]; +} + +/** + *

Execution result information, such as the external execution ID.

+ * @public + */ +export interface RuleExecutionResult { + /** + *

The external ID for the rule execution.

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

The external provider summary for the rule execution.

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

The deepest external link to the external resource (for example, a repository URL or + * deployment endpoint) that is used when running the rule.

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

Represents information about an error in CodePipeline.

+ * @public + */ + errorDetails?: ErrorDetails; +} + +/** + *

Output details listed for a rule execution, such as the rule execution + * result.

+ * @public + */ +export interface RuleExecutionOutput { + /** + *

Execution result information listed in the output details for a rule + * execution.

+ * @public + */ + executionResult?: RuleExecutionResult; +} + +/** + *

The details of the runs for a rule and the results produced on an artifact as it passes + * through stages in the pipeline.

+ * @public + */ +export interface RuleExecutionDetail { + /** + *

The ID of the pipeline execution in the stage where the rule was run. Use the GetPipelineState action to retrieve the current pipelineExecutionId of + * the stage.

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

The ID of the run for the rule.

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

The version number of the pipeline with the stage where the rule was run.

+ * @public + */ + pipelineVersion?: number; + + /** + *

The name of the stage where the rule was run.

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

The name of the rule that was run in the stage.

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

The start time of the rule execution.

+ * @public + */ + startTime?: Date; + + /** + *

The date and time of the last change to the rule execution, in timestamp + * format.

+ * @public + */ + lastUpdateTime?: Date; + + /** + *

The ARN of the user who changed the rule execution details.

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

The status of the rule execution. Status categories are InProgress, + * Succeeded, and Failed. + *

+ * @public + */ + status?: RuleExecutionStatus; + + /** + *

Input details for the rule execution, such as role ARN, Region, and input + * artifacts.

+ * @public + */ + input?: RuleExecutionInput; + + /** + *

Output details for the rule execution, such as the rule execution result.

+ * @public + */ + output?: RuleExecutionOutput; +} + +/** + * @public + */ +export interface ListRuleExecutionsOutput { + /** + *

Details about the output for listing rule executions.

+ * @public + */ + ruleExecutionDetails?: RuleExecutionDetail[]; + + /** + *

A token that can be used in the next ListRuleExecutions call. To + * view all items in the list, continue to call this operation with each subsequent token + * until no more nextToken values are returned.

+ * @public + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListRuleTypesInput { + /** + *

The rule owner to filter on.

+ * @public + */ + ruleOwnerFilter?: RuleOwner; + + /** + *

The rule Region to filter on.

+ * @public + */ + regionFilter?: string; +} + +/** + * @public + * @enum + */ +export const RuleConfigurationPropertyType = { + Boolean: "Boolean", + Number: "Number", + String: "String", +} as const; + +/** + * @public + */ +export type RuleConfigurationPropertyType = + (typeof RuleConfigurationPropertyType)[keyof typeof RuleConfigurationPropertyType]; + +/** + *

Represents information about a rule configuration property.

+ * @public + */ +export interface RuleConfigurationProperty { + /** + *

The name of the rule configuration property.

+ * @public + */ + name: string | undefined; + + /** + *

Whether the configuration property is a required value.

+ * @public + */ + required: boolean | undefined; + + /** + *

Whether the configuration property is a key.

+ * @public + */ + key: boolean | undefined; + + /** + *

Whether the configuration property is secret.

+ *

When updating a pipeline, passing * * * * * without changing any other values of + * the action preserves the previous value of the secret.

+ * @public + */ + secret: boolean | undefined; + + /** + *

Indicates whether the property can be queried.

+ *

If you create a pipeline with a condition and rule, and that rule contains a queryable property, the value for that configuration property is subject to other + * restrictions. The value must be less than or equal to twenty (20) characters. The value + * can contain only alphanumeric characters, underscores, and hyphens.

+ * @public + */ + queryable?: boolean; + + /** + *

The description of the action configuration property that is displayed to + * users.

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

The type of the configuration property.

+ * @public + */ + type?: RuleConfigurationPropertyType; +} + +/** + *

Returns information about the settings for a rule type.

+ * @public + */ +export interface RuleTypeSettings { /** - *

An identifier that was returned from the previous list pipelines call. It can be - * used to return the next set of pipelines in the list.

+ *

The URL of a sign-up page where users can sign up for an external service and + * perform initial configuration of the action provided by that service.

* @public */ - nextToken?: string; + thirdPartyConfigurationUrl?: string; /** - *

The maximum number of pipelines to return in a single call. To retrieve the remaining - * pipelines, make another call with the returned nextToken value. The minimum value you - * can specify is 1. The maximum accepted value is 1000.

+ *

The URL returned to the CodePipeline console that provides a deep link to the + * resources of the external system, such as the configuration page for a CodeDeploy + * deployment group. This link is provided as part of the action display in the + * pipeline.

* @public */ - maxResults?: number; -} + entityUrlTemplate?: string; -/** - *

Returns a summary of a pipeline.

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

The name of the pipeline.

+ *

The URL returned to the CodePipeline console that contains a link to the + * top-level landing page for the external system, such as the console page for CodeDeploy. + * This link is shown on the pipeline view page in the CodePipeline console and + * provides a link to the execution entity of the external action.

* @public */ - name?: string; + executionUrlTemplate?: string; /** - *

The version number of the pipeline.

+ *

The URL returned to the CodePipeline console that contains a link to the page + * where customers can update or change the configuration of the external action.

* @public */ - version?: number; + revisionUrlTemplate?: string; +} +/** + *

The rule type, which is made up of the combined values for category, owner, provider, and version.

+ * @public + */ +export interface RuleType { /** - *

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.

- *
    - *
  • - *

    V1 type pipelines have a JSON structure that contains standard pipeline, - * stage, and action-level parameters.

    - *
  • - *
  • - *

    V2 type pipelines have the same structure as a V1 type, along with additional - * parameters for release safety and trigger configuration.

    - *
  • - *
- * - *

Including V2 parameters, such as triggers on Git tags, in the pipeline JSON when - * creating or updating a pipeline will result in the pipeline having the V2 type of - * pipeline and the associated costs.

- *
- *

For information about pricing for CodePipeline, see Pricing.

- *

For information about which type of pipeline to choose, see What type of - * pipeline is right for me?.

+ *

Represents information about a rule type.

* @public */ - pipelineType?: PipelineType; + id: RuleTypeId | undefined; /** - *

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

+ *

Returns information about the settings for a rule type.

* @public */ - executionMode?: ExecutionMode; + settings?: RuleTypeSettings; /** - *

The date and time the pipeline was created, in timestamp format.

+ *

The configuration properties for the rule type.

* @public */ - created?: Date; + ruleConfigurationProperties?: RuleConfigurationProperty[]; /** - *

The date and time of the last update to the pipeline, in timestamp - * format.

+ *

Returns information about the details of an artifact.

* @public */ - updated?: Date; + inputArtifactDetails: ArtifactDetails | undefined; } /** - *

Represents the output of a ListPipelines action.

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

The list of pipelines.

- * @public - */ - pipelines?: PipelineSummary[]; - +export interface ListRuleTypesOutput { /** - *

If the amount of returned information is significantly large, an identifier is also - * returned. It can be used in a subsequent list pipelines call to return the next set of - * pipelines in the list.

+ *

Lists the rules that are configured for the condition.

* @public */ - nextToken?: string; + ruleTypes: RuleType[] | undefined; } /** @@ -4438,6 +5292,133 @@ export interface ListWebhooksOutput { NextToken?: string; } +/** + *

The pipeline has reached the limit for concurrent pipeline executions.

+ * @public + */ +export class ConcurrentPipelineExecutionsLimitExceededException extends __BaseException { + readonly name: "ConcurrentPipelineExecutionsLimitExceededException" = + "ConcurrentPipelineExecutionsLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentPipelineExecutionsLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentPipelineExecutionsLimitExceededException.prototype); + } +} + +/** + *

Unable to override because the condition does not allow overrides.

+ * @public + */ +export class ConditionNotOverridableException extends __BaseException { + readonly name: "ConditionNotOverridableException" = "ConditionNotOverridableException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConditionNotOverridableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConditionNotOverridableException.prototype); + } +} + +/** + *

Your request cannot be handled because the pipeline is busy handling ongoing + * activities. Try again later.

+ * @public + */ +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } +} + +/** + *

The stage has failed in a later run of the pipeline and the + * pipelineExecutionId associated with the request is out of + * date.

+ * @public + */ +export class NotLatestPipelineExecutionException extends __BaseException { + readonly name: "NotLatestPipelineExecutionException" = "NotLatestPipelineExecutionException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotLatestPipelineExecutionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotLatestPipelineExecutionException.prototype); + } +} + +/** + * @public + * @enum + */ +export const ConditionType = { + BEFORE_ENTRY: "BEFORE_ENTRY", + ON_SUCCESS: "ON_SUCCESS", +} as const; + +/** + * @public + */ +export type ConditionType = (typeof ConditionType)[keyof typeof ConditionType]; + +/** + * @public + */ +export interface OverrideStageConditionInput { + /** + *

The name of the pipeline with the stage that will override the condition.

+ * @public + */ + pipelineName: string | undefined; + + /** + *

The name of the stage for the override.

+ * @public + */ + stageName: string | undefined; + + /** + *

The ID of the pipeline execution for the override.

+ * @public + */ + pipelineExecutionId: string | undefined; + + /** + *

The type of condition to override for the stage, such as entry conditions, failure conditions, or success conditions.

+ * @public + */ + conditionType: ConditionType | undefined; +} + /** *

Represents the input of a PollForJobs action.

* @public @@ -5042,49 +6023,6 @@ export interface RegisterWebhookWithThirdPartyInput { */ export interface RegisterWebhookWithThirdPartyOutput {} -/** - *

Your request cannot be handled because the pipeline is busy handling ongoing - * activities. Try again later.

- * @public - */ -export class ConflictException extends __BaseException { - readonly name: "ConflictException" = "ConflictException"; - readonly $fault: "client" = "client"; - /** - * @internal - */ - constructor(opts: __ExceptionOptionType) { - super({ - name: "ConflictException", - $fault: "client", - ...opts, - }); - Object.setPrototypeOf(this, ConflictException.prototype); - } -} - -/** - *

The stage has failed in a later run of the pipeline and the - * pipelineExecutionId associated with the request is out of - * date.

- * @public - */ -export class NotLatestPipelineExecutionException extends __BaseException { - readonly name: "NotLatestPipelineExecutionException" = "NotLatestPipelineExecutionException"; - readonly $fault: "client" = "client"; - /** - * @internal - */ - constructor(opts: __ExceptionOptionType) { - super({ - name: "NotLatestPipelineExecutionException", - $fault: "client", - ...opts, - }); - Object.setPrototypeOf(this, NotLatestPipelineExecutionException.prototype); - } -} - /** * @public * @enum @@ -5242,27 +6180,6 @@ export class UnableToRollbackStageException extends __BaseException { } } -/** - *

The pipeline has reached the limit for concurrent pipeline executions.

- * @public - */ -export class ConcurrentPipelineExecutionsLimitExceededException extends __BaseException { - readonly name: "ConcurrentPipelineExecutionsLimitExceededException" = - "ConcurrentPipelineExecutionsLimitExceededException"; - readonly $fault: "client" = "client"; - /** - * @internal - */ - constructor(opts: __ExceptionOptionType) { - super({ - name: "ConcurrentPipelineExecutionsLimitExceededException", - $fault: "client", - ...opts, - }); - Object.setPrototypeOf(this, ConcurrentPipelineExecutionsLimitExceededException.prototype); - } -} - /** * @public * @enum diff --git a/clients/client-codepipeline/src/pagination/ListRuleExecutionsPaginator.ts b/clients/client-codepipeline/src/pagination/ListRuleExecutionsPaginator.ts new file mode 100644 index 000000000000..20a4d5b63de2 --- /dev/null +++ b/clients/client-codepipeline/src/pagination/ListRuleExecutionsPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { CodePipelineClient } from "../CodePipelineClient"; +import { + ListRuleExecutionsCommand, + ListRuleExecutionsCommandInput, + ListRuleExecutionsCommandOutput, +} from "../commands/ListRuleExecutionsCommand"; +import { CodePipelinePaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListRuleExecutions: ( + config: CodePipelinePaginationConfiguration, + input: ListRuleExecutionsCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + CodePipelinePaginationConfiguration, + ListRuleExecutionsCommandInput, + ListRuleExecutionsCommandOutput +>(CodePipelineClient, ListRuleExecutionsCommand, "nextToken", "nextToken", "maxResults"); diff --git a/clients/client-codepipeline/src/pagination/index.ts b/clients/client-codepipeline/src/pagination/index.ts index 4367eb3657f3..0c8bac2b23fe 100644 --- a/clients/client-codepipeline/src/pagination/index.ts +++ b/clients/client-codepipeline/src/pagination/index.ts @@ -4,5 +4,6 @@ export * from "./ListActionExecutionsPaginator"; export * from "./ListActionTypesPaginator"; export * from "./ListPipelineExecutionsPaginator"; export * from "./ListPipelinesPaginator"; +export * from "./ListRuleExecutionsPaginator"; export * from "./ListTagsForResourcePaginator"; export * from "./ListWebhooksPaginator"; diff --git a/clients/client-codepipeline/src/protocols/Aws_json1_1.ts b/clients/client-codepipeline/src/protocols/Aws_json1_1.ts index 047095d58630..6ed81fbf3b88 100644 --- a/clients/client-codepipeline/src/protocols/Aws_json1_1.ts +++ b/clients/client-codepipeline/src/protocols/Aws_json1_1.ts @@ -72,11 +72,17 @@ import { ListPipelineExecutionsCommandOutput, } from "../commands/ListPipelineExecutionsCommand"; import { ListPipelinesCommandInput, ListPipelinesCommandOutput } from "../commands/ListPipelinesCommand"; +import { ListRuleExecutionsCommandInput, ListRuleExecutionsCommandOutput } from "../commands/ListRuleExecutionsCommand"; +import { ListRuleTypesCommandInput, ListRuleTypesCommandOutput } from "../commands/ListRuleTypesCommand"; import { ListTagsForResourceCommandInput, ListTagsForResourceCommandOutput, } from "../commands/ListTagsForResourceCommand"; import { ListWebhooksCommandInput, ListWebhooksCommandOutput } from "../commands/ListWebhooksCommand"; +import { + OverrideStageConditionCommandInput, + OverrideStageConditionCommandOutput, +} from "../commands/OverrideStageConditionCommand"; import { PollForJobsCommandInput, PollForJobsCommandOutput } from "../commands/PollForJobsCommand"; import { PollForThirdPartyJobsCommandInput, @@ -149,12 +155,18 @@ import { ArtifactDetails, ArtifactRevision, ArtifactStore, + BeforeEntryConditions, BlockerDeclaration, ConcurrentModificationException, ConcurrentPipelineExecutionsLimitExceededException, + Condition, + ConditionExecution, + ConditionNotOverridableException, + ConditionState, ConflictException, CreateCustomActionTypeInput, CreatePipelineInput, + CreatePipelineOutput, CurrentRevision, DeleteCustomActionTypeInput, DeletePipelineInput, @@ -211,6 +223,9 @@ import { ListPipelineExecutionsOutput, ListPipelinesInput, ListPipelinesOutput, + ListRuleExecutionsInput, + ListRuleExecutionsOutput, + ListRuleTypesInput, ListTagsForResourceInput, ListWebhookItem, ListWebhooksInput, @@ -218,6 +233,7 @@ import { NotLatestPipelineExecutionException, OutputArtifact, OutputVariablesSizeExceededException, + OverrideStageConditionInput, PipelineDeclaration, PipelineExecution, PipelineExecutionFilter, @@ -249,7 +265,15 @@ import { ResourceNotFoundException, RetryStageExecutionInput, RollbackStageInput, + RuleDeclaration, + RuleExecution, + RuleExecutionDetail, + RuleExecutionFilter, + RuleRevision, + RuleState, + RuleTypeId, SourceRevisionOverride, + StageConditionState, StageDeclaration, StageNotFoundException, StageNotRetryableException, @@ -257,6 +281,7 @@ import { StartPipelineExecutionInput, StopPipelineExecutionInput, SucceededInStageFilter, + SuccessConditions, Tag, TagResourceInput, TooManyTagsException, @@ -265,6 +290,7 @@ import { UntagResourceInput, UpdateActionTypeInput, UpdatePipelineInput, + UpdatePipelineOutput, ValidationException, WebhookAuthConfiguration, WebhookDefinition, @@ -320,7 +346,7 @@ export const se_CreatePipelineCommand = async ( ): Promise<__HttpRequest> => { const headers: __HeaderBag = sharedHeaders("CreatePipeline"); let body: any; - body = JSON.stringify(_json(input)); + body = JSON.stringify(se_CreatePipelineInput(input, context)); return buildHttpRpcRequest(context, headers, "/", undefined, body); }; @@ -532,6 +558,32 @@ export const se_ListPipelinesCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1ListRuleExecutionsCommand + */ +export const se_ListRuleExecutionsCommand = async ( + input: ListRuleExecutionsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("ListRuleExecutions"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +/** + * serializeAws_json1_1ListRuleTypesCommand + */ +export const se_ListRuleTypesCommand = async ( + input: ListRuleTypesCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("ListRuleTypes"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1ListTagsForResourceCommand */ @@ -558,6 +610,19 @@ export const se_ListWebhooksCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1OverrideStageConditionCommand + */ +export const se_OverrideStageConditionCommand = async ( + input: OverrideStageConditionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("OverrideStageCondition"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1PollForJobsCommand */ @@ -788,7 +853,7 @@ export const se_UpdatePipelineCommand = async ( ): Promise<__HttpRequest> => { const headers: __HeaderBag = sharedHeaders("UpdatePipeline"); let body: any; - body = JSON.stringify(_json(input)); + body = JSON.stringify(se_UpdatePipelineInput(input, context)); return buildHttpRpcRequest(context, headers, "/", undefined, body); }; @@ -864,7 +929,7 @@ export const de_CreatePipelineCommand = async ( } const data: any = await parseBody(output.body, context); let contents: any = {}; - contents = _json(data); + contents = de_CreatePipelineOutput(data, context); const response: CreatePipelineCommandOutput = { $metadata: deserializeMetadata(output), ...contents, @@ -1180,6 +1245,46 @@ export const de_ListPipelinesCommand = async ( return response; }; +/** + * deserializeAws_json1_1ListRuleExecutionsCommand + */ +export const de_ListRuleExecutionsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = de_ListRuleExecutionsOutput(data, context); + const response: ListRuleExecutionsCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + +/** + * deserializeAws_json1_1ListRuleTypesCommand + */ +export const de_ListRuleTypesCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = _json(data); + const response: ListRuleTypesCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + /** * deserializeAws_json1_1ListTagsForResourceCommand */ @@ -1220,6 +1325,23 @@ export const de_ListWebhooksCommand = async ( return response; }; +/** + * deserializeAws_json1_1OverrideStageConditionCommand + */ +export const de_OverrideStageConditionCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + await collectBody(output.body, context); + const response: OverrideStageConditionCommandOutput = { + $metadata: deserializeMetadata(output), + }; + return response; +}; + /** * deserializeAws_json1_1PollForJobsCommand */ @@ -1557,7 +1679,7 @@ export const de_UpdatePipelineCommand = async ( } const data: any = await parseBody(output.body, context); let contents: any = {}; - contents = _json(data); + contents = de_UpdatePipelineOutput(data, context); const response: UpdatePipelineCommandOutput = { $metadata: deserializeMetadata(output), ...contents, @@ -1644,6 +1766,18 @@ const de_CommandError = async (output: __HttpResponse, context: __SerdeContext): case "ResourceNotFoundException": case "com.amazonaws.codepipeline#ResourceNotFoundException": throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ConcurrentPipelineExecutionsLimitExceededException": + case "com.amazonaws.codepipeline#ConcurrentPipelineExecutionsLimitExceededException": + throw await de_ConcurrentPipelineExecutionsLimitExceededExceptionRes(parsedOutput, context); + case "ConditionNotOverridableException": + case "com.amazonaws.codepipeline#ConditionNotOverridableException": + throw await de_ConditionNotOverridableExceptionRes(parsedOutput, context); + case "ConflictException": + case "com.amazonaws.codepipeline#ConflictException": + throw await de_ConflictExceptionRes(parsedOutput, context); + case "NotLatestPipelineExecutionException": + case "com.amazonaws.codepipeline#NotLatestPipelineExecutionException": + throw await de_NotLatestPipelineExecutionExceptionRes(parsedOutput, context); case "ActionNotFoundException": case "com.amazonaws.codepipeline#ActionNotFoundException": throw await de_ActionNotFoundExceptionRes(parsedOutput, context); @@ -1665,12 +1799,6 @@ const de_CommandError = async (output: __HttpResponse, context: __SerdeContext): case "InvalidWebhookFilterPatternException": case "com.amazonaws.codepipeline#InvalidWebhookFilterPatternException": throw await de_InvalidWebhookFilterPatternExceptionRes(parsedOutput, context); - case "ConflictException": - case "com.amazonaws.codepipeline#ConflictException": - throw await de_ConflictExceptionRes(parsedOutput, context); - case "NotLatestPipelineExecutionException": - case "com.amazonaws.codepipeline#NotLatestPipelineExecutionException": - throw await de_NotLatestPipelineExecutionExceptionRes(parsedOutput, context); case "StageNotRetryableException": case "com.amazonaws.codepipeline#StageNotRetryableException": throw await de_StageNotRetryableExceptionRes(parsedOutput, context); @@ -1680,9 +1808,6 @@ const de_CommandError = async (output: __HttpResponse, context: __SerdeContext): case "UnableToRollbackStageException": case "com.amazonaws.codepipeline#UnableToRollbackStageException": throw await de_UnableToRollbackStageExceptionRes(parsedOutput, context); - case "ConcurrentPipelineExecutionsLimitExceededException": - case "com.amazonaws.codepipeline#ConcurrentPipelineExecutionsLimitExceededException": - throw await de_ConcurrentPipelineExecutionsLimitExceededExceptionRes(parsedOutput, context); case "DuplicatedStopRequestException": case "com.amazonaws.codepipeline#DuplicatedStopRequestException": throw await de_DuplicatedStopRequestExceptionRes(parsedOutput, context); @@ -1782,6 +1907,22 @@ const de_ConcurrentPipelineExecutionsLimitExceededExceptionRes = async ( return __decorateServiceException(exception, body); }; +/** + * deserializeAws_json1_1ConditionNotOverridableExceptionRes + */ +const de_ConditionNotOverridableExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const body = parsedOutput.body; + const deserialized: any = _json(body); + const exception = new ConditionNotOverridableException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized, + }); + return __decorateServiceException(exception, body); +}; + /** * deserializeAws_json1_1ConflictExceptionRes */ @@ -2369,11 +2510,25 @@ const se_ActionRevision = (input: ActionRevision, context: __SerdeContext): any // se_ArtifactStoreMap omitted. +// se_BeforeEntryConditions omitted. + // se_BlockerDeclaration omitted. +// se_Condition omitted. + +// se_ConditionList omitted. + // se_CreateCustomActionTypeInput omitted. -// se_CreatePipelineInput omitted. +/** + * serializeAws_json1_1CreatePipelineInput + */ +const se_CreatePipelineInput = (input: CreatePipelineInput, context: __SerdeContext): any => { + return take(input, { + pipeline: _json, + tags: _json, + }); +}; /** * serializeAws_json1_1CurrentRevision @@ -2463,6 +2618,10 @@ const se_CurrentRevision = (input: CurrentRevision, context: __SerdeContext): an // se_ListPipelinesInput omitted. +// se_ListRuleExecutionsInput omitted. + +// se_ListRuleTypesInput omitted. + // se_ListTagsForResourceInput omitted. // se_ListWebhooksInput omitted. @@ -2473,6 +2632,8 @@ const se_CurrentRevision = (input: CurrentRevision, context: __SerdeContext): an // se_OutputVariablesMap omitted. +// se_OverrideStageConditionInput omitted. + // se_PipelineDeclaration omitted. // se_PipelineExecutionFilter omitted. @@ -2556,6 +2717,16 @@ const se_PutThirdPartyJobSuccessResultInput = ( // se_RollbackStageInput omitted. +// se_RuleConfigurationMap omitted. + +// se_RuleDeclaration omitted. + +// se_RuleDeclarationList omitted. + +// se_RuleExecutionFilter omitted. + +// se_RuleTypeId omitted. + // se_SourceRevisionOverride omitted. // se_SourceRevisionOverrideList omitted. @@ -2582,6 +2753,8 @@ const se_StartPipelineExecutionInput = (input: StartPipelineExecutionInput, cont // se_SucceededInStageFilter omitted. +// se_SuccessConditions omitted. + // se_Tag omitted. // se_TagKeyList omitted. @@ -2594,7 +2767,14 @@ const se_StartPipelineExecutionInput = (input: StartPipelineExecutionInput, cont // se_UpdateActionTypeInput omitted. -// se_UpdatePipelineInput omitted. +/** + * serializeAws_json1_1UpdatePipelineInput + */ +const se_UpdatePipelineInput = (input: UpdatePipelineInput, context: __SerdeContext): any => { + return take(input, { + pipeline: _json, + }); +}; // se_WebhookAuthConfiguration omitted. @@ -2787,17 +2967,66 @@ const de_ArtifactRevisionList = (output: any, context: __SerdeContext): Artifact // de_AWSSessionCredentials omitted. +// de_BeforeEntryConditions omitted. + // de_BlockerDeclaration omitted. // de_ConcurrentModificationException omitted. // de_ConcurrentPipelineExecutionsLimitExceededException omitted. +// de_Condition omitted. + +/** + * deserializeAws_json1_1ConditionExecution + */ +const de_ConditionExecution = (output: any, context: __SerdeContext): ConditionExecution => { + return take(output, { + lastStatusChange: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + status: __expectString, + summary: __expectString, + }) as any; +}; + +// de_ConditionList omitted. + +// de_ConditionNotOverridableException omitted. + +/** + * deserializeAws_json1_1ConditionState + */ +const de_ConditionState = (output: any, context: __SerdeContext): ConditionState => { + return take(output, { + latestExecution: (_: any) => de_ConditionExecution(_, context), + ruleStates: (_: any) => de_RuleStateList(_, context), + }) as any; +}; + +/** + * deserializeAws_json1_1ConditionStateList + */ +const de_ConditionStateList = (output: any, context: __SerdeContext): ConditionState[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_ConditionState(entry, context); + }); + return retVal; +}; + // de_ConflictException omitted. // de_CreateCustomActionTypeOutput omitted. -// de_CreatePipelineOutput omitted. +/** + * deserializeAws_json1_1CreatePipelineOutput + */ +const de_CreatePipelineOutput = (output: any, context: __SerdeContext): CreatePipelineOutput => { + return take(output, { + pipeline: _json, + tags: _json, + }) as any; +}; // de_DeleteWebhookOutput omitted. @@ -2957,6 +3186,18 @@ const de_ListPipelinesOutput = (output: any, context: __SerdeContext): ListPipel }) as any; }; +/** + * deserializeAws_json1_1ListRuleExecutionsOutput + */ +const de_ListRuleExecutionsOutput = (output: any, context: __SerdeContext): ListRuleExecutionsOutput => { + return take(output, { + nextToken: __expectString, + ruleExecutionDetails: (_: any) => de_RuleExecutionDetailList(_, context), + }) as any; +}; + +// de_ListRuleTypesOutput omitted. + // de_ListTagsForResourceOutput omitted. /** @@ -3148,12 +3389,122 @@ const de_PutWebhookOutput = (output: any, context: __SerdeContext): PutWebhookOu // de_ResolvedPipelineVariableList omitted. +// de_ResolvedRuleConfigurationMap omitted. + // de_ResourceNotFoundException omitted. // de_RetryStageExecutionOutput omitted. // de_RollbackStageOutput omitted. +// de_RuleConfigurationMap omitted. + +// de_RuleConfigurationProperty omitted. + +// de_RuleConfigurationPropertyList omitted. + +// de_RuleDeclaration omitted. + +// de_RuleDeclarationList omitted. + +/** + * deserializeAws_json1_1RuleExecution + */ +const de_RuleExecution = (output: any, context: __SerdeContext): RuleExecution => { + return take(output, { + errorDetails: _json, + externalExecutionId: __expectString, + externalExecutionUrl: __expectString, + lastStatusChange: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + lastUpdatedBy: __expectString, + ruleExecutionId: __expectString, + status: __expectString, + summary: __expectString, + token: __expectString, + }) as any; +}; + +/** + * deserializeAws_json1_1RuleExecutionDetail + */ +const de_RuleExecutionDetail = (output: any, context: __SerdeContext): RuleExecutionDetail => { + return take(output, { + input: _json, + lastUpdateTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + output: _json, + pipelineExecutionId: __expectString, + pipelineVersion: __expectInt32, + ruleExecutionId: __expectString, + ruleName: __expectString, + stageName: __expectString, + startTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + status: __expectString, + updatedBy: __expectString, + }) as any; +}; + +/** + * deserializeAws_json1_1RuleExecutionDetailList + */ +const de_RuleExecutionDetailList = (output: any, context: __SerdeContext): RuleExecutionDetail[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_RuleExecutionDetail(entry, context); + }); + return retVal; +}; + +// de_RuleExecutionInput omitted. + +// de_RuleExecutionOutput omitted. + +// de_RuleExecutionResult omitted. + +/** + * deserializeAws_json1_1RuleRevision + */ +const de_RuleRevision = (output: any, context: __SerdeContext): RuleRevision => { + return take(output, { + created: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + revisionChangeId: __expectString, + revisionId: __expectString, + }) as any; +}; + +/** + * deserializeAws_json1_1RuleState + */ +const de_RuleState = (output: any, context: __SerdeContext): RuleState => { + return take(output, { + currentRevision: (_: any) => de_RuleRevision(_, context), + entityUrl: __expectString, + latestExecution: (_: any) => de_RuleExecution(_, context), + revisionUrl: __expectString, + ruleName: __expectString, + }) as any; +}; + +/** + * deserializeAws_json1_1RuleStateList + */ +const de_RuleStateList = (output: any, context: __SerdeContext): RuleState[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_RuleState(entry, context); + }); + return retVal; +}; + +// de_RuleType omitted. + +// de_RuleTypeId omitted. + +// de_RuleTypeList omitted. + +// de_RuleTypeSettings omitted. + // de_S3ArtifactLocation omitted. // de_S3Location omitted. @@ -3166,6 +3517,18 @@ const de_PutWebhookOutput = (output: any, context: __SerdeContext): PutWebhookOu // de_StageBlockerDeclarationList omitted. +// de_StageConditionsExecution omitted. + +/** + * deserializeAws_json1_1StageConditionState + */ +const de_StageConditionState = (output: any, context: __SerdeContext): StageConditionState => { + return take(output, { + conditionStates: (_: any) => de_ConditionStateList(_, context), + latestExecution: _json, + }) as any; +}; + // de_StageContext omitted. // de_StageDeclaration omitted. @@ -3184,10 +3547,13 @@ const de_PutWebhookOutput = (output: any, context: __SerdeContext): PutWebhookOu const de_StageState = (output: any, context: __SerdeContext): StageState => { return take(output, { actionStates: (_: any) => de_ActionStateList(_, context), + beforeEntryConditionState: (_: any) => de_StageConditionState(_, context), inboundExecution: _json, inboundExecutions: _json, inboundTransitionState: (_: any) => de_TransitionState(_, context), latestExecution: _json, + onFailureConditionState: (_: any) => de_StageConditionState(_, context), + onSuccessConditionState: (_: any) => de_StageConditionState(_, context), stageName: __expectString, }) as any; }; @@ -3210,6 +3576,8 @@ const de_StageStateList = (output: any, context: __SerdeContext): StageState[] = // de_StopPipelineExecutionOutput omitted. +// de_SuccessConditions omitted. + // de_Tag omitted. // de_TagList omitted. @@ -3242,7 +3610,14 @@ const de_TransitionState = (output: any, context: __SerdeContext): TransitionSta // de_UntagResourceOutput omitted. -// de_UpdatePipelineOutput omitted. +/** + * deserializeAws_json1_1UpdatePipelineOutput + */ +const de_UpdatePipelineOutput = (output: any, context: __SerdeContext): UpdatePipelineOutput => { + return take(output, { + pipeline: _json, + }) as any; +}; // de_ValidationException omitted. diff --git a/codegen/sdk-codegen/aws-models/codepipeline.json b/codegen/sdk-codegen/aws-models/codepipeline.json index 32fc574f898c..463faea6d3b7 100644 --- a/codegen/sdk-codegen/aws-models/codepipeline.json +++ b/codegen/sdk-codegen/aws-models/codepipeline.json @@ -1679,6 +1679,21 @@ } } }, + "com.amazonaws.codepipeline#BeforeEntryConditions": { + "type": "structure", + "members": { + "conditions": { + "target": "com.amazonaws.codepipeline#ConditionList", + "traits": { + "smithy.api#documentation": "

The conditions that are configured as entry conditions.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The conditions for making checks for entry to a stage.

" + } + }, "com.amazonaws.codepipeline#BlockerDeclaration": { "type": "structure", "members": { @@ -1819,12 +1834,21 @@ { "target": "com.amazonaws.codepipeline#ListPipelines" }, + { + "target": "com.amazonaws.codepipeline#ListRuleExecutions" + }, + { + "target": "com.amazonaws.codepipeline#ListRuleTypes" + }, { "target": "com.amazonaws.codepipeline#ListTagsForResource" }, { "target": "com.amazonaws.codepipeline#ListWebhooks" }, + { + "target": "com.amazonaws.codepipeline#OverrideStageCondition" + }, { "target": "com.amazonaws.codepipeline#PollForJobs" }, @@ -2863,6 +2887,166 @@ "smithy.api#error": "client" } }, + "com.amazonaws.codepipeline#Condition": { + "type": "structure", + "members": { + "result": { + "target": "com.amazonaws.codepipeline#Result", + "traits": { + "smithy.api#documentation": "

The action to be done when the condition is met. For example, rolling back an execution for a failure condition.

" + } + }, + "rules": { + "target": "com.amazonaws.codepipeline#RuleDeclarationList", + "traits": { + "smithy.api#documentation": "

The rules that make up the condition.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The condition for the stage. A condition is made up of the rules and the result for the condition.

" + } + }, + "com.amazonaws.codepipeline#ConditionExecution": { + "type": "structure", + "members": { + "status": { + "target": "com.amazonaws.codepipeline#ConditionExecutionStatus", + "traits": { + "smithy.api#documentation": "

The status of the run for a condition.

" + } + }, + "summary": { + "target": "com.amazonaws.codepipeline#ExecutionSummary", + "traits": { + "smithy.api#documentation": "

The summary of information about a run for a condition.

" + } + }, + "lastStatusChange": { + "target": "com.amazonaws.codepipeline#Timestamp", + "traits": { + "smithy.api#documentation": "

The last status change of the condition.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The run of a condition.

" + } + }, + "com.amazonaws.codepipeline#ConditionExecutionStatus": { + "type": "enum", + "members": { + "InProgress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "InProgress" + } + }, + "Failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Failed" + } + }, + "Errored": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Errored" + } + }, + "Succeeded": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Succeeded" + } + }, + "Cancelled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Cancelled" + } + }, + "Abandoned": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Abandoned" + } + }, + "Overridden": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Overridden" + } + } + } + }, + "com.amazonaws.codepipeline#ConditionList": { + "type": "list", + "member": { + "target": "com.amazonaws.codepipeline#Condition" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.codepipeline#ConditionNotOverridableException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.codepipeline#String" + } + }, + "traits": { + "smithy.api#documentation": "

Unable to override because the condition does not allow overrides.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.codepipeline#ConditionState": { + "type": "structure", + "members": { + "latestExecution": { + "target": "com.amazonaws.codepipeline#ConditionExecution", + "traits": { + "smithy.api#documentation": "

The state of the latest run of the rule.

" + } + }, + "ruleStates": { + "target": "com.amazonaws.codepipeline#RuleStateList", + "traits": { + "smithy.api#documentation": "

The state of the rules for the condition.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the state of the condition.

" + } + }, + "com.amazonaws.codepipeline#ConditionStateList": { + "type": "list", + "member": { + "target": "com.amazonaws.codepipeline#ConditionState" + } + }, + "com.amazonaws.codepipeline#ConditionType": { + "type": "enum", + "members": { + "BEFORE_ENTRY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BEFORE_ENTRY" + } + }, + "ON_SUCCESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ON_SUCCESS" + } + } + } + }, "com.amazonaws.codepipeline#ConflictException": { "type": "structure", "members": { @@ -3655,6 +3839,12 @@ "traits": { "smithy.api#documentation": "

The specified result for when the failure conditions are met, such as rolling back the\n stage.

" } + }, + "conditions": { + "target": "com.amazonaws.codepipeline#ConditionList", + "traits": { + "smithy.api#documentation": "

The conditions that are configured as failure conditions.

" + } } }, "traits": { @@ -5241,144 +5431,98 @@ "smithy.api#output": {} } }, - "com.amazonaws.codepipeline#ListTagsForResource": { + "com.amazonaws.codepipeline#ListRuleExecutions": { "type": "operation", "input": { - "target": "com.amazonaws.codepipeline#ListTagsForResourceInput" + "target": "com.amazonaws.codepipeline#ListRuleExecutionsInput" }, "output": { - "target": "com.amazonaws.codepipeline#ListTagsForResourceOutput" + "target": "com.amazonaws.codepipeline#ListRuleExecutionsOutput" }, "errors": [ { - "target": "com.amazonaws.codepipeline#InvalidArnException" + "target": "com.amazonaws.codepipeline#InvalidNextTokenException" }, { - "target": "com.amazonaws.codepipeline#InvalidNextTokenException" + "target": "com.amazonaws.codepipeline#PipelineExecutionNotFoundException" }, { - "target": "com.amazonaws.codepipeline#ResourceNotFoundException" + "target": "com.amazonaws.codepipeline#PipelineNotFoundException" }, { "target": "com.amazonaws.codepipeline#ValidationException" } ], "traits": { - "smithy.api#documentation": "

Gets the set of key-value pairs (metadata) that are used to manage the\n resource.

", + "smithy.api#documentation": "

Lists the rule executions that have occurred in a pipeline configured for conditions with rules.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", - "items": "tags", + "items": "ruleExecutionDetails", "pageSize": "maxResults" } } }, - "com.amazonaws.codepipeline#ListTagsForResourceInput": { + "com.amazonaws.codepipeline#ListRuleExecutionsInput": { "type": "structure", "members": { - "resourceArn": { - "target": "com.amazonaws.codepipeline#ResourceArn", + "pipelineName": { + "target": "com.amazonaws.codepipeline#PipelineName", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource to get tags for.

", + "smithy.api#documentation": "

The name of the pipeline for which you want to get execution summary\n information.

", "smithy.api#required": {} } }, - "nextToken": { - "target": "com.amazonaws.codepipeline#NextToken", + "filter": { + "target": "com.amazonaws.codepipeline#RuleExecutionFilter", "traits": { - "smithy.api#documentation": "

The token that was returned from the previous API call, which would be used to return\n the next page of the list. The ListTagsforResource call lists all available tags in one\n call and does not use pagination.

" + "smithy.api#documentation": "

Input information used to filter rule execution history.

" } }, "maxResults": { "target": "com.amazonaws.codepipeline#MaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.codepipeline#ListTagsForResourceOutput": { - "type": "structure", - "members": { - "tags": { - "target": "com.amazonaws.codepipeline#TagList", - "traits": { - "smithy.api#documentation": "

The tags for the resource.

" + "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned nextToken value. Pipeline history is\n limited to the most recent 12 months, based on pipeline execution start times. Default\n value is 100.

" } }, "nextToken": { "target": "com.amazonaws.codepipeline#NextToken", "traits": { - "smithy.api#documentation": "

If the amount of returned information is significantly large, an identifier is also\n returned and can be used in a subsequent API call to return the next page of the list.\n The ListTagsforResource call lists all available tags in one call and does not use\n pagination.

" + "smithy.api#documentation": "

The token that was returned from the previous ListRuleExecutions\n call, which can be used to return the next set of rule executions in the\n list.

" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.codepipeline#ListWebhookItem": { + "com.amazonaws.codepipeline#ListRuleExecutionsOutput": { "type": "structure", "members": { - "definition": { - "target": "com.amazonaws.codepipeline#WebhookDefinition", - "traits": { - "smithy.api#documentation": "

The detail returned for each webhook, such as the webhook authentication type and\n filter rules.

", - "smithy.api#required": {} - } - }, - "url": { - "target": "com.amazonaws.codepipeline#WebhookUrl", - "traits": { - "smithy.api#documentation": "

A unique URL generated by CodePipeline. When a POST request is made to this\n URL, the defined pipeline is started as long as the body of the post request satisfies\n the defined authentication and filtering conditions. Deleting and re-creating a webhook\n makes the old URL invalid and generates a new one.

", - "smithy.api#required": {} - } - }, - "errorMessage": { - "target": "com.amazonaws.codepipeline#WebhookErrorMessage", - "traits": { - "smithy.api#documentation": "

The text of the error message about the webhook.

" - } - }, - "errorCode": { - "target": "com.amazonaws.codepipeline#WebhookErrorCode", + "ruleExecutionDetails": { + "target": "com.amazonaws.codepipeline#RuleExecutionDetailList", "traits": { - "smithy.api#documentation": "

The number code of the error.

" - } - }, - "lastTriggered": { - "target": "com.amazonaws.codepipeline#WebhookLastTriggered", - "traits": { - "smithy.api#documentation": "

The date and time a webhook was last successfully triggered, in timestamp\n format.

" - } - }, - "arn": { - "target": "com.amazonaws.codepipeline#WebhookArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the webhook.

" + "smithy.api#documentation": "

Details about the output for listing rule executions.

" } }, - "tags": { - "target": "com.amazonaws.codepipeline#TagList", + "nextToken": { + "target": "com.amazonaws.codepipeline#NextToken", "traits": { - "smithy.api#documentation": "

Specifies the tags applied to the webhook.

" + "smithy.api#documentation": "

A token that can be used in the next ListRuleExecutions call. To\n view all items in the list, continue to call this operation with each subsequent token\n until no more nextToken values are returned.

" } } }, "traits": { - "smithy.api#documentation": "

The detail returned for each webhook after listing webhooks, such as the webhook\n URL, the webhook name, and the webhook ARN.

" + "smithy.api#output": {} } }, - "com.amazonaws.codepipeline#ListWebhooks": { + "com.amazonaws.codepipeline#ListRuleTypes": { "type": "operation", "input": { - "target": "com.amazonaws.codepipeline#ListWebhooksInput" + "target": "com.amazonaws.codepipeline#ListRuleTypesInput" }, "output": { - "target": "com.amazonaws.codepipeline#ListWebhooksOutput" + "target": "com.amazonaws.codepipeline#ListRuleTypesOutput" }, "errors": [ { @@ -5389,28 +5533,22 @@ } ], "traits": { - "smithy.api#documentation": "

Gets a listing of all the webhooks in this Amazon Web Services Region for this\n account. The output lists all webhooks and includes the webhook URL and ARN and the\n configuration for each webhook.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "webhooks", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Lists the rules for the condition.

" } }, - "com.amazonaws.codepipeline#ListWebhooksInput": { + "com.amazonaws.codepipeline#ListRuleTypesInput": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.codepipeline#NextToken", + "ruleOwnerFilter": { + "target": "com.amazonaws.codepipeline#RuleOwner", "traits": { - "smithy.api#documentation": "

The token that was returned from the previous ListWebhooks call, which can be used\n to return the next set of webhooks in the list.

" + "smithy.api#documentation": "

The rule owner to filter on.

" } }, - "MaxResults": { - "target": "com.amazonaws.codepipeline#MaxResults", + "regionFilter": { + "target": "com.amazonaws.codepipeline#AWSRegionName", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The rule Region to filter on.

" } } }, @@ -5418,18 +5556,210 @@ "smithy.api#input": {} } }, - "com.amazonaws.codepipeline#ListWebhooksOutput": { + "com.amazonaws.codepipeline#ListRuleTypesOutput": { "type": "structure", "members": { - "webhooks": { - "target": "com.amazonaws.codepipeline#WebhookList", + "ruleTypes": { + "target": "com.amazonaws.codepipeline#RuleTypeList", "traits": { - "smithy.api#documentation": "

The JSON detail returned for each webhook in the list output for the ListWebhooks\n call.

" + "smithy.api#documentation": "

Lists the rules that are configured for the condition.

", + "smithy.api#required": {} } - }, - "NextToken": { - "target": "com.amazonaws.codepipeline#NextToken", - "traits": { + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.codepipeline#ListTagsForResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.codepipeline#ListTagsForResourceInput" + }, + "output": { + "target": "com.amazonaws.codepipeline#ListTagsForResourceOutput" + }, + "errors": [ + { + "target": "com.amazonaws.codepipeline#InvalidArnException" + }, + { + "target": "com.amazonaws.codepipeline#InvalidNextTokenException" + }, + { + "target": "com.amazonaws.codepipeline#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.codepipeline#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Gets the set of key-value pairs (metadata) that are used to manage the\n resource.

", + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "items": "tags", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.codepipeline#ListTagsForResourceInput": { + "type": "structure", + "members": { + "resourceArn": { + "target": "com.amazonaws.codepipeline#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource to get tags for.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.codepipeline#NextToken", + "traits": { + "smithy.api#documentation": "

The token that was returned from the previous API call, which would be used to return\n the next page of the list. The ListTagsforResource call lists all available tags in one\n call and does not use pagination.

" + } + }, + "maxResults": { + "target": "com.amazonaws.codepipeline#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.codepipeline#ListTagsForResourceOutput": { + "type": "structure", + "members": { + "tags": { + "target": "com.amazonaws.codepipeline#TagList", + "traits": { + "smithy.api#documentation": "

The tags for the resource.

" + } + }, + "nextToken": { + "target": "com.amazonaws.codepipeline#NextToken", + "traits": { + "smithy.api#documentation": "

If the amount of returned information is significantly large, an identifier is also\n returned and can be used in a subsequent API call to return the next page of the list.\n The ListTagsforResource call lists all available tags in one call and does not use\n pagination.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.codepipeline#ListWebhookItem": { + "type": "structure", + "members": { + "definition": { + "target": "com.amazonaws.codepipeline#WebhookDefinition", + "traits": { + "smithy.api#documentation": "

The detail returned for each webhook, such as the webhook authentication type and\n filter rules.

", + "smithy.api#required": {} + } + }, + "url": { + "target": "com.amazonaws.codepipeline#WebhookUrl", + "traits": { + "smithy.api#documentation": "

A unique URL generated by CodePipeline. When a POST request is made to this\n URL, the defined pipeline is started as long as the body of the post request satisfies\n the defined authentication and filtering conditions. Deleting and re-creating a webhook\n makes the old URL invalid and generates a new one.

", + "smithy.api#required": {} + } + }, + "errorMessage": { + "target": "com.amazonaws.codepipeline#WebhookErrorMessage", + "traits": { + "smithy.api#documentation": "

The text of the error message about the webhook.

" + } + }, + "errorCode": { + "target": "com.amazonaws.codepipeline#WebhookErrorCode", + "traits": { + "smithy.api#documentation": "

The number code of the error.

" + } + }, + "lastTriggered": { + "target": "com.amazonaws.codepipeline#WebhookLastTriggered", + "traits": { + "smithy.api#documentation": "

The date and time a webhook was last successfully triggered, in timestamp\n format.

" + } + }, + "arn": { + "target": "com.amazonaws.codepipeline#WebhookArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the webhook.

" + } + }, + "tags": { + "target": "com.amazonaws.codepipeline#TagList", + "traits": { + "smithy.api#documentation": "

Specifies the tags applied to the webhook.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The detail returned for each webhook after listing webhooks, such as the webhook\n URL, the webhook name, and the webhook ARN.

" + } + }, + "com.amazonaws.codepipeline#ListWebhooks": { + "type": "operation", + "input": { + "target": "com.amazonaws.codepipeline#ListWebhooksInput" + }, + "output": { + "target": "com.amazonaws.codepipeline#ListWebhooksOutput" + }, + "errors": [ + { + "target": "com.amazonaws.codepipeline#InvalidNextTokenException" + }, + { + "target": "com.amazonaws.codepipeline#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Gets a listing of all the webhooks in this Amazon Web Services Region for this\n account. The output lists all webhooks and includes the webhook URL and ARN and the\n configuration for each webhook.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "webhooks", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.codepipeline#ListWebhooksInput": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.codepipeline#NextToken", + "traits": { + "smithy.api#documentation": "

The token that was returned from the previous ListWebhooks call, which can be used\n to return the next set of webhooks in the list.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.codepipeline#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned nextToken value.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.codepipeline#ListWebhooksOutput": { + "type": "structure", + "members": { + "webhooks": { + "target": "com.amazonaws.codepipeline#WebhookList", + "traits": { + "smithy.api#documentation": "

The JSON detail returned for each webhook in the list output for the ListWebhooks\n call.

" + } + }, + "NextToken": { + "target": "com.amazonaws.codepipeline#NextToken", + "traits": { "smithy.api#documentation": "

If the amount of returned information is significantly large, an identifier is also\n returned and can be used in a subsequent ListWebhooks call to return the next set of\n webhooks in the list.

" } } @@ -5606,6 +5936,77 @@ "com.amazonaws.codepipeline#OutputVariablesValue": { "type": "string" }, + "com.amazonaws.codepipeline#OverrideStageCondition": { + "type": "operation", + "input": { + "target": "com.amazonaws.codepipeline#OverrideStageConditionInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.codepipeline#ConcurrentPipelineExecutionsLimitExceededException" + }, + { + "target": "com.amazonaws.codepipeline#ConditionNotOverridableException" + }, + { + "target": "com.amazonaws.codepipeline#ConflictException" + }, + { + "target": "com.amazonaws.codepipeline#NotLatestPipelineExecutionException" + }, + { + "target": "com.amazonaws.codepipeline#PipelineNotFoundException" + }, + { + "target": "com.amazonaws.codepipeline#StageNotFoundException" + }, + { + "target": "com.amazonaws.codepipeline#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Used to override a stage condition.

" + } + }, + "com.amazonaws.codepipeline#OverrideStageConditionInput": { + "type": "structure", + "members": { + "pipelineName": { + "target": "com.amazonaws.codepipeline#PipelineName", + "traits": { + "smithy.api#documentation": "

The name of the pipeline with the stage that will override the condition.

", + "smithy.api#required": {} + } + }, + "stageName": { + "target": "com.amazonaws.codepipeline#StageName", + "traits": { + "smithy.api#documentation": "

The name of the stage for the override.

", + "smithy.api#required": {} + } + }, + "pipelineExecutionId": { + "target": "com.amazonaws.codepipeline#PipelineExecutionId", + "traits": { + "smithy.api#documentation": "

The ID of the pipeline execution for the override.

", + "smithy.api#required": {} + } + }, + "conditionType": { + "target": "com.amazonaws.codepipeline#ConditionType", + "traits": { + "smithy.api#documentation": "

The type of condition to override for the stage, such as entry conditions, failure conditions, or success conditions.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, "com.amazonaws.codepipeline#Percentage": { "type": "integer", "traits": { @@ -6495,7 +6896,10 @@ "target": "com.amazonaws.codepipeline#ActionNotFoundException" }, { - "target": "com.amazonaws.codepipeline#PipelineNotFoundException" + "target": "com.amazonaws.codepipeline#ConcurrentPipelineExecutionsLimitExceededException" + }, + { + "target": "com.amazonaws.codepipeline#PipelineNotFoundException" }, { "target": "com.amazonaws.codepipeline#StageNotFoundException" @@ -7069,6 +7473,15 @@ "target": "com.amazonaws.codepipeline#ResolvedPipelineVariable" } }, + "com.amazonaws.codepipeline#ResolvedRuleConfigurationMap": { + "type": "map", + "key": { + "target": "com.amazonaws.codepipeline#String" + }, + "value": { + "target": "com.amazonaws.codepipeline#String" + } + }, "com.amazonaws.codepipeline#ResourceArn": { "type": "string", "traits": { @@ -7098,6 +7511,12 @@ "traits": { "smithy.api#enumValue": "ROLLBACK" } + }, + "FAIL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAIL" + } } } }, @@ -7110,6 +7529,9 @@ "target": "com.amazonaws.codepipeline#RetryStageExecutionOutput" }, "errors": [ + { + "target": "com.amazonaws.codepipeline#ConcurrentPipelineExecutionsLimitExceededException" + }, { "target": "com.amazonaws.codepipeline#ConflictException" }, @@ -7301,291 +7723,1053 @@ "smithy.api#output": {} } }, - "com.amazonaws.codepipeline#S3ArtifactLocation": { - "type": "structure", + "com.amazonaws.codepipeline#RuleCategory": { + "type": "enum", "members": { - "bucketName": { - "target": "com.amazonaws.codepipeline#S3BucketName", - "traits": { - "smithy.api#documentation": "

The name of the S3 bucket.

", - "smithy.api#required": {} - } - }, - "objectKey": { - "target": "com.amazonaws.codepipeline#S3ObjectKey", + "Rule": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The key of the object in the S3 bucket, which uniquely identifies the object in the\n bucket.

", - "smithy.api#required": {} + "smithy.api#enumValue": "Rule" } } - }, - "traits": { - "smithy.api#documentation": "

The location of the S3 bucket that contains a revision.

" - } - }, - "com.amazonaws.codepipeline#S3Bucket": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 3, - "max": 63 - } } }, - "com.amazonaws.codepipeline#S3BucketName": { - "type": "string" - }, - "com.amazonaws.codepipeline#S3Key": { + "com.amazonaws.codepipeline#RuleConfigurationKey": { "type": "string", "traits": { "smithy.api#length": { "min": 1, - "max": 100 + "max": 50 } } }, - "com.amazonaws.codepipeline#S3Location": { - "type": "structure", - "members": { - "bucket": { - "target": "com.amazonaws.codepipeline#S3Bucket", - "traits": { - "smithy.api#documentation": "

The Amazon S3 artifact bucket for an action's artifacts.

" - } - }, - "key": { - "target": "com.amazonaws.codepipeline#S3Key", - "traits": { - "smithy.api#documentation": "

The artifact name.

" - } - } + "com.amazonaws.codepipeline#RuleConfigurationMap": { + "type": "map", + "key": { + "target": "com.amazonaws.codepipeline#RuleConfigurationKey" + }, + "value": { + "target": "com.amazonaws.codepipeline#RuleConfigurationValue" }, - "traits": { - "smithy.api#documentation": "

The Amazon S3 artifact location for an action's artifacts.

" - } - }, - "com.amazonaws.codepipeline#S3ObjectKey": { - "type": "string" - }, - "com.amazonaws.codepipeline#SecretAccessKey": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.codepipeline#ServicePrincipal": { - "type": "string", "traits": { "smithy.api#length": { - "min": 1, - "max": 128 + "min": 0, + "max": 200 } } }, - "com.amazonaws.codepipeline#SessionToken": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.codepipeline#SourceRevision": { + "com.amazonaws.codepipeline#RuleConfigurationProperty": { "type": "structure", "members": { - "actionName": { - "target": "com.amazonaws.codepipeline#ActionName", + "name": { + "target": "com.amazonaws.codepipeline#RuleConfigurationKey", "traits": { - "smithy.api#documentation": "

The name of the action that processed the revision to the source\n artifact.

", + "smithy.api#documentation": "

The name of the rule configuration property.

", "smithy.api#required": {} } }, - "revisionId": { - "target": "com.amazonaws.codepipeline#Revision", + "required": { + "target": "com.amazonaws.codepipeline#Boolean", "traits": { - "smithy.api#documentation": "

The system-generated unique ID that identifies the revision number of the\n artifact.

" + "smithy.api#default": false, + "smithy.api#documentation": "

Whether the configuration property is a required value.

", + "smithy.api#required": {} } }, - "revisionSummary": { - "target": "com.amazonaws.codepipeline#RevisionSummary", + "key": { + "target": "com.amazonaws.codepipeline#Boolean", "traits": { - "smithy.api#documentation": "

Summary information about the most recent revision of the artifact. For GitHub and\n CodeCommit repositories, the commit message. For Amazon S3 buckets or actions,\n the user-provided content of a codepipeline-artifact-revision-summary key\n specified in the object metadata.

" + "smithy.api#default": false, + "smithy.api#documentation": "

Whether the configuration property is a key.

", + "smithy.api#required": {} } }, - "revisionUrl": { - "target": "com.amazonaws.codepipeline#Url", + "secret": { + "target": "com.amazonaws.codepipeline#Boolean", "traits": { - "smithy.api#documentation": "

The commit ID for the artifact revision. For artifacts stored in GitHub or\n CodeCommit repositories, the commit ID is linked to a commit details page.

" + "smithy.api#default": false, + "smithy.api#documentation": "

Whether the configuration property is secret.

\n

When updating a pipeline, passing * * * * * without changing any other values of\n the action preserves the previous value of the secret.

", + "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#documentation": "

Information about the version (or revision) of a source artifact that initiated a\n pipeline execution.

" - } - }, - "com.amazonaws.codepipeline#SourceRevisionList": { - "type": "list", - "member": { - "target": "com.amazonaws.codepipeline#SourceRevision" - } - }, - "com.amazonaws.codepipeline#SourceRevisionOverride": { - "type": "structure", - "members": { - "actionName": { - "target": "com.amazonaws.codepipeline#ActionName", + }, + "queryable": { + "target": "com.amazonaws.codepipeline#Boolean", "traits": { - "smithy.api#documentation": "

The name of the action where the override will be applied.

", - "smithy.api#required": {} + "smithy.api#default": false, + "smithy.api#documentation": "

Indicates whether the property can be queried.

\n

If you create a pipeline with a condition and rule, and that rule contains a queryable property, the value for that configuration property is subject to other\n restrictions. The value must be less than or equal to twenty (20) characters. The value\n can contain only alphanumeric characters, underscores, and hyphens.

" } }, - "revisionType": { - "target": "com.amazonaws.codepipeline#SourceRevisionType", + "description": { + "target": "com.amazonaws.codepipeline#Description", "traits": { - "smithy.api#documentation": "

The type of source revision, based on the source provider. For example, the revision\n type for the CodeCommit action provider is the commit ID.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The description of the action configuration property that is displayed to\n users.

" } }, - "revisionValue": { - "target": "com.amazonaws.codepipeline#Revision", + "type": { + "target": "com.amazonaws.codepipeline#RuleConfigurationPropertyType", "traits": { - "smithy.api#documentation": "

The source revision, or version of your source artifact, with the changes that you\n want to run in the pipeline execution.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The type of the configuration property.

" } } }, "traits": { - "smithy.api#documentation": "

A list that allows you to specify, or override, the source revision for a pipeline\n execution that's being started. A source revision is the version with all the changes to\n your application code, or source artifact, for the pipeline execution.

\n \n

For the S3_OBJECT_VERSION_ID and S3_OBJECT_KEY types of source revisions, either\n of the types can be used independently, or they can be used together to override the\n source with a specific ObjectKey and VersionID.

\n
" + "smithy.api#documentation": "

Represents information about a rule configuration property.

" } }, - "com.amazonaws.codepipeline#SourceRevisionOverrideList": { + "com.amazonaws.codepipeline#RuleConfigurationPropertyList": { "type": "list", "member": { - "target": "com.amazonaws.codepipeline#SourceRevisionOverride" + "target": "com.amazonaws.codepipeline#RuleConfigurationProperty" }, "traits": { "smithy.api#length": { "min": 0, - "max": 50 + "max": 10 } } }, - "com.amazonaws.codepipeline#SourceRevisionType": { + "com.amazonaws.codepipeline#RuleConfigurationPropertyType": { "type": "enum", "members": { - "COMMIT_ID": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COMMIT_ID" - } - }, - "IMAGE_DIGEST": { + "String": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "IMAGE_DIGEST" + "smithy.api#enumValue": "String" } }, - "S3_OBJECT_VERSION_ID": { + "Number": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "S3_OBJECT_VERSION_ID" + "smithy.api#enumValue": "Number" } }, - "S3_OBJECT_KEY": { + "Boolean": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "S3_OBJECT_KEY" + "smithy.api#enumValue": "Boolean" } } } }, - "com.amazonaws.codepipeline#StageActionDeclarationList": { - "type": "list", - "member": { - "target": "com.amazonaws.codepipeline#ActionDeclaration" - } - }, - "com.amazonaws.codepipeline#StageBlockerDeclarationList": { - "type": "list", - "member": { - "target": "com.amazonaws.codepipeline#BlockerDeclaration" - } - }, - "com.amazonaws.codepipeline#StageContext": { - "type": "structure", - "members": { - "name": { - "target": "com.amazonaws.codepipeline#StageName", - "traits": { - "smithy.api#documentation": "

The name of the stage.

" - } - } - }, + "com.amazonaws.codepipeline#RuleConfigurationValue": { + "type": "string", "traits": { - "smithy.api#documentation": "

Represents information about a stage to a job worker.

" + "smithy.api#length": { + "min": 1, + "max": 10000 + } } }, - "com.amazonaws.codepipeline#StageDeclaration": { + "com.amazonaws.codepipeline#RuleDeclaration": { "type": "structure", "members": { "name": { - "target": "com.amazonaws.codepipeline#StageName", + "target": "com.amazonaws.codepipeline#RuleName", "traits": { - "smithy.api#documentation": "

The name of the stage.

", + "smithy.api#documentation": "

The name of the rule that is created for the condition, such as CheckAllResults.

", "smithy.api#required": {} } }, - "blockers": { - "target": "com.amazonaws.codepipeline#StageBlockerDeclarationList", + "ruleTypeId": { + "target": "com.amazonaws.codepipeline#RuleTypeId", "traits": { - "smithy.api#documentation": "

Reserved for future use.

" + "smithy.api#documentation": "

The ID for the rule type, which is made up of the combined values for category, owner, provider, and version.

", + "smithy.api#required": {} } }, - "actions": { - "target": "com.amazonaws.codepipeline#StageActionDeclarationList", + "configuration": { + "target": "com.amazonaws.codepipeline#RuleConfigurationMap", "traits": { - "smithy.api#documentation": "

The actions included in a stage.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The action configuration fields for the rule.

" } }, - "onFailure": { - "target": "com.amazonaws.codepipeline#FailureConditions", + "inputArtifacts": { + "target": "com.amazonaws.codepipeline#InputArtifactList", "traits": { - "smithy.api#documentation": "

The method to use when a stage has not completed successfully. For example,\n configuring this field for rollback will roll back a failed stage automatically to the\n last successful pipeline execution in the stage.

" + "smithy.api#documentation": "

The input artifacts fields for the rule, such as specifying an input file for the rule.

" } - } - }, - "traits": { - "smithy.api#documentation": "

Represents information about a stage and its definition.

" - } - }, - "com.amazonaws.codepipeline#StageExecution": { - "type": "structure", - "members": { - "pipelineExecutionId": { - "target": "com.amazonaws.codepipeline#PipelineExecutionId", + }, + "roleArn": { + "target": "com.amazonaws.codepipeline#RoleArn", "traits": { - "smithy.api#documentation": "

The ID of the pipeline execution associated with the stage.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The pipeline role ARN associated with the rule.

" } }, - "status": { - "target": "com.amazonaws.codepipeline#StageExecutionStatus", + "region": { + "target": "com.amazonaws.codepipeline#AWSRegionName", "traits": { - "smithy.api#documentation": "

The status of the stage, or for a completed stage, the last status of the\n stage.

\n \n

A status of cancelled means that the pipeline’s definition was updated before the\n stage execution could be completed.

\n
", - "smithy.api#required": {} + "smithy.api#documentation": "

The Region for the condition associated with the rule.

" } }, - "type": { - "target": "com.amazonaws.codepipeline#ExecutionType", + "timeoutInMinutes": { + "target": "com.amazonaws.codepipeline#RuleTimeout", "traits": { - "smithy.api#documentation": "

The type of pipeline execution for the stage, such as a rollback pipeline\n execution.

" + "smithy.api#documentation": "

The action timeout for the rule.

" } } }, "traits": { - "smithy.api#documentation": "

Represents information about the run of a stage.

" + "smithy.api#documentation": "

Represents information about the rule to be created for an associated condition. An example would be creating a new rule for an entry condition, such as a rule that checks for a test result before allowing the run to enter the deployment stage.

" } }, - "com.amazonaws.codepipeline#StageExecutionList": { + "com.amazonaws.codepipeline#RuleDeclarationList": { + "type": "list", + "member": { + "target": "com.amazonaws.codepipeline#RuleDeclaration" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 + } + } + }, + "com.amazonaws.codepipeline#RuleExecution": { + "type": "structure", + "members": { + "ruleExecutionId": { + "target": "com.amazonaws.codepipeline#RuleExecutionId", + "traits": { + "smithy.api#documentation": "

The execution ID for the run of the rule.

" + } + }, + "status": { + "target": "com.amazonaws.codepipeline#RuleExecutionStatus", + "traits": { + "smithy.api#documentation": "

The status of the run of the rule, such as FAILED.

" + } + }, + "summary": { + "target": "com.amazonaws.codepipeline#ExecutionSummary", + "traits": { + "smithy.api#documentation": "

A summary of the run of the rule.

" + } + }, + "lastStatusChange": { + "target": "com.amazonaws.codepipeline#Timestamp", + "traits": { + "smithy.api#documentation": "

The last status change of the rule.

" + } + }, + "token": { + "target": "com.amazonaws.codepipeline#RuleExecutionToken", + "traits": { + "smithy.api#documentation": "

The system-generated token used to identify a unique request.

" + } + }, + "lastUpdatedBy": { + "target": "com.amazonaws.codepipeline#LastUpdatedBy", + "traits": { + "smithy.api#documentation": "

The ARN of the user who last changed the rule.

" + } + }, + "externalExecutionId": { + "target": "com.amazonaws.codepipeline#ExecutionId", + "traits": { + "smithy.api#documentation": "

The external ID of the run of the rule.

" + } + }, + "externalExecutionUrl": { + "target": "com.amazonaws.codepipeline#Url", + "traits": { + "smithy.api#documentation": "

The URL of a resource external to Amazon Web Services that is used when running the\n rule (for example, an external repository URL).

" + } + }, + "errorDetails": { + "target": "com.amazonaws.codepipeline#ErrorDetails" + } + }, + "traits": { + "smithy.api#documentation": "

Represents information about each time a rule is run as part of the pipeline execution for a pipeline configured with conditions.

" + } + }, + "com.amazonaws.codepipeline#RuleExecutionDetail": { + "type": "structure", + "members": { + "pipelineExecutionId": { + "target": "com.amazonaws.codepipeline#PipelineExecutionId", + "traits": { + "smithy.api#documentation": "

The ID of the pipeline execution in the stage where the rule was run. Use the GetPipelineState action to retrieve the current pipelineExecutionId of\n the stage.

" + } + }, + "ruleExecutionId": { + "target": "com.amazonaws.codepipeline#RuleExecutionId", + "traits": { + "smithy.api#documentation": "

The ID of the run for the rule.

" + } + }, + "pipelineVersion": { + "target": "com.amazonaws.codepipeline#PipelineVersion", + "traits": { + "smithy.api#documentation": "

The version number of the pipeline with the stage where the rule was run.

" + } + }, + "stageName": { + "target": "com.amazonaws.codepipeline#StageName", + "traits": { + "smithy.api#documentation": "

The name of the stage where the rule was run.

" + } + }, + "ruleName": { + "target": "com.amazonaws.codepipeline#RuleName", + "traits": { + "smithy.api#documentation": "

The name of the rule that was run in the stage.

" + } + }, + "startTime": { + "target": "com.amazonaws.codepipeline#Timestamp", + "traits": { + "smithy.api#documentation": "

The start time of the rule execution.

" + } + }, + "lastUpdateTime": { + "target": "com.amazonaws.codepipeline#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time of the last change to the rule execution, in timestamp\n format.

" + } + }, + "updatedBy": { + "target": "com.amazonaws.codepipeline#LastUpdatedBy", + "traits": { + "smithy.api#documentation": "

The ARN of the user who changed the rule execution details.

" + } + }, + "status": { + "target": "com.amazonaws.codepipeline#RuleExecutionStatus", + "traits": { + "smithy.api#documentation": "

The status of the rule execution. Status categories are InProgress,\n Succeeded, and Failed.\n

" + } + }, + "input": { + "target": "com.amazonaws.codepipeline#RuleExecutionInput", + "traits": { + "smithy.api#documentation": "

Input details for the rule execution, such as role ARN, Region, and input\n artifacts.

" + } + }, + "output": { + "target": "com.amazonaws.codepipeline#RuleExecutionOutput", + "traits": { + "smithy.api#documentation": "

Output details for the rule execution, such as the rule execution result.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The details of the runs for a rule and the results produced on an artifact as it passes\n through stages in the pipeline.

" + } + }, + "com.amazonaws.codepipeline#RuleExecutionDetailList": { + "type": "list", + "member": { + "target": "com.amazonaws.codepipeline#RuleExecutionDetail" + } + }, + "com.amazonaws.codepipeline#RuleExecutionFilter": { + "type": "structure", + "members": { + "pipelineExecutionId": { + "target": "com.amazonaws.codepipeline#PipelineExecutionId", + "traits": { + "smithy.api#documentation": "

The pipeline execution ID used to filter rule execution history.

" + } + }, + "latestInPipelineExecution": { + "target": "com.amazonaws.codepipeline#LatestInPipelineExecutionFilter" + } + }, + "traits": { + "smithy.api#documentation": "

Filter values for the rule execution.

" + } + }, + "com.amazonaws.codepipeline#RuleExecutionId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 200 + } + } + }, + "com.amazonaws.codepipeline#RuleExecutionInput": { + "type": "structure", + "members": { + "ruleTypeId": { + "target": "com.amazonaws.codepipeline#RuleTypeId", + "traits": { + "smithy.api#documentation": "

The ID for the rule type, which is made up of the combined values for category, owner, provider, and version.

" + } + }, + "configuration": { + "target": "com.amazonaws.codepipeline#RuleConfigurationMap", + "traits": { + "smithy.api#documentation": "

Configuration data for a rule execution, such as the resolved values for that run.

" + } + }, + "resolvedConfiguration": { + "target": "com.amazonaws.codepipeline#ResolvedRuleConfigurationMap", + "traits": { + "smithy.api#documentation": "

Configuration data for a rule execution with all variable references replaced with\n their real values for the execution.

" + } + }, + "roleArn": { + "target": "com.amazonaws.codepipeline#RoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM service role that performs the declared rule. This is assumed\n through the roleArn for the pipeline.

" + } + }, + "region": { + "target": "com.amazonaws.codepipeline#AWSRegionName", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services Region for the rule, such as us-east-1.

" + } + }, + "inputArtifacts": { + "target": "com.amazonaws.codepipeline#ArtifactDetailList", + "traits": { + "smithy.api#documentation": "

Details of input artifacts of the rule that correspond to the rule \n execution.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Input information used for a rule execution.

" + } + }, + "com.amazonaws.codepipeline#RuleExecutionOutput": { + "type": "structure", + "members": { + "executionResult": { + "target": "com.amazonaws.codepipeline#RuleExecutionResult", + "traits": { + "smithy.api#documentation": "

Execution result information listed in the output details for a rule\n execution.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Output details listed for a rule execution, such as the rule execution\n result.

" + } + }, + "com.amazonaws.codepipeline#RuleExecutionResult": { + "type": "structure", + "members": { + "externalExecutionId": { + "target": "com.amazonaws.codepipeline#ExternalExecutionId", + "traits": { + "smithy.api#documentation": "

The external ID for the rule execution.

" + } + }, + "externalExecutionSummary": { + "target": "com.amazonaws.codepipeline#ExternalExecutionSummary", + "traits": { + "smithy.api#documentation": "

The external provider summary for the rule execution.

" + } + }, + "externalExecutionUrl": { + "target": "com.amazonaws.codepipeline#Url", + "traits": { + "smithy.api#documentation": "

The deepest external link to the external resource (for example, a repository URL or\n deployment endpoint) that is used when running the rule.

" + } + }, + "errorDetails": { + "target": "com.amazonaws.codepipeline#ErrorDetails" + } + }, + "traits": { + "smithy.api#documentation": "

Execution result information, such as the external execution ID.

" + } + }, + "com.amazonaws.codepipeline#RuleExecutionStatus": { + "type": "enum", + "members": { + "InProgress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "InProgress" + } + }, + "Abandoned": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Abandoned" + } + }, + "Succeeded": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Succeeded" + } + }, + "Failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Failed" + } + } + } + }, + "com.amazonaws.codepipeline#RuleExecutionToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 200 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\-\\.]+$" + } + }, + "com.amazonaws.codepipeline#RuleName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + }, + "smithy.api#pattern": "^[A-Za-z0-9.@\\-_]+$" + } + }, + "com.amazonaws.codepipeline#RuleOwner": { + "type": "enum", + "members": { + "AWS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS" + } + } + } + }, + "com.amazonaws.codepipeline#RuleProvider": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 35 + }, + "smithy.api#pattern": "^[0-9A-Za-z_-]+$" + } + }, + "com.amazonaws.codepipeline#RuleRevision": { + "type": "structure", + "members": { + "revisionId": { + "target": "com.amazonaws.codepipeline#Revision", + "traits": { + "smithy.api#documentation": "

The system-generated unique ID that identifies the revision number of the\n rule.

", + "smithy.api#required": {} + } + }, + "revisionChangeId": { + "target": "com.amazonaws.codepipeline#RevisionChangeIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the change that set the state to this revision (for\n example, a deployment ID or timestamp).

", + "smithy.api#required": {} + } + }, + "created": { + "target": "com.amazonaws.codepipeline#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the most recent version of the rule was created, in\n timestamp format.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The change to a rule that creates a revision of the rule.

" + } + }, + "com.amazonaws.codepipeline#RuleState": { + "type": "structure", + "members": { + "ruleName": { + "target": "com.amazonaws.codepipeline#RuleName", + "traits": { + "smithy.api#documentation": "

The name of the rule.

" + } + }, + "currentRevision": { + "target": "com.amazonaws.codepipeline#RuleRevision", + "traits": { + "smithy.api#documentation": "

The ID of the current revision of the artifact successfully worked on by the\n job.

" + } + }, + "latestExecution": { + "target": "com.amazonaws.codepipeline#RuleExecution", + "traits": { + "smithy.api#documentation": "

Represents information about the latest run of an rule.

" + } + }, + "entityUrl": { + "target": "com.amazonaws.codepipeline#Url", + "traits": { + "smithy.api#documentation": "

A URL link for more information about the state of the action, such as a details page.

" + } + }, + "revisionUrl": { + "target": "com.amazonaws.codepipeline#Url", + "traits": { + "smithy.api#documentation": "

A URL link for more information about the revision, such as a commit details\n page.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Returns information about the state of a rule.

\n \n

Values returned in the revisionId field indicate the rule revision information, such as the commit ID, for the current state.

\n
" + } + }, + "com.amazonaws.codepipeline#RuleStateList": { + "type": "list", + "member": { + "target": "com.amazonaws.codepipeline#RuleState" + } + }, + "com.amazonaws.codepipeline#RuleTimeout": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 86400 + } + } + }, + "com.amazonaws.codepipeline#RuleType": { + "type": "structure", + "members": { + "id": { + "target": "com.amazonaws.codepipeline#RuleTypeId", + "traits": { + "smithy.api#documentation": "

Represents information about a rule type.

", + "smithy.api#required": {} + } + }, + "settings": { + "target": "com.amazonaws.codepipeline#RuleTypeSettings", + "traits": { + "smithy.api#documentation": "

Returns information about the settings for a rule type.

" + } + }, + "ruleConfigurationProperties": { + "target": "com.amazonaws.codepipeline#RuleConfigurationPropertyList", + "traits": { + "smithy.api#documentation": "

The configuration properties for the rule type.

" + } + }, + "inputArtifactDetails": { + "target": "com.amazonaws.codepipeline#ArtifactDetails", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The rule type, which is made up of the combined values for category, owner, provider, and version.

" + } + }, + "com.amazonaws.codepipeline#RuleTypeId": { + "type": "structure", + "members": { + "category": { + "target": "com.amazonaws.codepipeline#RuleCategory", + "traits": { + "smithy.api#documentation": "

A category defines what kind of rule can be run in the stage, and constrains\n the provider type for the rule. Valid categories are limited to one of the following\n values.

\n
    \n
  • \n

    INVOKE

    \n
  • \n
  • \n

    Approval

    \n
  • \n
  • \n

    Rule

    \n
  • \n
", + "smithy.api#required": {} + } + }, + "owner": { + "target": "com.amazonaws.codepipeline#RuleOwner", + "traits": { + "smithy.api#documentation": "

The creator of the rule being called. The valid value for the\n Owner field in the rule category is AWS.

" + } + }, + "provider": { + "target": "com.amazonaws.codepipeline#RuleProvider", + "traits": { + "smithy.api#documentation": "

The provider of the service being called by the rule. Valid providers are\n determined by the rulecategory. For example, a managed rule in the Rule category type\n has an owner of AWS, which would be specified as\n AWS.

", + "smithy.api#required": {} + } + }, + "version": { + "target": "com.amazonaws.codepipeline#Version", + "traits": { + "smithy.api#documentation": "

A string that describes the rule version.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The ID for the rule type, which is made up of the combined values for category, owner, provider, and version.

" + } + }, + "com.amazonaws.codepipeline#RuleTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.codepipeline#RuleType" + } + }, + "com.amazonaws.codepipeline#RuleTypeSettings": { + "type": "structure", + "members": { + "thirdPartyConfigurationUrl": { + "target": "com.amazonaws.codepipeline#Url", + "traits": { + "smithy.api#documentation": "

The URL of a sign-up page where users can sign up for an external service and\n perform initial configuration of the action provided by that service.

" + } + }, + "entityUrlTemplate": { + "target": "com.amazonaws.codepipeline#UrlTemplate", + "traits": { + "smithy.api#documentation": "

The URL returned to the CodePipeline console that provides a deep link to the\n resources of the external system, such as the configuration page for a CodeDeploy\n deployment group. This link is provided as part of the action display in the\n pipeline.

" + } + }, + "executionUrlTemplate": { + "target": "com.amazonaws.codepipeline#UrlTemplate", + "traits": { + "smithy.api#documentation": "

The URL returned to the CodePipeline console that contains a link to the\n top-level landing page for the external system, such as the console page for CodeDeploy.\n This link is shown on the pipeline view page in the CodePipeline console and\n provides a link to the execution entity of the external action.

" + } + }, + "revisionUrlTemplate": { + "target": "com.amazonaws.codepipeline#UrlTemplate", + "traits": { + "smithy.api#documentation": "

The URL returned to the CodePipeline console that contains a link to the page\n where customers can update or change the configuration of the external action.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Returns information about the settings for a rule type.

" + } + }, + "com.amazonaws.codepipeline#S3ArtifactLocation": { + "type": "structure", + "members": { + "bucketName": { + "target": "com.amazonaws.codepipeline#S3BucketName", + "traits": { + "smithy.api#documentation": "

The name of the S3 bucket.

", + "smithy.api#required": {} + } + }, + "objectKey": { + "target": "com.amazonaws.codepipeline#S3ObjectKey", + "traits": { + "smithy.api#documentation": "

The key of the object in the S3 bucket, which uniquely identifies the object in the\n bucket.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The location of the S3 bucket that contains a revision.

" + } + }, + "com.amazonaws.codepipeline#S3Bucket": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 3, + "max": 63 + } + } + }, + "com.amazonaws.codepipeline#S3BucketName": { + "type": "string" + }, + "com.amazonaws.codepipeline#S3Key": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.codepipeline#S3Location": { + "type": "structure", + "members": { + "bucket": { + "target": "com.amazonaws.codepipeline#S3Bucket", + "traits": { + "smithy.api#documentation": "

The Amazon S3 artifact bucket for an action's artifacts.

" + } + }, + "key": { + "target": "com.amazonaws.codepipeline#S3Key", + "traits": { + "smithy.api#documentation": "

The artifact name.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Amazon S3 artifact location for an action's artifacts.

" + } + }, + "com.amazonaws.codepipeline#S3ObjectKey": { + "type": "string" + }, + "com.amazonaws.codepipeline#SecretAccessKey": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.codepipeline#ServicePrincipal": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "com.amazonaws.codepipeline#SessionToken": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.codepipeline#SourceRevision": { + "type": "structure", + "members": { + "actionName": { + "target": "com.amazonaws.codepipeline#ActionName", + "traits": { + "smithy.api#documentation": "

The name of the action that processed the revision to the source\n artifact.

", + "smithy.api#required": {} + } + }, + "revisionId": { + "target": "com.amazonaws.codepipeline#Revision", + "traits": { + "smithy.api#documentation": "

The system-generated unique ID that identifies the revision number of the\n artifact.

" + } + }, + "revisionSummary": { + "target": "com.amazonaws.codepipeline#RevisionSummary", + "traits": { + "smithy.api#documentation": "

Summary information about the most recent revision of the artifact. For GitHub and\n CodeCommit repositories, the commit message. For Amazon S3 buckets or actions,\n the user-provided content of a codepipeline-artifact-revision-summary key\n specified in the object metadata.

" + } + }, + "revisionUrl": { + "target": "com.amazonaws.codepipeline#Url", + "traits": { + "smithy.api#documentation": "

The commit ID for the artifact revision. For artifacts stored in GitHub or\n CodeCommit repositories, the commit ID is linked to a commit details page.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the version (or revision) of a source artifact that initiated a\n pipeline execution.

" + } + }, + "com.amazonaws.codepipeline#SourceRevisionList": { + "type": "list", + "member": { + "target": "com.amazonaws.codepipeline#SourceRevision" + } + }, + "com.amazonaws.codepipeline#SourceRevisionOverride": { + "type": "structure", + "members": { + "actionName": { + "target": "com.amazonaws.codepipeline#ActionName", + "traits": { + "smithy.api#documentation": "

The name of the action where the override will be applied.

", + "smithy.api#required": {} + } + }, + "revisionType": { + "target": "com.amazonaws.codepipeline#SourceRevisionType", + "traits": { + "smithy.api#documentation": "

The type of source revision, based on the source provider. For example, the revision\n type for the CodeCommit action provider is the commit ID.

", + "smithy.api#required": {} + } + }, + "revisionValue": { + "target": "com.amazonaws.codepipeline#Revision", + "traits": { + "smithy.api#documentation": "

The source revision, or version of your source artifact, with the changes that you\n want to run in the pipeline execution.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A list that allows you to specify, or override, the source revision for a pipeline\n execution that's being started. A source revision is the version with all the changes to\n your application code, or source artifact, for the pipeline execution.

\n \n

For the S3_OBJECT_VERSION_ID and S3_OBJECT_KEY types of source revisions, either\n of the types can be used independently, or they can be used together to override the\n source with a specific ObjectKey and VersionID.

\n
" + } + }, + "com.amazonaws.codepipeline#SourceRevisionOverrideList": { + "type": "list", + "member": { + "target": "com.amazonaws.codepipeline#SourceRevisionOverride" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 50 + } + } + }, + "com.amazonaws.codepipeline#SourceRevisionType": { + "type": "enum", + "members": { + "COMMIT_ID": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMMIT_ID" + } + }, + "IMAGE_DIGEST": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IMAGE_DIGEST" + } + }, + "S3_OBJECT_VERSION_ID": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3_OBJECT_VERSION_ID" + } + }, + "S3_OBJECT_KEY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3_OBJECT_KEY" + } + } + } + }, + "com.amazonaws.codepipeline#StageActionDeclarationList": { + "type": "list", + "member": { + "target": "com.amazonaws.codepipeline#ActionDeclaration" + } + }, + "com.amazonaws.codepipeline#StageBlockerDeclarationList": { + "type": "list", + "member": { + "target": "com.amazonaws.codepipeline#BlockerDeclaration" + } + }, + "com.amazonaws.codepipeline#StageConditionState": { + "type": "structure", + "members": { + "latestExecution": { + "target": "com.amazonaws.codepipeline#StageConditionsExecution", + "traits": { + "smithy.api#documentation": "

Represents information about the latest run of a condition for a stage.

" + } + }, + "conditionStates": { + "target": "com.amazonaws.codepipeline#ConditionStateList", + "traits": { + "smithy.api#documentation": "

The states of the conditions for a run of a condition for a stage.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The state of a run of a condition for a stage.

" + } + }, + "com.amazonaws.codepipeline#StageConditionsExecution": { + "type": "structure", + "members": { + "status": { + "target": "com.amazonaws.codepipeline#ConditionExecutionStatus", + "traits": { + "smithy.api#documentation": "

The status of a run of a condition for a stage.

" + } + }, + "summary": { + "target": "com.amazonaws.codepipeline#ExecutionSummary", + "traits": { + "smithy.api#documentation": "

A summary of the run of the condition for a stage.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents information about the run of a condition for a stage.

" + } + }, + "com.amazonaws.codepipeline#StageContext": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.codepipeline#StageName", + "traits": { + "smithy.api#documentation": "

The name of the stage.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents information about a stage to a job worker.

" + } + }, + "com.amazonaws.codepipeline#StageDeclaration": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.codepipeline#StageName", + "traits": { + "smithy.api#documentation": "

The name of the stage.

", + "smithy.api#required": {} + } + }, + "blockers": { + "target": "com.amazonaws.codepipeline#StageBlockerDeclarationList", + "traits": { + "smithy.api#documentation": "

Reserved for future use.

" + } + }, + "actions": { + "target": "com.amazonaws.codepipeline#StageActionDeclarationList", + "traits": { + "smithy.api#documentation": "

The actions included in a stage.

", + "smithy.api#required": {} + } + }, + "onFailure": { + "target": "com.amazonaws.codepipeline#FailureConditions", + "traits": { + "smithy.api#documentation": "

The method to use when a stage has not completed successfully. For example,\n configuring this field for rollback will roll back a failed stage automatically to the\n last successful pipeline execution in the stage.

" + } + }, + "onSuccess": { + "target": "com.amazonaws.codepipeline#SuccessConditions", + "traits": { + "smithy.api#documentation": "

The method to use when a stage has succeeded. For example,\n configuring this field for conditions will allow the stage to succeed when the conditions are met.

" + } + }, + "beforeEntry": { + "target": "com.amazonaws.codepipeline#BeforeEntryConditions", + "traits": { + "smithy.api#documentation": "

The method to use when a stage allows entry. For example, configuring this field for conditions will allow entry to the stage when the conditions are met.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents information about a stage and its definition.

" + } + }, + "com.amazonaws.codepipeline#StageExecution": { + "type": "structure", + "members": { + "pipelineExecutionId": { + "target": "com.amazonaws.codepipeline#PipelineExecutionId", + "traits": { + "smithy.api#documentation": "

The ID of the pipeline execution associated with the stage.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.codepipeline#StageExecutionStatus", + "traits": { + "smithy.api#documentation": "

The status of the stage, or for a completed stage, the last status of the\n stage.

\n \n

A status of cancelled means that the pipeline’s definition was updated before the\n stage execution could be completed.

\n
", + "smithy.api#required": {} + } + }, + "type": { + "target": "com.amazonaws.codepipeline#ExecutionType", + "traits": { + "smithy.api#documentation": "

The type of pipeline execution for the stage, such as a rollback pipeline\n execution.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents information about the run of a stage.

" + } + }, + "com.amazonaws.codepipeline#StageExecutionList": { "type": "list", "member": { "target": "com.amazonaws.codepipeline#StageExecution" @@ -7724,6 +8908,24 @@ "traits": { "smithy.api#documentation": "

Information about the latest execution in the stage, including its ID and\n status.

" } + }, + "beforeEntryConditionState": { + "target": "com.amazonaws.codepipeline#StageConditionState", + "traits": { + "smithy.api#documentation": "

The state of the entry conditions for a stage.

" + } + }, + "onSuccessConditionState": { + "target": "com.amazonaws.codepipeline#StageConditionState", + "traits": { + "smithy.api#documentation": "

The state of the success conditions for a stage.

" + } + }, + "onFailureConditionState": { + "target": "com.amazonaws.codepipeline#StageConditionState", + "traits": { + "smithy.api#documentation": "

The state of the failure conditions for a stage.

" + } } }, "traits": { @@ -7964,6 +9166,21 @@ "smithy.api#documentation": "

Filter for pipeline executions that have successfully completed the stage in the\n current pipeline version.

" } }, + "com.amazonaws.codepipeline#SuccessConditions": { + "type": "structure", + "members": { + "conditions": { + "target": "com.amazonaws.codepipeline#ConditionList", + "traits": { + "smithy.api#documentation": "

The conditions that are success conditions.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The conditions for making checks that, if met, succeed a stage.

" + } + }, "com.amazonaws.codepipeline#Tag": { "type": "structure", "members": {