Skip to content

Commit 9f57946

Browse files
author
awstools
committed
feat(client-cloudformation): This release adds more fields to improves visibility of AWS CloudFormation StackSets information in following APIs: ListStackInstances, DescribeStackInstance, ListStackSetOperationResults, ListStackSetOperations, DescribeStackSetOperation.
1 parent d2920e8 commit 9f57946

File tree

5 files changed

+2042
-1390
lines changed

5 files changed

+2042
-1390
lines changed

clients/client-cloudformation/src/CloudFormation.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2585,9 +2585,9 @@ export class CloudFormation extends CloudFormationClient {
25852585
* extension in your account and region for testing.</p>
25862586
* <p>To perform testing, CloudFormation assumes the execution role specified when
25872587
* the type was registered. For more information, see <a href="AWSCloudFormation/latest/APIReference/API_RegisterType.html">RegisterType</a>.</p>
2588-
* <p>Once you've initiated testing on an extension using <code>TestType</code>, you can use
2589-
* <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_DescribeType.html">DescribeType</a> to monitor the current test status and test
2590-
* status description for the extension.</p>
2588+
* <p>Once you've initiated testing on an extension using <code>TestType</code>, you can pass
2589+
* the returned <code>TypeVersionArn</code> into <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_DescribeType.html">DescribeType</a> to monitor the current test status and test status description for
2590+
* the extension.</p>
25912591
* <p>An extension must have a test status of <code>PASSED</code> before it can be published.
25922592
* For more information, see <a href="https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-publish.html">Publishing extensions to make them available for public use</a>
25932593
* in the <i>CloudFormation CLI User Guide</i>.</p>

clients/client-cloudformation/src/commands/TestTypeCommand.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,9 @@ export interface TestTypeCommandOutput extends TestTypeOutput, __MetadataBearer
4343
* extension in your account and region for testing.</p>
4444
* <p>To perform testing, CloudFormation assumes the execution role specified when
4545
* the type was registered. For more information, see <a href="AWSCloudFormation/latest/APIReference/API_RegisterType.html">RegisterType</a>.</p>
46-
* <p>Once you've initiated testing on an extension using <code>TestType</code>, you can use
47-
* <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_DescribeType.html">DescribeType</a> to monitor the current test status and test
48-
* status description for the extension.</p>
46+
* <p>Once you've initiated testing on an extension using <code>TestType</code>, you can pass
47+
* the returned <code>TypeVersionArn</code> into <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_DescribeType.html">DescribeType</a> to monitor the current test status and test status description for
48+
* the extension.</p>
4949
* <p>An extension must have a test status of <code>PASSED</code> before it can be published.
5050
* For more information, see <a href="https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-publish.html">Publishing extensions to make them available for public use</a>
5151
* in the <i>CloudFormation CLI User Guide</i>.</p>

clients/client-cloudformation/src/models/models_0.ts

Lines changed: 152 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,11 @@ export enum AccountFilterType {
1010
UNION = "UNION",
1111
}
1212

13-
export type AccountGateStatus = "FAILED" | "SKIPPED" | "SUCCEEDED";
13+
export enum AccountGateStatus {
14+
FAILED = "FAILED",
15+
SKIPPED = "SKIPPED",
16+
SUCCEEDED = "SUCCEEDED",
17+
}
1418

1519
/**
1620
* <p>Structure that contains the results of the account gate function which CloudFormation invokes, if present, before proceeding with a stack set operation in an account and
@@ -1933,8 +1937,7 @@ export interface DeploymentTargets {
19331937
* </li>
19341938
* <li>
19351939
* <p>
1936-
* <code>UNION</code>: (default value) StackSets includes additional accounts deployment
1937-
* targets. </p>
1940+
* <code>UNION</code>: StackSets includes additional accounts deployment targets. </p>
19381941
* <p>This is the default value if <code>AccountFilterType</code> is not provided. This
19391942
* enables user to update an entire OU and individual accounts from a different OU in one
19401943
* request, which used to be two separate requests.</p>
@@ -2278,7 +2281,10 @@ export interface ManagedExecution {
22782281
Active?: boolean;
22792282
}
22802283

2281-
export type PermissionModels = "SELF_MANAGED" | "SERVICE_MANAGED";
2284+
export enum PermissionModels {
2285+
SELF_MANAGED = "SELF_MANAGED",
2286+
SERVICE_MANAGED = "SERVICE_MANAGED",
2287+
}
22822288

22832289
export interface CreateStackSetInput {
22842290
/**
@@ -2800,7 +2806,11 @@ export class StackSetNotEmptyException extends __BaseException {
28002806
}
28012807
}
28022808

2803-
export type RegistryType = "HOOK" | "MODULE" | "RESOURCE";
2809+
export enum RegistryType {
2810+
HOOK = "HOOK",
2811+
MODULE = "MODULE",
2812+
RESOURCE = "RESOURCE",
2813+
}
28042814

28052815
export interface DeregisterTypeInput {
28062816
/**
@@ -3438,7 +3448,14 @@ export interface DescribeStackInstanceInput {
34383448
CallAs?: CallAs | string;
34393449
}
34403450

3441-
export type StackInstanceDetailedStatus = "CANCELLED" | "FAILED" | "INOPERABLE" | "PENDING" | "RUNNING" | "SUCCEEDED";
3451+
export enum StackInstanceDetailedStatus {
3452+
CANCELLED = "CANCELLED",
3453+
FAILED = "FAILED",
3454+
INOPERABLE = "INOPERABLE",
3455+
PENDING = "PENDING",
3456+
RUNNING = "RUNNING",
3457+
SUCCEEDED = "SUCCEEDED",
3458+
}
34423459

34433460
/**
34443461
* <p>The detailed status of the stack instance.</p>
@@ -3487,7 +3504,11 @@ export interface StackInstanceComprehensiveStatus {
34873504
DetailedStatus?: StackInstanceDetailedStatus | string;
34883505
}
34893506

3490-
export type StackInstanceStatus = "CURRENT" | "INOPERABLE" | "OUTDATED";
3507+
export enum StackInstanceStatus {
3508+
CURRENT = "CURRENT",
3509+
INOPERABLE = "INOPERABLE",
3510+
OUTDATED = "OUTDATED",
3511+
}
34913512

34923513
/**
34933514
* <p>An CloudFormation stack, in a specific account and Region, that's part of a stack
@@ -3616,6 +3637,11 @@ export interface StackInstance {
36163637
* drift detection hasn't yet been performed.</p>
36173638
*/
36183639
LastDriftCheckTimestamp?: Date;
3640+
3641+
/**
3642+
* <p>The last unique ID of a StackSet operation performed on a stack instance.</p>
3643+
*/
3644+
LastOperationId?: string;
36193645
}
36203646

