diff --git a/clients/client-cloudformation/src/commands/DescribeChangeSetCommand.ts b/clients/client-cloudformation/src/commands/DescribeChangeSetCommand.ts index 8067162e54df..5cb37c9b03fd 100644 --- a/clients/client-cloudformation/src/commands/DescribeChangeSetCommand.ts +++ b/clients/client-cloudformation/src/commands/DescribeChangeSetCommand.ts @@ -40,6 +40,7 @@ export interface DescribeChangeSetCommandOutput extends DescribeChangeSetOutput, * ChangeSetName: "STRING_VALUE", // required * StackName: "STRING_VALUE", * NextToken: "STRING_VALUE", + * IncludePropertyValues: true || false, * }; * const command = new DescribeChangeSetCommand(input); * const response = await client.send(command); @@ -102,6 +103,10 @@ export interface DescribeChangeSetCommandOutput extends DescribeChangeSetOutput, * // Attribute: "Properties" || "Metadata" || "CreationPolicy" || "UpdatePolicy" || "DeletionPolicy" || "UpdateReplacePolicy" || "Tags", * // Name: "STRING_VALUE", * // RequiresRecreation: "Never" || "Conditionally" || "Always", + * // Path: "STRING_VALUE", + * // BeforeValue: "STRING_VALUE", + * // AfterValue: "STRING_VALUE", + * // AttributeChangeType: "Add" || "Remove" || "Modify", * // }, * // Evaluation: "Static" || "Dynamic", * // ChangeSource: "ResourceReference" || "ParameterReference" || "ResourceAttribute" || "DirectModification" || "Automatic", @@ -113,6 +118,8 @@ export interface DescribeChangeSetCommandOutput extends DescribeChangeSetOutput, * // TypeHierarchy: "STRING_VALUE", * // LogicalIdHierarchy: "STRING_VALUE", * // }, + * // BeforeContext: "STRING_VALUE", + * // AfterContext: "STRING_VALUE", * // }, * // }, * // ], diff --git a/clients/client-cloudformation/src/commands/SetTypeConfigurationCommand.ts b/clients/client-cloudformation/src/commands/SetTypeConfigurationCommand.ts index dff6a487e2a2..1baae3cf0231 100644 --- a/clients/client-cloudformation/src/commands/SetTypeConfigurationCommand.ts +++ b/clients/client-cloudformation/src/commands/SetTypeConfigurationCommand.ts @@ -6,7 +6,8 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { CloudFormationClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../CloudFormationClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { SetTypeConfigurationInput, SetTypeConfigurationOutput } from "../models/models_0"; +import { SetTypeConfigurationInput } from "../models/models_0"; +import { SetTypeConfigurationOutput } from "../models/models_1"; import { de_SetTypeConfigurationCommand, se_SetTypeConfigurationCommand } from "../protocols/Aws_query"; /** diff --git a/clients/client-cloudformation/src/models/models_0.ts b/clients/client-cloudformation/src/models/models_0.ts index 82cdc2561191..9149d30ac571 100644 --- a/clients/client-cloudformation/src/models/models_0.ts +++ b/clients/client-cloudformation/src/models/models_0.ts @@ -409,6 +409,21 @@ export class AlreadyExistsException extends __BaseException { } } +/** + * @public + * @enum + */ +export const AttributeChangeType = { + Add: "Add", + Modify: "Modify", + Remove: "Remove", +} as const; + +/** + * @public + */ +export type AttributeChangeType = (typeof AttributeChangeType)[keyof typeof AttributeChangeType]; + /** *

[Service-managed permissions] Describes whether StackSets automatically deploys to Organizations * accounts that are added to a target organization or organizational unit (OU).

