Class: Aws::CloudFormation::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::CloudFormation::Client
- Includes:
- Aws::ClientStubs
- Defined in:
- lib/aws-sdk-cloudformation/client.rb
Class Attribute Summary collapse
- .identifier ⇒ Object readonly private
API Operations collapse
-
#cancel_update_stack(params = {}) ⇒ Struct
Cancels an update on the specified stack.
-
#continue_update_rollback(params = {}) ⇒ Struct
For a specified stack that is in the ‘UPDATE_ROLLBACK_FAILED` state, continues rolling it back to the `UPDATE_ROLLBACK_COMPLETE` state.
-
#create_change_set(params = {}) ⇒ Types::CreateChangeSetOutput
Creates a list of changes that will be applied to a stack so that you can review the changes before executing them.
-
#create_stack(params = {}) ⇒ Types::CreateStackOutput
Creates a stack as specified in the template.
-
#create_stack_instances(params = {}) ⇒ Types::CreateStackInstancesOutput
Creates stack instances for the specified accounts, within the specified regions.
-
#create_stack_set(params = {}) ⇒ Types::CreateStackSetOutput
Creates a stack set.
-
#delete_change_set(params = {}) ⇒ Struct
Deletes the specified change set.
-
#delete_stack(params = {}) ⇒ Struct
Deletes a specified stack.
-
#delete_stack_instances(params = {}) ⇒ Types::DeleteStackInstancesOutput
Deletes stack instances for the specified accounts, in the specified regions.
-
#delete_stack_set(params = {}) ⇒ Struct
Deletes a stack set.
-
#deregister_type(params = {}) ⇒ Struct
Removes a type or type version from active use in the CloudFormation registry.
-
#describe_account_limits(params = {}) ⇒ Types::DescribeAccountLimitsOutput
Retrieves your account’s AWS CloudFormation limits, such as the maximum number of stacks that you can create in your account.
-
#describe_change_set(params = {}) ⇒ Types::DescribeChangeSetOutput
Returns the inputs for the change set and a list of changes that AWS CloudFormation will make if you execute the change set.
-
#describe_stack_drift_detection_status(params = {}) ⇒ Types::DescribeStackDriftDetectionStatusOutput
Returns information about a stack drift detection operation.
-
#describe_stack_events(params = {}) ⇒ Types::DescribeStackEventsOutput
Returns all stack related events for a specified stack in reverse chronological order.
-
#describe_stack_instance(params = {}) ⇒ Types::DescribeStackInstanceOutput
Returns the stack instance that’s associated with the specified stack set, AWS account, and region.
-
#describe_stack_resource(params = {}) ⇒ Types::DescribeStackResourceOutput
Returns a description of the specified resource in the specified stack.
-
#describe_stack_resource_drifts(params = {}) ⇒ Types::DescribeStackResourceDriftsOutput
Returns drift information for the resources that have been checked for drift in the specified stack.
-
#describe_stack_resources(params = {}) ⇒ Types::DescribeStackResourcesOutput
Returns AWS resource descriptions for running and deleted stacks.
-
#describe_stack_set(params = {}) ⇒ Types::DescribeStackSetOutput
Returns the description of the specified stack set.
-
#describe_stack_set_operation(params = {}) ⇒ Types::DescribeStackSetOperationOutput
Returns the description of the specified stack set operation.
-
#describe_stacks(params = {}) ⇒ Types::DescribeStacksOutput
Returns the description for the specified stack; if no stack name was specified, then it returns the description for all the stacks created.
-
#describe_type(params = {}) ⇒ Types::DescribeTypeOutput
Returns detailed information about a type that has been registered.
-
#describe_type_registration(params = {}) ⇒ Types::DescribeTypeRegistrationOutput
Returns information about a type’s registration, including its current status and type and version identifiers.
-
#detect_stack_drift(params = {}) ⇒ Types::DetectStackDriftOutput
Detects whether a stack’s actual configuration differs, or has drifted, from it’s expected configuration, as defined in the stack template and any values specified as template parameters.
-
#detect_stack_resource_drift(params = {}) ⇒ Types::DetectStackResourceDriftOutput
Returns information about whether a resource’s actual configuration differs, or has drifted, from it’s expected configuration, as defined in the stack template and any values specified as template parameters.
-
#detect_stack_set_drift(params = {}) ⇒ Types::DetectStackSetDriftOutput
Detect drift on a stack set.
-
#estimate_template_cost(params = {}) ⇒ Types::EstimateTemplateCostOutput
Returns the estimated monthly cost of a template.
-
#execute_change_set(params = {}) ⇒ Struct
Updates a stack using the input information that was provided when the specified change set was created.
-
#get_stack_policy(params = {}) ⇒ Types::GetStackPolicyOutput
Returns the stack policy for a specified stack.
-
#get_template(params = {}) ⇒ Types::GetTemplateOutput
Returns the template body for a specified stack.
-
#get_template_summary(params = {}) ⇒ Types::GetTemplateSummaryOutput
Returns information about a new or existing template.
-
#list_change_sets(params = {}) ⇒ Types::ListChangeSetsOutput
Returns the ID and status of each active change set for a stack.
-
#list_exports(params = {}) ⇒ Types::ListExportsOutput
Lists all exported output values in the account and region in which you call this action.
-
#list_imports(params = {}) ⇒ Types::ListImportsOutput
Lists all stacks that are importing an exported output value.
-
#list_stack_instances(params = {}) ⇒ Types::ListStackInstancesOutput
Returns summary information about stack instances that are associated with the specified stack set.
-
#list_stack_resources(params = {}) ⇒ Types::ListStackResourcesOutput
Returns descriptions of all resources of the specified stack.
-
#list_stack_set_operation_results(params = {}) ⇒ Types::ListStackSetOperationResultsOutput
Returns summary information about the results of a stack set operation.
-
#list_stack_set_operations(params = {}) ⇒ Types::ListStackSetOperationsOutput
Returns summary information about operations performed on a stack set.
-
#list_stack_sets(params = {}) ⇒ Types::ListStackSetsOutput
Returns summary information about stack sets that are associated with the user.
-
#list_stacks(params = {}) ⇒ Types::ListStacksOutput
Returns the summary information for stacks whose status matches the specified StackStatusFilter.
-
#list_type_registrations(params = {}) ⇒ Types::ListTypeRegistrationsOutput
Returns a list of registration tokens for the specified type.
-
#list_type_versions(params = {}) ⇒ Types::ListTypeVersionsOutput
Returns summary information about the versions of a type.
-
#list_types(params = {}) ⇒ Types::ListTypesOutput
Returns summary information about types that have been registered with CloudFormation.
-
#record_handler_progress(params = {}) ⇒ Struct
Reports progress of a resource handler to CloudFormation.
-
#register_type(params = {}) ⇒ Types::RegisterTypeOutput
Registers a type with the CloudFormation service.
-
#set_stack_policy(params = {}) ⇒ Struct
Sets a stack policy for a specified stack.
-
#set_type_default_version(params = {}) ⇒ Struct
Specify the default version of a type.
-
#signal_resource(params = {}) ⇒ Struct
Sends a signal to the specified resource with a success or failure status.
-
#stop_stack_set_operation(params = {}) ⇒ Struct
Stops an in-progress operation on a stack set and its associated stack instances.
-
#update_stack(params = {}) ⇒ Types::UpdateStackOutput
Updates a stack as specified in the template.
-
#update_stack_instances(params = {}) ⇒ Types::UpdateStackInstancesOutput
Updates the parameter values for stack instances for the specified accounts, within the specified regions.
-
#update_stack_set(params = {}) ⇒ Types::UpdateStackSetOutput
Updates the stack set, and associated stack instances in the specified accounts and regions.
-
#update_termination_protection(params = {}) ⇒ Types::UpdateTerminationProtectionOutput
Updates termination protection for the specified stack.
-
#validate_template(params = {}) ⇒ Types::ValidateTemplateOutput
Validates a specified template.
Class Method Summary collapse
- .errors_module ⇒ Object private
Instance Method Summary collapse
- #build_request(operation_name, params = {}) ⇒ Object private
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
-
#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean
Polls an API operation until a resource enters a desired state.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
251 252 253 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 251 def initialize(*args) super end |
Class Attribute Details
.identifier ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
5160 5161 5162 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 5160 def identifier @identifier end |
Class Method Details
.errors_module ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
5163 5164 5165 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 5163 def errors_module Errors end |
Instance Method Details
#build_request(operation_name, params = {}) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
5013 5014 5015 5016 5017 5018 5019 5020 5021 5022 5023 5024 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 5013 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-cloudformation' context[:gem_version] = '1.29.0' Seahorse::Client::Request.new(handlers, context) end |
#cancel_update_stack(params = {}) ⇒ Struct
Cancels an update on the specified stack. If the call completes successfully, the stack rolls back the update and reverts to the previous stack configuration.
<note markdown=“1”> You can cancel only stacks that are in the UPDATE_IN_PROGRESS state.
</note>
288 289 290 291 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 288 def cancel_update_stack(params = {}, = {}) req = build_request(:cancel_update_stack, params) req.send_request() end |
#continue_update_rollback(params = {}) ⇒ Struct
For a specified stack that is in the ‘UPDATE_ROLLBACK_FAILED` state, continues rolling it back to the `UPDATE_ROLLBACK_COMPLETE` state. Depending on the cause of the failure, you can manually [ fix the error] and continue the rollback. By continuing the rollback, you can return your stack to a working state (the `UPDATE_ROLLBACK_COMPLETE` state), and then try to update the stack again.
A stack goes into the ‘UPDATE_ROLLBACK_FAILED` state when AWS CloudFormation cannot roll back all changes after a failed stack update. For example, you might have a stack that is rolling back to an old database instance that was deleted outside of AWS CloudFormation. Because AWS CloudFormation doesn’t know the database was deleted, it assumes that the database instance still exists and attempts to roll back to it, causing the update rollback to fail.
405 406 407 408 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 405 def continue_update_rollback(params = {}, = {}) req = build_request(:continue_update_rollback, params) req.send_request() end |
#create_change_set(params = {}) ⇒ Types::CreateChangeSetOutput
Creates a list of changes that will be applied to a stack so that you can review the changes before executing them. You can create a change set for a stack that doesn’t exist or an existing stack. If you create a change set for a stack that doesn’t exist, the change set shows all of the resources that AWS CloudFormation will create. If you create a change set for an existing stack, AWS CloudFormation compares the stack’s information with the information that you submit in the change set and lists the differences. Use change sets to understand which resources AWS CloudFormation will create or change, and how it will change resources in an existing stack, before you create or update a stack.
To create a change set for a stack that doesn’t exist, for the ‘ChangeSetType` parameter, specify `CREATE`. To create a change set for an existing stack, specify `UPDATE` for the `ChangeSetType` parameter. To create a change set for an import operation, specify `IMPORT` for the `ChangeSetType` parameter. After the `CreateChangeSet` call successfully completes, AWS CloudFormation starts creating the change set. To check the status of the change set or to review it, use the DescribeChangeSet action.
When you are satisfied with the changes the change set will make, execute the change set by using the ExecuteChangeSet action. AWS CloudFormation doesn’t make changes until you execute the change set.
703 704 705 706 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 703 def create_change_set(params = {}, = {}) req = build_request(:create_change_set, params) req.send_request() end |
#create_stack(params = {}) ⇒ Types::CreateStackOutput
Creates a stack as specified in the template. After the call completes successfully, the stack creation starts. You can check the status of the stack via the DescribeStacks API.
1022 1023 1024 1025 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1022 def create_stack(params = {}, = {}) req = build_request(:create_stack, params) req.send_request() end |
#create_stack_instances(params = {}) ⇒ Types::CreateStackInstancesOutput
Creates stack instances for the specified accounts, within the specified regions. A stack instance refers to a stack in a specific account and region. ‘Accounts` and `Regions` are required parameters—you must specify at least one account and one region.
1141 1142 1143 1144 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1141 def create_stack_instances(params = {}, = {}) req = build_request(:create_stack_instances, params) req.send_request() end |
#create_stack_set(params = {}) ⇒ Types::CreateStackSetOutput
Creates a stack set.
1353 1354 1355 1356 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1353 def create_stack_set(params = {}, = {}) req = build_request(:create_stack_set, params) req.send_request() end |
#delete_change_set(params = {}) ⇒ Struct
Deletes the specified change set. Deleting change sets ensures that no one executes the wrong change set.
If the call successfully completes, AWS CloudFormation successfully deleted the change set.
1385 1386 1387 1388 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1385 def delete_change_set(params = {}, = {}) req = build_request(:delete_change_set, params) req.send_request() end |
#delete_stack(params = {}) ⇒ Struct
Deletes a specified stack. Once the call completes successfully, stack deletion starts. Deleted stacks do not show up in the DescribeStacks API if the deletion has been completed successfully.
1453 1454 1455 1456 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1453 def delete_stack(params = {}, = {}) req = build_request(:delete_stack, params) req.send_request() end |
#delete_stack_instances(params = {}) ⇒ Types::DeleteStackInstancesOutput
Deletes stack instances for the specified accounts, in the specified regions.
1534 1535 1536 1537 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1534 def delete_stack_instances(params = {}, = {}) req = build_request(:delete_stack_instances, params) req.send_request() end |
#delete_stack_set(params = {}) ⇒ Struct
Deletes a stack set. Before you can delete a stack set, all of its member stack instances must be deleted. For more information about how to do this, see DeleteStackInstances.
1559 1560 1561 1562 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1559 def delete_stack_set(params = {}, = {}) req = build_request(:delete_stack_set, params) req.send_request() end |
#deregister_type(params = {}) ⇒ Struct
Removes a type or type version from active use in the CloudFormation registry. If a type or type version is deregistered, it cannot be used in CloudFormation operations.
To deregister a type, you must individually deregister all registered versions of that type. If a type has only a single registered version, deregistering that version results in the type itself being deregistered.
You cannot deregister the default version of a type, unless it is the only registered version of that type, in which case the type itself is deregistered as well.
1612 1613 1614 1615 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1612 def deregister_type(params = {}, = {}) req = build_request(:deregister_type, params) req.send_request() end |
#describe_account_limits(params = {}) ⇒ Types::DescribeAccountLimitsOutput
Retrieves your account’s AWS CloudFormation limits, such as the maximum number of stacks that you can create in your account. For more information about account limits, see [AWS CloudFormation Limits] in the *AWS CloudFormation User Guide*.
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-limits.html
1652 1653 1654 1655 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1652 def describe_account_limits(params = {}, = {}) req = build_request(:describe_account_limits, params) req.send_request() end |
#describe_change_set(params = {}) ⇒ Types::DescribeChangeSetOutput
Returns the inputs for the change set and a list of changes that AWS CloudFormation will make if you execute the change set. For more information, see [Updating Stacks Using Change Sets] in the AWS CloudFormation User Guide.
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets.html
1754 1755 1756 1757 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1754 def describe_change_set(params = {}, = {}) req = build_request(:describe_change_set, params) req.send_request() end |
#describe_stack_drift_detection_status(params = {}) ⇒ Types::DescribeStackDriftDetectionStatusOutput
Returns information about a stack drift detection operation. A stack drift detection operation detects whether a stack’s actual configuration differs, or has drifted, from it’s expected configuration, as defined in the stack template and any values specified as template parameters. A stack is considered to have drifted if one or more of its resources have drifted. For more information on stack and resource drift, see [Detecting Unregulated Configuration Changes to Stacks and Resources].
Use DetectStackDrift to initiate a stack drift detection operation. ‘DetectStackDrift` returns a `StackDriftDetectionId` you can use to monitor the progress of the operation using `DescribeStackDriftDetectionStatus`. Once the drift detection operation has completed, use DescribeStackResourceDrifts to return drift information about the stack and its resources.
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html
1817 1818 1819 1820 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1817 def describe_stack_drift_detection_status(params = {}, = {}) req = build_request(:describe_stack_drift_detection_status, params) req.send_request() end |
#describe_stack_events(params = {}) ⇒ Types::DescribeStackEventsOutput
Returns all stack related events for a specified stack in reverse chronological order. For more information about a stack’s event history, go to [Stacks] in the AWS CloudFormation User Guide.
<note markdown=“1”> You can list events for stacks that have failed to create or have been deleted by specifying the unique stack identifier (stack ID).
</note>
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/concept-stack.html
1882 1883 1884 1885 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1882 def describe_stack_events(params = {}, = {}) req = build_request(:describe_stack_events, params) req.send_request() end |
#describe_stack_instance(params = {}) ⇒ Types::DescribeStackInstanceOutput
Returns the stack instance that’s associated with the specified stack set, AWS account, and region.
For a list of stack instances that are associated with a specific stack set, use ListStackInstances.
1935 1936 1937 1938 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1935 def describe_stack_instance(params = {}, = {}) req = build_request(:describe_stack_instance, params) req.send_request() end |
#describe_stack_resource(params = {}) ⇒ Types::DescribeStackResourceOutput
Returns a description of the specified resource in the specified stack.
For deleted stacks, DescribeStackResource returns resource information for up to 90 days after the stack has been deleted.
1992 1993 1994 1995 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 1992 def describe_stack_resource(params = {}, = {}) req = build_request(:describe_stack_resource, params) req.send_request() end |
#describe_stack_resource_drifts(params = {}) ⇒ Types::DescribeStackResourceDriftsOutput
Returns drift information for the resources that have been checked for drift in the specified stack. This includes actual and expected configuration values for resources where AWS CloudFormation detects configuration drift.
For a given stack, there will be one ‘StackResourceDrift` for each stack resource that has been checked for drift. Resources that have not yet been checked for drift are not included. Resources that do not currently support drift detection are not checked, and so not included. For a list of resources that support drift detection, see [Resources that Support Drift Detection].
Use DetectStackResourceDrift to detect drift on individual resources, or DetectStackDrift to detect drift on all supported resources for a given stack.
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift-resource-list.html
2085 2086 2087 2088 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2085 def describe_stack_resource_drifts(params = {}, = {}) req = build_request(:describe_stack_resource_drifts, params) req.send_request() end |
#describe_stack_resources(params = {}) ⇒ Types::DescribeStackResourcesOutput
Returns AWS resource descriptions for running and deleted stacks. If ‘StackName` is specified, all the associated resources that are part of the stack are returned. If `PhysicalResourceId` is specified, the associated resources of the stack that the resource belongs to are returned.
<note markdown=“1”> Only the first 100 resources will be returned. If your stack has more resources than this, you should use ‘ListStackResources` instead.
</note>
For deleted stacks, ‘DescribeStackResources` returns resource information for up to 90 days after the stack has been deleted.
You must specify either ‘StackName` or `PhysicalResourceId`, but not both. In addition, you can specify `LogicalResourceId` to filter the returned result. For more information about resources, the `LogicalResourceId` and `PhysicalResourceId`, go to the [AWS CloudFormation User Guide].
<note markdown=“1”> A ‘ValidationError` is returned if you specify both `StackName` and `PhysicalResourceId` in the same request.
</note>
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/
2183 2184 2185 2186 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2183 def describe_stack_resources(params = {}, = {}) req = build_request(:describe_stack_resources, params) req.send_request() end |
#describe_stack_set(params = {}) ⇒ Types::DescribeStackSetOutput
Returns the description of the specified stack set.
2236 2237 2238 2239 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2236 def describe_stack_set(params = {}, = {}) req = build_request(:describe_stack_set, params) req.send_request() end |
#describe_stack_set_operation(params = {}) ⇒ Types::DescribeStackSetOperationOutput
Returns the description of the specified stack set operation.
2291 2292 2293 2294 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2291 def describe_stack_set_operation(params = {}, = {}) req = build_request(:describe_stack_set_operation, params) req.send_request() end |
#describe_stacks(params = {}) ⇒ Types::DescribeStacksOutput
Returns the description for the specified stack; if no stack name was specified, then it returns the description for all the stacks created.
<note markdown=“1”> If the stack does not exist, an ‘AmazonCloudFormationException` is returned.
</note>
2378 2379 2380 2381 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2378 def describe_stacks(params = {}, = {}) req = build_request(:describe_stacks, params) req.send_request() end |
#describe_type(params = {}) ⇒ Types::DescribeTypeOutput
Returns detailed information about a type that has been registered.
If you specify a ‘VersionId`, `DescribeType` returns information about that specific type version. Otherwise, it returns information about the default type version.
2463 2464 2465 2466 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2463 def describe_type(params = {}, = {}) req = build_request(:describe_type, params) req.send_request() end |
#describe_type_registration(params = {}) ⇒ Types::DescribeTypeRegistrationOutput
Returns information about a type’s registration, including its current status and type and version identifiers.
When you initiate a registration request using ‘ RegisterType `, you can then use ` DescribeTypeRegistration ` to monitor the progress of that registration request.
Once the registration request has completed, use ‘ DescribeType ` to return detailed informaiton about a type.
2508 2509 2510 2511 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2508 def describe_type_registration(params = {}, = {}) req = build_request(:describe_type_registration, params) req.send_request() end |
#detect_stack_drift(params = {}) ⇒ Types::DetectStackDriftOutput
Detects whether a stack’s actual configuration differs, or has drifted, from it’s expected configuration, as defined in the stack template and any values specified as template parameters. For each resource in the stack that supports drift detection, AWS CloudFormation compares the actual configuration of the resource with its expected template configuration. Only resource properties explicitly defined in the stack template are checked for drift. A stack is considered to have drifted if one or more of its resources differ from their expected template configurations. For more information, see [Detecting Unregulated Configuration Changes to Stacks and Resources].
Use ‘DetectStackDrift` to detect drift on all supported resources for a given stack, or DetectStackResourceDrift to detect drift on individual resources.
For a list of stack resources that currently support drift detection, see [Resources that Support Drift Detection].
‘DetectStackDrift` can take up to several minutes, depending on the number of resources contained within the stack. Use DescribeStackDriftDetectionStatus to monitor the progress of a detect stack drift operation. Once the drift detection operation has completed, use DescribeStackResourceDrifts to return drift information about the stack and its resources.
When detecting drift on a stack, AWS CloudFormation does not detect drift on any nested stacks belonging to that stack. Perform ‘DetectStackDrift` directly on the nested stack itself.
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html [2]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift-resource-list.html
2573 2574 2575 2576 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2573 def detect_stack_drift(params = {}, = {}) req = build_request(:detect_stack_drift, params) req.send_request() end |
#detect_stack_resource_drift(params = {}) ⇒ Types::DetectStackResourceDriftOutput
Returns information about whether a resource’s actual configuration differs, or has drifted, from it’s expected configuration, as defined in the stack template and any values specified as template parameters. This information includes actual and expected property values for resources in which AWS CloudFormation detects drift. Only resource properties explicitly defined in the stack template are checked for drift. For more information about stack and resource drift, see [Detecting Unregulated Configuration Changes to Stacks and Resources].
Use ‘DetectStackResourceDrift` to detect drift on individual resources, or DetectStackDrift to detect drift on all resources in a given stack that support drift detection.
Resources that do not currently support drift detection cannot be checked. For a list of resources that support drift detection, see [Resources that Support Drift Detection].
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html [2]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift-resource-list.html
2642 2643 2644 2645 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2642 def detect_stack_resource_drift(params = {}, = {}) req = build_request(:detect_stack_resource_drift, params) req.send_request() end |
#detect_stack_set_drift(params = {}) ⇒ Types::DetectStackSetDriftOutput
Detect drift on a stack set. When CloudFormation performs drift detection on a stack set, it performs drift detection on the stack associated with each stack instance in the stack set. For more information, see [How CloudFormation Performs Drift Detection on a Stack Set].
‘DetectStackSetDrift` returns the `OperationId` of the stack set drift detection operation. Use this operation id with ` DescribeStackSetOperation ` to monitor the progress of the drift detection operation. The drift detection operation may take some time, depending on the number of stack instances included in the stack set, as well as the number of resources included in each stack.
Once the operation has completed, use the following actions to return drift information:
-
Use ‘ DescribeStackSet ` to return detailed informaiton about the stack set, including detailed information about the last completed drift operation performed on the stack set. (Information about drift operations that are in progress is not included.)
-
Use ‘ ListStackInstances ` to return a list of stack instances belonging to the stack set, including the drift status and last drift time checked of each instance.
-
Use ‘ DescribeStackInstance ` to return detailed information about a specific stack instance, including its drift status and last drift time checked.
For more information on performing a drift detection operation on a stack set, see [Detecting Unmanaged Changes in Stack Sets].
You can only run a single drift detection operation on a given stack set at one time.
To stop a drift detection stack set operation, use ‘ StopStackSetOperation `.
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-drift.html
2736 2737 2738 2739 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2736 def detect_stack_set_drift(params = {}, = {}) req = build_request(:detect_stack_set_drift, params) req.send_request() end |
#estimate_template_cost(params = {}) ⇒ Types::EstimateTemplateCostOutput
Returns the estimated monthly cost of a template. The return value is an AWS Simple Monthly Calculator URL with a query string that describes the resources required to run the template.
2799 2800 2801 2802 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2799 def estimate_template_cost(params = {}, = {}) req = build_request(:estimate_template_cost, params) req.send_request() end |
#execute_change_set(params = {}) ⇒ Struct
Updates a stack using the input information that was provided when the specified change set was created. After the call successfully completes, AWS CloudFormation starts updating the stack. Use the DescribeStacks action to view the status of the update.
When you execute a change set, AWS CloudFormation deletes all other change sets associated with the stack because they aren’t valid for the updated stack.
If a stack policy is associated with the stack, AWS CloudFormation enforces the policy during the update. You can’t specify a temporary stack policy that overrides the current policy.
2846 2847 2848 2849 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2846 def execute_change_set(params = {}, = {}) req = build_request(:execute_change_set, params) req.send_request() end |
#get_stack_policy(params = {}) ⇒ Types::GetStackPolicyOutput
Returns the stack policy for a specified stack. If a stack doesn’t have a policy, a null value is returned.
2876 2877 2878 2879 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2876 def get_stack_policy(params = {}, = {}) req = build_request(:get_stack_policy, params) req.send_request() end |
#get_template(params = {}) ⇒ Types::GetTemplateOutput
Returns the template body for a specified stack. You can get the template for running or deleted stacks.
For deleted stacks, GetTemplate returns the template for up to 90 days after the stack has been deleted.
<note markdown=“1”> If the template does not exist, a ‘ValidationError` is returned.
</note>
2940 2941 2942 2943 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 2940 def get_template(params = {}, = {}) req = build_request(:get_template, params) req.send_request() end |
#get_template_summary(params = {}) ⇒ Types::GetTemplateSummaryOutput
Returns information about a new or existing template. The ‘GetTemplateSummary` action is useful for viewing parameter information, such as default parameter values and parameter types, before you create or update a stack or stack set.
You can use the ‘GetTemplateSummary` action when you submit a template, or you can get template information for a stack set, or a running or deleted stack.
For deleted stacks, ‘GetTemplateSummary` returns the template information for up to 90 days after the stack has been deleted. If the template does not exist, a `ValidationError` is returned.
3052 3053 3054 3055 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3052 def get_template_summary(params = {}, = {}) req = build_request(:get_template_summary, params) req.send_request() end |
#list_change_sets(params = {}) ⇒ Types::ListChangeSetsOutput
Returns the ID and status of each active change set for a stack. For example, AWS CloudFormation lists change sets that are in the ‘CREATE_IN_PROGRESS` or `CREATE_PENDING` state.
3099 3100 3101 3102 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3099 def list_change_sets(params = {}, = {}) req = build_request(:list_change_sets, params) req.send_request() end |
#list_exports(params = {}) ⇒ Types::ListExportsOutput
Lists all exported output values in the account and region in which you call this action. Use this action to see the exported output values that you can import into other stacks. To import values, use the [ ‘Fn::ImportValue` ][1] function.
For more information, see [ AWS CloudFormation Export Stack Output Values].
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-importvalue.html [2]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-exports.html
3144 3145 3146 3147 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3144 def list_exports(params = {}, = {}) req = build_request(:list_exports, params) req.send_request() end |
#list_imports(params = {}) ⇒ Types::ListImportsOutput
Lists all stacks that are importing an exported output value. To modify or remove an exported output value, first use this action to see which stacks are using it. To see the exported output values in your account, see ListExports.
For more information about importing an exported output value, see the
- ‘Fn::ImportValue` ][1
-
function.
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-importvalue.html
3192 3193 3194 3195 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3192 def list_imports(params = {}, = {}) req = build_request(:list_imports, params) req.send_request() end |
#list_stack_instances(params = {}) ⇒ Types::ListStackInstancesOutput
Returns summary information about stack instances that are associated with the specified stack set. You can filter for stack instances that are associated with a specific AWS account name or region.
3257 3258 3259 3260 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3257 def list_stack_instances(params = {}, = {}) req = build_request(:list_stack_instances, params) req.send_request() end |
#list_stack_resources(params = {}) ⇒ Types::ListStackResourcesOutput
Returns descriptions of all resources of the specified stack.
For deleted stacks, ListStackResources returns resource information for up to 90 days after the stack has been deleted.
3311 3312 3313 3314 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3311 def list_stack_resources(params = {}, = {}) req = build_request(:list_stack_resources, params) req.send_request() end |
#list_stack_set_operation_results(params = {}) ⇒ Types::ListStackSetOperationResultsOutput
Returns summary information about the results of a stack set operation.
3370 3371 3372 3373 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3370 def list_stack_set_operation_results(params = {}, = {}) req = build_request(:list_stack_set_operation_results, params) req.send_request() end |
#list_stack_set_operations(params = {}) ⇒ Types::ListStackSetOperationsOutput
Returns summary information about operations performed on a stack set.
3423 3424 3425 3426 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3423 def list_stack_set_operations(params = {}, = {}) req = build_request(:list_stack_set_operations, params) req.send_request() end |
#list_stack_sets(params = {}) ⇒ Types::ListStackSetsOutput
Returns summary information about stack sets that are associated with the user.
3477 3478 3479 3480 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3477 def list_stack_sets(params = {}, = {}) req = build_request(:list_stack_sets, params) req.send_request() end |
#list_stacks(params = {}) ⇒ Types::ListStacksOutput
Returns the summary information for stacks whose status matches the specified StackStatusFilter. Summary information for stacks that have been deleted is kept for 90 days after the stack is deleted. If no StackStatusFilter is specified, summary information for all stacks is returned (including existing stacks and stacks that have been deleted).
3532 3533 3534 3535 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3532 def list_stacks(params = {}, = {}) req = build_request(:list_stacks, params) req.send_request() end |
#list_type_registrations(params = {}) ⇒ Types::ListTypeRegistrationsOutput
Returns a list of registration tokens for the specified type.
3597 3598 3599 3600 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3597 def list_type_registrations(params = {}, = {}) req = build_request(:list_type_registrations, params) req.send_request() end |
#list_type_versions(params = {}) ⇒ Types::ListTypeVersionsOutput
Returns summary information about the versions of a type.
3678 3679 3680 3681 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3678 def list_type_versions(params = {}, = {}) req = build_request(:list_type_versions, params) req.send_request() end |
#list_types(params = {}) ⇒ Types::ListTypesOutput
Returns summary information about types that have been registered with CloudFormation.
3772 3773 3774 3775 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3772 def list_types(params = {}, = {}) req = build_request(:list_types, params) req.send_request() end |
#record_handler_progress(params = {}) ⇒ Struct
Reports progress of a resource handler to CloudFormation.
Reserved for use by the [CloudFormation CLI]. Do not use this API in your code.
[1]: docs.aws.amazon.com/cloudformation-cli/latest/userguide/what-is-cloudformation-cli.html
3853 3854 3855 3856 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3853 def record_handler_progress(params = {}, = {}) req = build_request(:record_handler_progress, params) req.send_request() end |
#register_type(params = {}) ⇒ Types::RegisterTypeOutput
Registers a type with the CloudFormation service. Registering a type makes it available for use in CloudFormation templates in your AWS account, and includes:
-
Validating the resource schema
-
Determining which handlers have been specified for the resource
-
Making the resource type available for use in your account
For more information on how to develop types and ready them for registeration, see [Creating Resource Providers](cloudformation-cli/latest/userguide/resource-types.html) in the *CloudFormation CLI User Guide*.
Once you have initiated a registration request using ‘ RegisterType `, you can use ` DescribeTypeRegistration ` to monitor the progress of the registration request.
3964 3965 3966 3967 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 3964 def register_type(params = {}, = {}) req = build_request(:register_type, params) req.send_request() end |
#set_stack_policy(params = {}) ⇒ Struct
Sets a stack policy for a specified stack.
4004 4005 4006 4007 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 4004 def set_stack_policy(params = {}, = {}) req = build_request(:set_stack_policy, params) req.send_request() end |
#set_type_default_version(params = {}) ⇒ Struct
Specify the default version of a type. The default version of a type will be used in CloudFormation operations.
4046 4047 4048 4049 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 4046 def set_type_default_version(params = {}, = {}) req = build_request(:set_type_default_version, params) req.send_request() end |
#signal_resource(params = {}) ⇒ Struct
Sends a signal to the specified resource with a success or failure status. You can use the SignalResource API in conjunction with a creation policy or update policy. AWS CloudFormation doesn’t proceed with a stack creation or update until resources receive the required number of signals or the timeout period is exceeded. The SignalResource API is useful in cases where you want to send signals from anywhere other than an Amazon EC2 instance.
4094 4095 4096 4097 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 4094 def signal_resource(params = {}, = {}) req = build_request(:signal_resource, params) req.send_request() end |
#stop_stack_set_operation(params = {}) ⇒ Struct
Stops an in-progress operation on a stack set and its associated stack instances.
4122 4123 4124 4125 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 4122 def stop_stack_set_operation(params = {}, = {}) req = build_request(:stop_stack_set_operation, params) req.send_request() end |
#update_stack(params = {}) ⇒ Types::UpdateStackOutput
Updates a stack as specified in the template. After the call completes successfully, the stack update starts. You can check the status of the stack via the DescribeStacks action.
To get a copy of the template for an existing stack, you can use the GetTemplate action.
For more information about creating an update template, updating a stack, and monitoring the progress of the update, see [Updating a Stack].
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html
4443 4444 4445 4446 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 4443 def update_stack(params = {}, = {}) req = build_request(:update_stack, params) req.send_request() end |
#update_stack_instances(params = {}) ⇒ Types::UpdateStackInstancesOutput
Updates the parameter values for stack instances for the specified accounts, within the specified regions. A stack instance refers to a stack in a specific account and region.
You can only update stack instances in regions and accounts where they already exist; to create additional stack instances, use [CreateStackInstances].
During stack set updates, any parameters overridden for a stack instance are not updated, but retain their overridden value.
You can only update the parameter values that are specified in the stack set; to add or delete a parameter itself, use
- UpdateStackSet][2
-
to update the stack set template. If you add a
parameter to a template, before you can override the parameter value specified in the stack set you must first use [UpdateStackSet] to update all stack instances with the updated template and parameter value specified in the stack set. Once a stack instance has been updated with the new parameter, you can then override the parameter value using ‘UpdateStackInstances`.
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStackInstances.html [2]: docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_UpdateStackSet.html
4589 4590 4591 4592 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 4589 def update_stack_instances(params = {}, = {}) req = build_request(:update_stack_instances, params) req.send_request() end |
#update_stack_set(params = {}) ⇒ Types::UpdateStackSetOutput
Updates the stack set, and associated stack instances in the specified accounts and regions.
Even if the stack set operation created by updating the stack set fails (completely or partially, below or above a specified failure tolerance), the stack set is updated with your changes. Subsequent CreateStackInstances calls on the specified stack set use the updated stack set.
4891 4892 4893 4894 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 4891 def update_stack_set(params = {}, = {}) req = build_request(:update_stack_set, params) req.send_request() end |
#update_termination_protection(params = {}) ⇒ Types::UpdateTerminationProtectionOutput
Updates termination protection for the specified stack. If a user attempts to delete a stack with termination protection enabled, the operation fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted] in the *AWS CloudFormation User Guide*.
For [nested stacks], termination protection is set on the root stack and cannot be changed directly on the nested stack.
[1]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html [2]: docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html
4936 4937 4938 4939 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 4936 def update_termination_protection(params = {}, = {}) req = build_request(:update_termination_protection, params) req.send_request() end |
#validate_template(params = {}) ⇒ Types::ValidateTemplateOutput
Validates a specified template. AWS CloudFormation first checks if the template is valid JSON. If it isn’t, AWS CloudFormation checks if the template is valid YAML. If both these checks fail, AWS CloudFormation returns a template validation error.
5004 5005 5006 5007 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 5004 def validate_template(params = {}, = {}) req = build_request(:validate_template, params) req.send_request() end |
#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean
Polls an API operation until a resource enters a desired state.
## Basic Usage
A waiter will call an API operation until:
-
It is successful
-
It enters a terminal state
-
It makes the maximum number of attempts
In between attempts, the waiter will sleep.
# polls in a loop, sleeping between attempts
client.wait_until(waiter_name, params)
## Configuration
You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You can pass configuration as the final arguments hash.
# poll for ~25 seconds
client.wait_until(waiter_name, params, {
max_attempts: 5,
delay: 5,
})
## Callbacks
You can be notified before each polling attempt and before each delay. If you throw ‘:success` or `:failure` from these callbacks, it will terminate the waiter.
started_at = Time.now
client.wait_until(waiter_name, params, {
# disable max attempts
max_attempts: nil,
# poll for 1 hour, instead of a number of attempts
before_wait: -> (attempts, response) do
throw :failure if Time.now - started_at > 3600
end
})
## Handling Errors
When a waiter is unsuccessful, it will raise an error. All of the failure errors extend from Waiters::Errors::WaiterFailed.
begin
client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
# resource did not enter the desired state in time
end
## Valid Waiters
The following table lists the valid waiter names, the operations they call, and the default ‘:delay` and `:max_attempts` values.
| waiter_name | params | :delay | :max_attempts | | ————————– | —————————– | ——– | ————- | | change_set_create_complete | #describe_change_set | 30 | 120 | | stack_create_complete | #describe_stacks | 30 | 120 | | stack_delete_complete | #describe_stacks | 30 | 120 | | stack_exists | #describe_stacks | 5 | 20 | | stack_import_complete | #describe_stacks | 30 | 120 | | stack_update_complete | #describe_stacks | 30 | 120 | | type_registration_complete | #describe_type_registration | 30 | 120 |
5120 5121 5122 5123 5124 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 5120 def wait_until(waiter_name, params = {}, = {}) w = waiter(waiter_name, ) yield(w.waiter) if block_given? # deprecated w.wait(params) end |
#waiter_names ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
5128 5129 5130 |
# File 'lib/aws-sdk-cloudformation/client.rb', line 5128 def waiter_names waiters.keys end |