36213647
export interface DescribeStackInstanceOutput {
@@ -4609,7 +4635,10 @@ export interface StackSetDriftDetectionDetails {
46094635
FailedStackInstancesCount?: number;
46104636
}
46114637

4612-
export type StackSetStatus = "ACTIVE" | "DELETED";
4638+
export enum StackSetStatus {
4639+
ACTIVE = "ACTIVE",
4640+
DELETED = "DELETED",
4641+
}
46134642

46144643
/**
46154644
* <p>A structure that contains information about a stack set. A stack set enables you to
@@ -4774,9 +4803,31 @@ export interface DescribeStackSetOperationInput {
47744803
CallAs?: CallAs | string;
47754804
}
47764805

4777-
export type StackSetOperationAction = "CREATE" | "DELETE" | "DETECT_DRIFT" | "UPDATE";
4806+
export enum StackSetOperationAction {
4807+
CREATE = "CREATE",
4808+
DELETE = "DELETE",
4809+
DETECT_DRIFT = "DETECT_DRIFT",
4810+
UPDATE = "UPDATE",
4811+
}
4812+
4813+
export enum StackSetOperationStatus {
4814+
FAILED = "FAILED",
4815+
QUEUED = "QUEUED",
4816+
RUNNING = "RUNNING",
4817+
STOPPED = "STOPPED",
4818+
STOPPING = "STOPPING",
4819+
SUCCEEDED = "SUCCEEDED",
4820+
}
47784821

4779-
export type StackSetOperationStatus = "FAILED" | "QUEUED" | "RUNNING" | "STOPPED" | "STOPPING" | "SUCCEEDED";
4822+
/**
4823+
* <p>Detailed information about the StackSet operation.</p>
4824+
*/
4825+
export interface StackSetOperationStatusDetails {
4826+
/**
4827+
* <p>The number of stack instances for which the StackSet operation failed.</p>
4828+
*/
4829+
FailedStackInstancesCount?: number;
4830+
}
47804831

47814832
/**
47824833
* <p>The structure that contains information about a stack set operation.</p>
@@ -4907,6 +4958,11 @@ export interface StackSetOperation {
49074958
* <p>The status of the operation in details.</p>
49084959
*/
49094960
StatusReason?: string;
4961+
4962+
/**
4963+
* <p>Detailed information about the StackSet operation.</p>
4964+
*/
4965+
StatusDetails?: StackSetOperationStatusDetails;
49104966
}
49114967