@@ -820,6 +835,44 @@ export interface ResourceTargetDefinition { * @public */ RequiresRecreation?: RequiresRecreation; + + /** + *

The property path of the property.

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

The value of the property before the change is executed. Large values can be truncated.

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

The value of the property after the change is executed. Large values can be truncated.

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

The type of change to be made to the property if the change is executed.

+ * + * @public + */ + AttributeChangeType?: AttributeChangeType; } /** @@ -1070,6 +1123,18 @@ export interface ResourceChange { * @public */ ModuleInfo?: ModuleInfo; + + /** + *

An encoded JSON string containing the context of the resource before the change is executed.

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

An encoded JSON string containing the context of the resource after the change is executed.

+ * @public + */ + AfterContext?: string; } /** @@ -1091,7 +1156,13 @@ export type ChangeType = (typeof ChangeType)[keyof typeof ChangeType]; */ export interface Change { /** - *

The type of entity that CloudFormation changes. Currently, the only entity type is Resource.

+ *

The type of entity that CloudFormation changes.

+ * * @public */ Type?: ChangeType; @@ -3678,6 +3749,12 @@ export interface DescribeChangeSetInput { * @public */ NextToken?: string; + + /** + *

If true, the returned changes include detailed changes in the property values.

+ * @public + */ + IncludePropertyValues?: boolean; } /** @@ -10915,16 +10992,3 @@ export interface SetTypeConfigurationInput { */ Type?: ThirdPartyType; } - -/** - * @public - */ -export interface SetTypeConfigurationOutput { - /** - *

The Amazon Resource Name (ARN) for the configuration data, in this account and Region.

- *

Conditional: You must specify ConfigurationArn, or Type and - * TypeName.

- * @public - */ - ConfigurationArn?: string; -} diff --git a/clients/client-cloudformation/src/models/models_1.ts b/clients/client-cloudformation/src/models/models_1.ts index 4dba8d9b1bdd..e16831a649dc 100644 --- a/clients/client-cloudformation/src/models/models_1.ts +++ b/clients/client-cloudformation/src/models/models_1.ts @@ -20,6 +20,19 @@ import { ThirdPartyType, } from "./models_0"; +/** + * @public + */ +export interface SetTypeConfigurationOutput { + /** + *

The Amazon Resource Name (ARN) for the configuration data, in this account and Region.

+ *

Conditional: You must specify ConfigurationArn, or Type and + * TypeName.

+ * @public + */ + ConfigurationArn?: string; +} + /** * @public */ diff --git a/clients/client-cloudformation/src/protocols/Aws_query.ts b/clients/client-cloudformation/src/protocols/Aws_query.ts index 7632b66cb154..818d04756a67 100644 --- a/clients/client-cloudformation/src/protocols/Aws_query.ts +++ b/clients/client-cloudformation/src/protocols/Aws_query.ts @@ -420,7 +420,6 @@ import { ScannedResourceIdentifier, SetStackPolicyInput, SetTypeConfigurationInput, - SetTypeConfigurationOutput, Stack, StackDriftInformation, StackDriftInformationSummary, @@ -473,6 +472,7 @@ import { } from "../models/models_0"; import { ResourceScanLimitExceededException, + SetTypeConfigurationOutput, SetTypeDefaultVersionInput, SetTypeDefaultVersionOutput, SignalResourceInput, @@ -4849,6 +4849,9 @@ const se_DescribeChangeSetInput = (input: DescribeChangeSetInput, context: __Ser if (input[_NT] != null) { entries[_NT] = input[_NT]; } + if (input[_IPV] != null) { + entries[_IPV] = input[_IPV]; + } return entries; }; @@ -9052,6 +9055,12 @@ const de_ResourceChange = (output: any, context: __SerdeContext): ResourceChange if (output[_MI] != null) { contents[_MI] = de_ModuleInfo(output[_MI], context); } + if (output[_BC] != null) { + contents[_BC] = __expectString(output[_BC]); + } + if (output[_AC] != null) { + contents[_AC] = __expectString(output[_AC]); + } return contents; }; @@ -9270,6 +9279,18 @@ const de_ResourceTargetDefinition = (output: any, context: __SerdeContext): Reso if (output[_RReq] != null) { contents[_RReq] = __expectString(output[_RReq]); } + if (output[_Pa] != null) { + contents[_Pa] = __expectString(output[_Pa]); + } + if (output[_BV] != null) { + contents[_BV] = __expectString(output[_BV]); + } + if (output[_AVf] != null) { + contents[_AVf] = __expectString(output[_AVf]); + } + if (output[_ACT] != null) { + contents[_ACT] = __expectString(output[_ACT]); + } return contents; }; @@ -11050,6 +11071,8 @@ const SHARED_HEADERS: __HeaderBag = { const _ = "2010-05-15"; const _A = "Action"; +const _AC = "AfterContext"; +const _ACT = "AttributeChangeType"; const _AD = "AutoDeployment"; const _AFT = "AccountFilterType"; const _AGR = "AccountGateResult"; @@ -11064,14 +11087,17 @@ const _AU = "AutoUpdate"; const _AUc = "AccountsUrl"; const _AV = "AllowedValues"; const _AVc = "ActualValue"; +const _AVf = "AfterValue"; const _Ac = "Accounts"; const _Acc = "Account"; const _Act = "Active"; const _Al = "Alias"; const _Ar = "Arn"; const _At = "Attribute"; +const _BC = "BeforeContext"; const _BDTC = "BatchDescribeTypeConfigurations"; const _BT = "BearerToken"; +const _BV = "BeforeValue"; const _C = "Capabilities"; const _CA = "CallAs"; const _CAo = "ConnectionArn"; @@ -11195,6 +11221,7 @@ const _IER = "ImportExistingResources"; const _INS = "IncludeNestedStacks"; const _IP = "InvocationPoint"; const _IPSIC = "InProgressStackInstancesCount"; +const _IPV = "IncludePropertyValues"; const _IPd = "IdentityProvider"; const _ISSIC = "InSyncStackInstancesCount"; const _ISTSS = "ImportStacksToStackSet"; @@ -11285,6 +11312,7 @@ const _PTa = "ParameterType"; const _PTr = "ProvisioningType"; const _PV = "ParameterValue"; const _PVN = "PublicVersionNumber"; +const _Pa = "Path"; const _Pr = "Progress"; const _Pro = "Properties"; const _R = "Resources"; diff --git a/codegen/sdk-codegen/aws-models/cloudformation.json b/codegen/sdk-codegen/aws-models/cloudformation.json index 0b98e80baf2c..9821707e90dc 100644 --- a/codegen/sdk-codegen/aws-models/cloudformation.json +++ b/codegen/sdk-codegen/aws-models/cloudformation.json @@ -292,6 +292,12 @@ "smithy.api#output": {} } }, + "com.amazonaws.cloudformation#AfterContext": { + "type": "string" + }, + "com.amazonaws.cloudformation#AfterValue": { + "type": "string" + }, "com.amazonaws.cloudformation#AllowedValue": { "type": "string" }, @@ -321,6 +327,29 @@ "com.amazonaws.cloudformation#Arn": { "type": "string" }, + "com.amazonaws.cloudformation#AttributeChangeType": { + "type": "enum", + "members": { + "Add": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Add" + } + }, + "Remove": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Remove" + } + }, + "Modify": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Modify" + } + } + } + }, "com.amazonaws.cloudformation#AutoDeployment": { "type": "structure", "members": { @@ -441,6 +470,12 @@ "smithy.api#output": {} } }, + "com.amazonaws.cloudformation#BeforeContext": { + "type": "string" + }, + "com.amazonaws.cloudformation#BeforeValue": { + "type": "string" + }, "com.amazonaws.cloudformation#BoxedInteger": { "type": "integer" }, @@ -600,7 +635,7 @@ "Type": { "target": "com.amazonaws.cloudformation#ChangeType", "traits": { - "smithy.api#documentation": "