49124968
export interface DescribeStackSetOperationOutput {
@@ -4981,9 +5037,16 @@ export interface DescribeTypeInput {
49815037
PublicVersionNumber?: string;
49825038
}
49835039

4984-
export type DeprecatedStatus = "DEPRECATED" | "LIVE";
5040+
export enum DeprecatedStatus {
5041+
DEPRECATED = "DEPRECATED",
5042+
LIVE = "LIVE",
5043+
}
49855044

4986-
export type ProvisioningType = "FULLY_MUTABLE" | "IMMUTABLE" | "NON_PROVISIONABLE";
5045+
export enum ProvisioningType {
5046+
FULLY_MUTABLE = "FULLY_MUTABLE",
5047+
IMMUTABLE = "IMMUTABLE",
5048+
NON_PROVISIONABLE = "NON_PROVISIONABLE",
5049+
}
49875050

49885051
/**
49895052
* <p>For extensions that are modules, a public third-party extension that must be activated
@@ -5029,7 +5092,10 @@ export enum TypeTestsStatus {
50295092
PASSED = "PASSED",
50305093
}
50315094

5032-
export type Visibility = "PRIVATE" | "PUBLIC";
5095+
export enum Visibility {
5096+
PRIVATE = "PRIVATE",
5097+
PUBLIC = "PUBLIC",
5098+
}
50335099

50345100
export interface DescribeTypeOutput {
50355101
/**
@@ -5336,7 +5402,11 @@ export interface DescribeTypeRegistrationInput {
53365402
RegistrationToken: string | undefined;
53375403
}
53385404

5339-
export type RegistrationStatus = "COMPLETE" | "FAILED" | "IN_PROGRESS";
5405+
export enum RegistrationStatus {
5406+
COMPLETE = "COMPLETE",
5407+
FAILED = "FAILED",
5408+
IN_PROGRESS = "IN_PROGRESS",
5409+
}
53405410

53415411
export interface DescribeTypeRegistrationOutput {
53425412
/**
@@ -6016,10 +6086,13 @@ export interface ListImportsOutput {
60166086
NextToken?: string;
60176087
}
60186088

6019-
export type StackInstanceFilterName = "DETAILED_STATUS";
6089+
export enum StackInstanceFilterName {
6090+
DETAILED_STATUS = "DETAILED_STATUS",
6091+
LAST_OPERATION_ID = "LAST_OPERATION_ID",
6092+
}
60206093

60216094
/**
6022-
* <p>The status that stack instances are filtered by.</p>
6095+
* <p>The filter to apply to stack instances</p>
60236096
*/
60246097
export interface StackInstanceFilter {
60256098
/**
@@ -6057,7 +6130,7 @@ export interface ListStackInstancesInput {
60576130
MaxResults?: number;
60586131

60596132
/**
6060-
* <p>The status that stack instances are filtered by.</p>
6133+
* <p>The filter to apply to stack instances</p>
60616134
*/
60626135
Filters?: StackInstanceFilter[];
60636136

@@ -6209,6 +6282,11 @@ export interface StackInstanceSummary {
62096282
* drift detection hasn't yet been performed.</p>
62106283
*/
62116284
LastDriftCheckTimestamp?: Date;
6285+
6286+
/**
6287+
* <p>The last unique ID of a StackSet operation performed on a stack instance.</p>
6288+
*/
6289+
LastOperationId?: string;
62126290
}
62136291

62146292
export interface ListStackInstancesOutput {
@@ -6509,6 +6587,25 @@ export interface ListStacksOutput {
65096587
NextToken?: string;
65106588
}
65116589

6590+
export enum OperationResultFilterName {
6591+
OPERATION_RESULT_STATUS = "OPERATION_RESULT_STATUS",
6592+
}
6593+
6594+
/**
6595+
* <p>The status that operation results are filtered by.</p>
6596+
*/
6597+
export interface OperationResultFilter {
6598+
/**
6599+
* <p>The type of filter to apply.</p>
6600+
*/
6601+
Name?: OperationResultFilterName | string;
6602+
6603+
/**
6604+
* <p>The value to filter by.</p>
6605+
*/
6606+
Values?: string;
6607+
}
6608+
65126609
export interface ListStackSetOperationResultsInput {
65136610
/**
65146611
* <p>The name or unique ID of the stack set that you want to get operation results
@@ -6559,9 +6656,20 @@ export interface ListStackSetOperationResultsInput {
65596656
* </ul>
65606657
*/
65616658
CallAs?: CallAs | string;
6659+
6660+
/**
6661+
* <p>The filter to apply to operation results.</p>
6662+
*/
6663+
Filters?: OperationResultFilter[];
65626664
}
65636665

6564-
export type StackSetOperationResultStatus = "CANCELLED" | "FAILED" | "PENDING" | "RUNNING" | "SUCCEEDED";
6666+
export enum StackSetOperationResultStatus {
6667+
CANCELLED = "CANCELLED",
6668+
FAILED = "FAILED",
6669+
PENDING = "PENDING",
6670+
RUNNING = "RUNNING",
6671+
SUCCEEDED = "SUCCEEDED",
6672+
}
65656673

65666674
/**
65676675
* <p>The structure that contains information about a specified operation's results for a
@@ -6774,6 +6882,18 @@ export interface StackSetOperationSummary {
67746882
* <p>The status of the operation in details.</p>
67756883
*/
67766884
StatusReason?: string;
6885+
6886+
/**
6887+
* <p>Detailed information about the stack set operation.</p>
6888+
*/
6889+
StatusDetails?: StackSetOperationStatusDetails;
6890+
6891+
/**
6892+
* <p>The user-specified preferences for how CloudFormation performs a stack set
6893+
* operation.</p>
6894+
* <p>For more information about maximum concurrent accounts and failure tolerance, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options">Stack set operation options</a>.</p>
6895+
*/
6896+
OperationPreferences?: StackSetOperationPreferences;
67776897
}
67786898

67796899
export interface ListStackSetOperationsOutput {
@@ -9481,6 +9601,13 @@ export const DescribeStackSetOperationInputFilterSensitiveLog = (obj: DescribeSt
94819601
...obj,
94829602
});
94839603

9604+
/**
9605+
* @internal
9606+
*/
9607+
export const StackSetOperationStatusDetailsFilterSensitiveLog = (obj: StackSetOperationStatusDetails): any => ({
9608+
...obj,
9609+
});
9610+
94849611
/**
94859612
* @internal
94869613
*/
@@ -9812,6 +9939,13 @@ export const ListStacksOutputFilterSensitiveLog = (obj: ListStacksOutput): any =
98129939
...obj,
98139940
});
98149941

9942+
/**
9943+
* @internal
9944+
*/
9945+
export const OperationResultFilterFilterSensitiveLog = (obj: OperationResultFilter): any => ({
9946+
...obj,
9947+
});
9948+
98159949
/**
98169950
* @internal
98179951
*/

0 commit comments

Comments
 (0)