The type of entity that CloudFormation changes. Currently, the only entity type is Resource.

" + "smithy.api#documentation": "

The type of entity that CloudFormation changes.

\n " } }, "HookInvocationCount": { @@ -3884,6 +3919,12 @@ "traits": { "smithy.api#documentation": "

A string (provided by the DescribeChangeSet response output) that identifies the next page of\n information that you want to retrieve.

" } + }, + "IncludePropertyValues": { + "target": "com.amazonaws.cloudformation#IncludePropertyValues", + "traits": { + "smithy.api#documentation": "

If true, the returned changes include detailed changes in the property values.

" + } } }, "traits": { @@ -7080,6 +7121,9 @@ "com.amazonaws.cloudformation#IncludeNestedStacks": { "type": "boolean" }, + "com.amazonaws.cloudformation#IncludePropertyValues": { + "type": "boolean" + }, "com.amazonaws.cloudformation#InsufficientCapabilitiesException": { "type": "structure", "members": { @@ -10127,6 +10171,18 @@ "traits": { "smithy.api#documentation": "

Contains information about the module from which the resource was created, if the resource was created from a\n module included in the stack template.

" } + }, + "BeforeContext": { + "target": "com.amazonaws.cloudformation#BeforeContext", + "traits": { + "smithy.api#documentation": "

An encoded JSON string containing the context of the resource before the change is executed.

" + } + }, + "AfterContext": { + "target": "com.amazonaws.cloudformation#AfterContext", + "traits": { + "smithy.api#documentation": "

An encoded JSON string containing the context of the resource after the change is executed.

" + } } }, "traits": { @@ -10355,6 +10411,9 @@ "com.amazonaws.cloudformation#ResourceProperties": { "type": "string" }, + "com.amazonaws.cloudformation#ResourcePropertyPath": { + "type": "string" + }, "com.amazonaws.cloudformation#ResourceScanId": { "type": "string" }, @@ -10680,6 +10739,30 @@ "traits": { "smithy.api#documentation": "

If the Attribute value is Properties, indicates whether a change to this property\n causes the resource to be recreated. The value can be Never, Always, or\n Conditionally. To determine the conditions for a Conditionally recreation, see the update\n behavior for that property in the\n CloudFormation User Guide.

" } + }, + "Path": { + "target": "com.amazonaws.cloudformation#ResourcePropertyPath", + "traits": { + "smithy.api#documentation": "

The property path of the property.

" + } + }, + "BeforeValue": { + "target": "com.amazonaws.cloudformation#BeforeValue", + "traits": { + "smithy.api#documentation": "

The value of the property before the change is executed. Large values can be truncated.

" + } + }, + "AfterValue": { + "target": "com.amazonaws.cloudformation#AfterValue", + "traits": { + "smithy.api#documentation": "

The value of the property after the change is executed. Large values can be truncated.

" + } + }, + "AttributeChangeType": { + "target": "com.amazonaws.cloudformation#AttributeChangeType", + "traits": { + "smithy.api#documentation": "

The type of change to be made to the property if the change is executed.

\n " + } } }, "traits": {