AWS SDK for C++  1.9.41
AWS SDK for C++
Public Member Functions | Protected Member Functions | List of all members
Aws::CloudFormation::Model::CreateStackRequest Class Reference

#include <CreateStackRequest.h>

+ Inheritance diagram for Aws::CloudFormation::Model::CreateStackRequest:

Public Member Functions

 CreateStackRequest ()
 
virtual const char * GetServiceRequestName () const override
 
Aws::String SerializePayload () const override
 
const Aws::StringGetStackName () const
 
bool StackNameHasBeenSet () const
 
void SetStackName (const Aws::String &value)
 
void SetStackName (Aws::String &&value)
 
void SetStackName (const char *value)
 
CreateStackRequestWithStackName (const Aws::String &value)
 
CreateStackRequestWithStackName (Aws::String &&value)
 
CreateStackRequestWithStackName (const char *value)
 
const Aws::StringGetTemplateBody () const
 
bool TemplateBodyHasBeenSet () const
 
void SetTemplateBody (const Aws::String &value)
 
void SetTemplateBody (Aws::String &&value)
 
void SetTemplateBody (const char *value)
 
CreateStackRequestWithTemplateBody (const Aws::String &value)
 
CreateStackRequestWithTemplateBody (Aws::String &&value)
 
CreateStackRequestWithTemplateBody (const char *value)
 
const Aws::StringGetTemplateURL () const
 
bool TemplateURLHasBeenSet () const
 
void SetTemplateURL (const Aws::String &value)
 
void SetTemplateURL (Aws::String &&value)
 
void SetTemplateURL (const char *value)
 
CreateStackRequestWithTemplateURL (const Aws::String &value)
 
CreateStackRequestWithTemplateURL (Aws::String &&value)
 
CreateStackRequestWithTemplateURL (const char *value)
 
const Aws::Vector< Parameter > & GetParameters () const
 
bool ParametersHasBeenSet () const
 
void SetParameters (const Aws::Vector< Parameter > &value)
 
void SetParameters (Aws::Vector< Parameter > &&value)
 
CreateStackRequestWithParameters (const Aws::Vector< Parameter > &value)
 
CreateStackRequestWithParameters (Aws::Vector< Parameter > &&value)
 
CreateStackRequestAddParameters (const Parameter &value)
 
CreateStackRequestAddParameters (Parameter &&value)
 
bool GetDisableRollback () const
 
bool DisableRollbackHasBeenSet () const
 
void SetDisableRollback (bool value)
 
CreateStackRequestWithDisableRollback (bool value)
 
const RollbackConfigurationGetRollbackConfiguration () const
 
bool RollbackConfigurationHasBeenSet () const
 
void SetRollbackConfiguration (const RollbackConfiguration &value)
 
void SetRollbackConfiguration (RollbackConfiguration &&value)
 
CreateStackRequestWithRollbackConfiguration (const RollbackConfiguration &value)
 
CreateStackRequestWithRollbackConfiguration (RollbackConfiguration &&value)
 
int GetTimeoutInMinutes () const
 
bool TimeoutInMinutesHasBeenSet () const
 
void SetTimeoutInMinutes (int value)
 
CreateStackRequestWithTimeoutInMinutes (int value)
 
const Aws::Vector< Aws::String > & GetNotificationARNs () const
 
bool NotificationARNsHasBeenSet () const
 
void SetNotificationARNs (const Aws::Vector< Aws::String > &value)
 
void SetNotificationARNs (Aws::Vector< Aws::String > &&value)
 
CreateStackRequestWithNotificationARNs (const Aws::Vector< Aws::String > &value)
 
CreateStackRequestWithNotificationARNs (Aws::Vector< Aws::String > &&value)
 
CreateStackRequestAddNotificationARNs (const Aws::String &value)
 
CreateStackRequestAddNotificationARNs (Aws::String &&value)
 
CreateStackRequestAddNotificationARNs (const char *value)
 
const Aws::Vector< Capability > & GetCapabilities () const
 
bool CapabilitiesHasBeenSet () const
 
void SetCapabilities (const Aws::Vector< Capability > &value)
 
void SetCapabilities (Aws::Vector< Capability > &&value)
 
CreateStackRequestWithCapabilities (const Aws::Vector< Capability > &value)
 
CreateStackRequestWithCapabilities (Aws::Vector< Capability > &&value)
 
CreateStackRequestAddCapabilities (const Capability &value)
 
CreateStackRequestAddCapabilities (Capability &&value)
 
const Aws::Vector< Aws::String > & GetResourceTypes () const
 
bool ResourceTypesHasBeenSet () const
 
void SetResourceTypes (const Aws::Vector< Aws::String > &value)
 
void SetResourceTypes (Aws::Vector< Aws::String > &&value)
 
CreateStackRequestWithResourceTypes (const Aws::Vector< Aws::String > &value)
 
CreateStackRequestWithResourceTypes (Aws::Vector< Aws::String > &&value)
 
CreateStackRequestAddResourceTypes (const Aws::String &value)
 
CreateStackRequestAddResourceTypes (Aws::String &&value)
 
CreateStackRequestAddResourceTypes (const char *value)
 
const Aws::StringGetRoleARN () const
 
bool RoleARNHasBeenSet () const
 
void SetRoleARN (const Aws::String &value)
 
void SetRoleARN (Aws::String &&value)
 
void SetRoleARN (const char *value)
 
CreateStackRequestWithRoleARN (const Aws::String &value)
 
CreateStackRequestWithRoleARN (Aws::String &&value)
 
CreateStackRequestWithRoleARN (const char *value)
 
const OnFailureGetOnFailure () const
 
bool OnFailureHasBeenSet () const
 
void SetOnFailure (const OnFailure &value)
 
void SetOnFailure (OnFailure &&value)
 
CreateStackRequestWithOnFailure (const OnFailure &value)
 
CreateStackRequestWithOnFailure (OnFailure &&value)
 
const Aws::StringGetStackPolicyBody () const
 
bool StackPolicyBodyHasBeenSet () const
 
void SetStackPolicyBody (const Aws::String &value)
 
void SetStackPolicyBody (Aws::String &&value)
 
void SetStackPolicyBody (const char *value)
 
CreateStackRequestWithStackPolicyBody (const Aws::String &value)
 
CreateStackRequestWithStackPolicyBody (Aws::String &&value)
 
CreateStackRequestWithStackPolicyBody (const char *value)
 
const Aws::StringGetStackPolicyURL () const
 
bool StackPolicyURLHasBeenSet () const
 
void SetStackPolicyURL (const Aws::String &value)
 
void SetStackPolicyURL (Aws::String &&value)
 
void SetStackPolicyURL (const char *value)
 
CreateStackRequestWithStackPolicyURL (const Aws::String &value)
 
CreateStackRequestWithStackPolicyURL (Aws::String &&value)
 
CreateStackRequestWithStackPolicyURL (const char *value)
 
const Aws::Vector< Tag > & GetTags () const
 
bool TagsHasBeenSet () const
 
void SetTags (const Aws::Vector< Tag > &value)
 
void SetTags (Aws::Vector< Tag > &&value)
 
CreateStackRequestWithTags (const Aws::Vector< Tag > &value)
 
CreateStackRequestWithTags (Aws::Vector< Tag > &&value)
 
CreateStackRequestAddTags (const Tag &value)
 
CreateStackRequestAddTags (Tag &&value)
 
const Aws::StringGetClientRequestToken () const
 
bool ClientRequestTokenHasBeenSet () const
 
void SetClientRequestToken (const Aws::String &value)
 
void SetClientRequestToken (Aws::String &&value)
 
void SetClientRequestToken (const char *value)
 
CreateStackRequestWithClientRequestToken (const Aws::String &value)
 
CreateStackRequestWithClientRequestToken (Aws::String &&value)
 
CreateStackRequestWithClientRequestToken (const char *value)
 
bool GetEnableTerminationProtection () const
 
bool EnableTerminationProtectionHasBeenSet () const
 
void SetEnableTerminationProtection (bool value)
 
CreateStackRequestWithEnableTerminationProtection (bool value)
 
- Public Member Functions inherited from Aws::CloudFormation::CloudFormationRequest
virtual ~CloudFormationRequest ()
 
void AddParametersToRequest (Aws::Http::HttpRequest &httpRequest) const
 
Aws::Http::HeaderValueCollection GetHeaders () const override
 
- Public Member Functions inherited from Aws::AmazonSerializableWebServiceRequest
 AmazonSerializableWebServiceRequest ()
 
virtual ~AmazonSerializableWebServiceRequest ()
 
std::shared_ptr< Aws::IOStreamGetBody () const override
 
- Public Member Functions inherited from Aws::AmazonWebServiceRequest
 AmazonWebServiceRequest ()
 
virtual ~AmazonWebServiceRequest ()=default
 
virtual void AddQueryStringParameters (Aws::Http::URI &uri) const
 
virtual void PutToPresignedUrl (Aws::Http::URI &uri) const
 
virtual bool IsStreaming () const
 
virtual bool IsEventStreamRequest () const
 
virtual bool SignBody () const
 
virtual bool IsChunked () const
 
virtual void SetRequestSignedHandler (const RequestSignedHandler &handler)
 
virtual const RequestSignedHandlerGetRequestSignedHandler () const
 
const Aws::IOStreamFactoryGetResponseStreamFactory () const
 
void SetResponseStreamFactory (const Aws::IOStreamFactory &factory)
 
virtual void SetDataReceivedEventHandler (const Aws::Http::DataReceivedEventHandler &dataReceivedEventHandler)
 
virtual void SetDataSentEventHandler (const Aws::Http::DataSentEventHandler &dataSentEventHandler)
 
virtual void SetContinueRequestHandler (const Aws::Http::ContinueRequestHandler &continueRequestHandler)
 
virtual void SetDataReceivedEventHandler (Aws::Http::DataReceivedEventHandler &&dataReceivedEventHandler)
 
virtual void SetDataSentEventHandler (Aws::Http::DataSentEventHandler &&dataSentEventHandler)
 
virtual void SetContinueRequestHandler (Aws::Http::ContinueRequestHandler &&continueRequestHandler)
 
virtual void SetRequestRetryHandler (const RequestRetryHandler &handler)
 
virtual void SetRequestRetryHandler (RequestRetryHandler &&handler)
 
virtual const Aws::Http::DataReceivedEventHandlerGetDataReceivedEventHandler () const
 
virtual const Aws::Http::DataSentEventHandlerGetDataSentEventHandler () const
 
virtual const Aws::Http::ContinueRequestHandlerGetContinueRequestHandler () const
 
virtual const RequestRetryHandlerGetRequestRetryHandler () const
 
virtual bool ShouldComputeContentMd5 () const
 

Protected Member Functions

void DumpBodyToUrl (Aws::Http::URI &uri) const override
 
- Protected Member Functions inherited from Aws::CloudFormation::CloudFormationRequest
virtual Aws::Http::HeaderValueCollection GetRequestSpecificHeaders () const
 

Detailed Description

The input for CreateStack action.

See Also:

AWS API Reference

Definition at line 30 of file CreateStackRequest.h.

Constructor & Destructor Documentation

◆ CreateStackRequest()

Aws::CloudFormation::Model::CreateStackRequest::CreateStackRequest ( )

Member Function Documentation

◆ AddCapabilities() [1/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddCapabilities ( Capability &&  value)
inline

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your AWS account; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, AWS CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by AWS CloudFormation.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create the stack directly from the template using this capability.

    You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified.

    For more information, see Using AWS CloudFormation Macros to Perform Custom Processing on Templates.

Definition at line 1009 of file CreateStackRequest.h.

◆ AddCapabilities() [2/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddCapabilities ( const Capability value)
inline

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your AWS account; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, AWS CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by AWS CloudFormation.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create the stack directly from the template using this capability.

    You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified.

    For more information, see Using AWS CloudFormation Macros to Perform Custom Processing on Templates.

Definition at line 947 of file CreateStackRequest.h.

◆ AddNotificationARNs() [1/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddNotificationARNs ( Aws::String &&  value)
inline

The Simple Notification Service (SNS) topic ARNs to publish stack related events. You can find your SNS topic ARNs using the SNS console or your Command Line Interface (CLI).

Definition at line 505 of file CreateStackRequest.h.

◆ AddNotificationARNs() [2/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddNotificationARNs ( const Aws::String value)
inline

The Simple Notification Service (SNS) topic ARNs to publish stack related events. You can find your SNS topic ARNs using the SNS console or your Command Line Interface (CLI).

Definition at line 498 of file CreateStackRequest.h.

◆ AddNotificationARNs() [3/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddNotificationARNs ( const char *  value)
inline

The Simple Notification Service (SNS) topic ARNs to publish stack related events. You can find your SNS topic ARNs using the SNS console or your Command Line Interface (CLI).

Definition at line 512 of file CreateStackRequest.h.

◆ AddParameters() [1/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddParameters ( const Parameter value)
inline

A list of Parameter structures that specify input parameters for the stack. For more information, see the Parameter data type.

Definition at line 345 of file CreateStackRequest.h.

◆ AddParameters() [2/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddParameters ( Parameter &&  value)
inline

A list of Parameter structures that specify input parameters for the stack. For more information, see the Parameter data type.

Definition at line 353 of file CreateStackRequest.h.

◆ AddResourceTypes() [1/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddResourceTypes ( Aws::String &&  value)
inline

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all AWS resource), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular AWS service), and AWS::service_name::resource_logical_ID (for a specific AWS resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for AWS CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with AWS Identity and Access Management.

Definition at line 1162 of file CreateStackRequest.h.

◆ AddResourceTypes() [2/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddResourceTypes ( const Aws::String value)
inline

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all AWS resource), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular AWS service), and AWS::service_name::resource_logical_ID (for a specific AWS resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for AWS CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with AWS Identity and Access Management.

Definition at line 1143 of file CreateStackRequest.h.

◆ AddResourceTypes() [3/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddResourceTypes ( const char *  value)
inline

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all AWS resource), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular AWS service), and AWS::service_name::resource_logical_ID (for a specific AWS resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for AWS CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with AWS Identity and Access Management.

Definition at line 1181 of file CreateStackRequest.h.

◆ AddTags() [1/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddTags ( const Tag value)
inline

Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.

Definition at line 1531 of file CreateStackRequest.h.

◆ AddTags() [2/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::AddTags ( Tag &&  value)
inline

Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.

Definition at line 1538 of file CreateStackRequest.h.

◆ CapabilitiesHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::CapabilitiesHasBeenSet ( ) const
inline

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your AWS account; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, AWS CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by AWS CloudFormation.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create the stack directly from the template using this capability.

    You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified.

    For more information, see Using AWS CloudFormation Macros to Perform Custom Processing on Templates.

Definition at line 637 of file CreateStackRequest.h.

◆ ClientRequestTokenHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::ClientRequestTokenHasBeenSet ( ) const
inline

A unique identifier for this CreateStack request. Specify this token if you plan to retry requests so that AWS CloudFormation knows that you're not attempting to create a stack with the same name. You might retry CreateStack requests to ensure that AWS CloudFormation successfully received them.

All events triggered by a given stack operation are assigned the same client request token, which you can use to track operations. For example, if you execute a CreateStack operation with the token token1, then all the StackEvents generated by that operation will have ClientRequestToken set as token1.

In the console, stack operations display the client request token on the Events tab. Stack operations that are initiated from the console use the token format Console-StackOperation-ID, which helps you easily identify the stack operation . For example, if you create a stack using the console, each stack event would be assigned the same token in the following format: Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002.

Definition at line 1579 of file CreateStackRequest.h.

◆ DisableRollbackHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::DisableRollbackHasBeenSet ( ) const
inline

Set to true to disable rollback of the stack if stack creation failed. You can specify either DisableRollback or OnFailure, but not both.

Default: false

Definition at line 368 of file CreateStackRequest.h.

◆ DumpBodyToUrl()

void Aws::CloudFormation::Model::CreateStackRequest::DumpBodyToUrl ( Aws::Http::URI uri) const
overrideprotectedvirtual

Default does nothing. Override this to convert what would otherwise be the payload of the request to a query string format.

Reimplemented from Aws::AmazonWebServiceRequest.

◆ EnableTerminationProtectionHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::EnableTerminationProtectionHasBeenSet ( ) const
inline

Whether to enable termination protection on 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. Termination protection is disabled on stacks by default.

For nested stacks, termination protection is set on the root stack and cannot be changed directly on the nested stack.

Definition at line 1726 of file CreateStackRequest.h.

◆ GetCapabilities()

const Aws::Vector<Capability>& Aws::CloudFormation::Model::CreateStackRequest::GetCapabilities ( ) const
inline

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your AWS account; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, AWS CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by AWS CloudFormation.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create the stack directly from the template using this capability.

    You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified.

    For more information, see Using AWS CloudFormation Macros to Perform Custom Processing on Templates.

Definition at line 575 of file CreateStackRequest.h.

◆ GetClientRequestToken()

const Aws::String& Aws::CloudFormation::Model::CreateStackRequest::GetClientRequestToken ( ) const
inline

A unique identifier for this CreateStack request. Specify this token if you plan to retry requests so that AWS CloudFormation knows that you're not attempting to create a stack with the same name. You might retry CreateStack requests to ensure that AWS CloudFormation successfully received them.

All events triggered by a given stack operation are assigned the same client request token, which you can use to track operations. For example, if you execute a CreateStack operation with the token token1, then all the StackEvents generated by that operation will have ClientRequestToken set as token1.

In the console, stack operations display the client request token on the Events tab. Stack operations that are initiated from the console use the token format Console-StackOperation-ID, which helps you easily identify the stack operation . For example, if you create a stack using the console, each stack event would be assigned the same token in the following format: Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002.

Definition at line 1559 of file CreateStackRequest.h.

◆ GetDisableRollback()

bool Aws::CloudFormation::Model::CreateStackRequest::GetDisableRollback ( ) const
inline

Set to true to disable rollback of the stack if stack creation failed. You can specify either DisableRollback or OnFailure, but not both.

Default: false

Definition at line 361 of file CreateStackRequest.h.

◆ GetEnableTerminationProtection()

bool Aws::CloudFormation::Model::CreateStackRequest::GetEnableTerminationProtection ( ) const
inline

Whether to enable termination protection on 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. Termination protection is disabled on stacks by default.

For nested stacks, termination protection is set on the root stack and cannot be changed directly on the nested stack.

Definition at line 1713 of file CreateStackRequest.h.

◆ GetNotificationARNs()

const Aws::Vector<Aws::String>& Aws::CloudFormation::Model::CreateStackRequest::GetNotificationARNs ( ) const
inline

The Simple Notification Service (SNS) topic ARNs to publish stack related events. You can find your SNS topic ARNs using the SNS console or your Command Line Interface (CLI).

Definition at line 456 of file CreateStackRequest.h.

◆ GetOnFailure()

const OnFailure& Aws::CloudFormation::Model::CreateStackRequest::GetOnFailure ( ) const
inline

Determines what action will be taken if stack creation fails. This must be one of: DO_NOTHING, ROLLBACK, or DELETE. You can specify either OnFailure or DisableRollback, but not both.

Default: ROLLBACK

Definition at line 1303 of file CreateStackRequest.h.

◆ GetParameters()

const Aws::Vector<Parameter>& Aws::CloudFormation::Model::CreateStackRequest::GetParameters ( ) const
inline

A list of Parameter structures that specify input parameters for the stack. For more information, see the Parameter data type.

Definition at line 297 of file CreateStackRequest.h.

◆ GetResourceTypes()

const Aws::Vector<Aws::String>& Aws::CloudFormation::Model::CreateStackRequest::GetResourceTypes ( ) const
inline

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all AWS resource), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular AWS service), and AWS::service_name::resource_logical_ID (for a specific AWS resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for AWS CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with AWS Identity and Access Management.

Definition at line 1029 of file CreateStackRequest.h.

◆ GetRoleARN()

const Aws::String& Aws::CloudFormation::Model::CreateStackRequest::GetRoleARN ( ) const
inline

The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

Definition at line 1196 of file CreateStackRequest.h.

◆ GetRollbackConfiguration()

const RollbackConfiguration& Aws::CloudFormation::Model::CreateStackRequest::GetRollbackConfiguration ( ) const
inline

The rollback triggers for AWS CloudFormation to monitor during stack creation and updating operations, and for the specified monitoring period afterwards.

Definition at line 389 of file CreateStackRequest.h.

◆ GetServiceRequestName()

virtual const char* Aws::CloudFormation::Model::CreateStackRequest::GetServiceRequestName ( ) const
inlineoverridevirtual

Implements Aws::AmazonWebServiceRequest.

Definition at line 39 of file CreateStackRequest.h.

◆ GetStackName()

const Aws::String& Aws::CloudFormation::Model::CreateStackRequest::GetStackName ( ) const
inline

The name that is associated with the stack. The name must be unique in the Region in which you are creating the stack.

A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.

Definition at line 55 of file CreateStackRequest.h.

◆ GetStackPolicyBody()

const Aws::String& Aws::CloudFormation::Model::CreateStackRequest::GetStackPolicyBody ( ) const
inline

Structure containing the stack policy body. For more information, go to Prevent Updates to Stack Resources in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1353 of file CreateStackRequest.h.

◆ GetStackPolicyURL()

const Aws::String& Aws::CloudFormation::Model::CreateStackRequest::GetStackPolicyURL ( ) const
inline

Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same Region as the stack. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1425 of file CreateStackRequest.h.

◆ GetTags()

const Aws::Vector<Tag>& Aws::CloudFormation::Model::CreateStackRequest::GetTags ( ) const
inline

Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.

Definition at line 1489 of file CreateStackRequest.h.

◆ GetTemplateBody()

const Aws::String& Aws::CloudFormation::Model::CreateStackRequest::GetTemplateBody ( ) const
inline

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 129 of file CreateStackRequest.h.

◆ GetTemplateURL()

const Aws::String& Aws::CloudFormation::Model::CreateStackRequest::GetTemplateURL ( ) const
inline

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, go to the Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 211 of file CreateStackRequest.h.

◆ GetTimeoutInMinutes()

int Aws::CloudFormation::Model::CreateStackRequest::GetTimeoutInMinutes ( ) const
inline

The amount of time that can pass before the stack status becomes CREATE_FAILED; if DisableRollback is not set or is set to false, the stack will be rolled back.

Definition at line 427 of file CreateStackRequest.h.

◆ NotificationARNsHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::NotificationARNsHasBeenSet ( ) const
inline

The Simple Notification Service (SNS) topic ARNs to publish stack related events. You can find your SNS topic ARNs using the SNS console or your Command Line Interface (CLI).

Definition at line 463 of file CreateStackRequest.h.

◆ OnFailureHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::OnFailureHasBeenSet ( ) const
inline

Determines what action will be taken if stack creation fails. This must be one of: DO_NOTHING, ROLLBACK, or DELETE. You can specify either OnFailure or DisableRollback, but not both.

Default: ROLLBACK

Definition at line 1311 of file CreateStackRequest.h.

◆ ParametersHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::ParametersHasBeenSet ( ) const
inline

A list of Parameter structures that specify input parameters for the stack. For more information, see the Parameter data type.

Definition at line 305 of file CreateStackRequest.h.

◆ ResourceTypesHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::ResourceTypesHasBeenSet ( ) const
inline

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all AWS resource), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular AWS service), and AWS::service_name::resource_logical_ID (for a specific AWS resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for AWS CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with AWS Identity and Access Management.

Definition at line 1048 of file CreateStackRequest.h.

◆ RoleARNHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::RoleARNHasBeenSet ( ) const
inline

The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

Definition at line 1210 of file CreateStackRequest.h.

◆ RollbackConfigurationHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::RollbackConfigurationHasBeenSet ( ) const
inline

The rollback triggers for AWS CloudFormation to monitor during stack creation and updating operations, and for the specified monitoring period afterwards.

Definition at line 395 of file CreateStackRequest.h.

◆ SerializePayload()

Aws::String Aws::CloudFormation::Model::CreateStackRequest::SerializePayload ( ) const
overridevirtual

Convert payload into String.

Implements Aws::AmazonSerializableWebServiceRequest.

◆ SetCapabilities() [1/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetCapabilities ( Aws::Vector< Capability > &&  value)
inline

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your AWS account; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, AWS CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by AWS CloudFormation.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create the stack directly from the template using this capability.

    You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified.

    For more information, see Using AWS CloudFormation Macros to Perform Custom Processing on Templates.

Definition at line 761 of file CreateStackRequest.h.

◆ SetCapabilities() [2/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetCapabilities ( const Aws::Vector< Capability > &  value)
inline

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your AWS account; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, AWS CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by AWS CloudFormation.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create the stack directly from the template using this capability.

    You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified.

    For more information, see Using AWS CloudFormation Macros to Perform Custom Processing on Templates.

Definition at line 699 of file CreateStackRequest.h.

◆ SetClientRequestToken() [1/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetClientRequestToken ( Aws::String &&  value)
inline

A unique identifier for this CreateStack request. Specify this token if you plan to retry requests so that AWS CloudFormation knows that you're not attempting to create a stack with the same name. You might retry CreateStack requests to ensure that AWS CloudFormation successfully received them.

All events triggered by a given stack operation are assigned the same client request token, which you can use to track operations. For example, if you execute a CreateStack operation with the token token1, then all the StackEvents generated by that operation will have ClientRequestToken set as token1.

In the console, stack operations display the client request token on the Events tab. Stack operations that are initiated from the console use the token format Console-StackOperation-ID, which helps you easily identify the stack operation . For example, if you create a stack using the console, each stack event would be assigned the same token in the following format: Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002.

Definition at line 1619 of file CreateStackRequest.h.

◆ SetClientRequestToken() [2/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetClientRequestToken ( const Aws::String value)
inline

A unique identifier for this CreateStack request. Specify this token if you plan to retry requests so that AWS CloudFormation knows that you're not attempting to create a stack with the same name. You might retry CreateStack requests to ensure that AWS CloudFormation successfully received them.

All events triggered by a given stack operation are assigned the same client request token, which you can use to track operations. For example, if you execute a CreateStack operation with the token token1, then all the StackEvents generated by that operation will have ClientRequestToken set as token1.

In the console, stack operations display the client request token on the Events tab. Stack operations that are initiated from the console use the token format Console-StackOperation-ID, which helps you easily identify the stack operation . For example, if you create a stack using the console, each stack event would be assigned the same token in the following format: Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002.

Definition at line 1599 of file CreateStackRequest.h.

◆ SetClientRequestToken() [3/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetClientRequestToken ( const char *  value)
inline

A unique identifier for this CreateStack request. Specify this token if you plan to retry requests so that AWS CloudFormation knows that you're not attempting to create a stack with the same name. You might retry CreateStack requests to ensure that AWS CloudFormation successfully received them.

All events triggered by a given stack operation are assigned the same client request token, which you can use to track operations. For example, if you execute a CreateStack operation with the token token1, then all the StackEvents generated by that operation will have ClientRequestToken set as token1.

In the console, stack operations display the client request token on the Events tab. Stack operations that are initiated from the console use the token format Console-StackOperation-ID, which helps you easily identify the stack operation . For example, if you create a stack using the console, each stack event would be assigned the same token in the following format: Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002.

Definition at line 1639 of file CreateStackRequest.h.

◆ SetDisableRollback()

void Aws::CloudFormation::Model::CreateStackRequest::SetDisableRollback ( bool  value)
inline

Set to true to disable rollback of the stack if stack creation failed. You can specify either DisableRollback or OnFailure, but not both.

Default: false

Definition at line 375 of file CreateStackRequest.h.

◆ SetEnableTerminationProtection()

void Aws::CloudFormation::Model::CreateStackRequest::SetEnableTerminationProtection ( bool  value)
inline

Whether to enable termination protection on 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. Termination protection is disabled on stacks by default.

For nested stacks, termination protection is set on the root stack and cannot be changed directly on the nested stack.

Definition at line 1739 of file CreateStackRequest.h.

◆ SetNotificationARNs() [1/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetNotificationARNs ( Aws::Vector< Aws::String > &&  value)
inline

The Simple Notification Service (SNS) topic ARNs to publish stack related events. You can find your SNS topic ARNs using the SNS console or your Command Line Interface (CLI).

Definition at line 477 of file CreateStackRequest.h.

◆ SetNotificationARNs() [2/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetNotificationARNs ( const Aws::Vector< Aws::String > &  value)
inline

The Simple Notification Service (SNS) topic ARNs to publish stack related events. You can find your SNS topic ARNs using the SNS console or your Command Line Interface (CLI).

Definition at line 470 of file CreateStackRequest.h.

◆ SetOnFailure() [1/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetOnFailure ( const OnFailure value)
inline

Determines what action will be taken if stack creation fails. This must be one of: DO_NOTHING, ROLLBACK, or DELETE. You can specify either OnFailure or DisableRollback, but not both.

Default: ROLLBACK

Definition at line 1319 of file CreateStackRequest.h.

◆ SetOnFailure() [2/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetOnFailure ( OnFailure &&  value)
inline

Determines what action will be taken if stack creation fails. This must be one of: DO_NOTHING, ROLLBACK, or DELETE. You can specify either OnFailure or DisableRollback, but not both.

Default: ROLLBACK

Definition at line 1327 of file CreateStackRequest.h.

◆ SetParameters() [1/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetParameters ( Aws::Vector< Parameter > &&  value)
inline

A list of Parameter structures that specify input parameters for the stack. For more information, see the Parameter data type.

Definition at line 321 of file CreateStackRequest.h.

◆ SetParameters() [2/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetParameters ( const Aws::Vector< Parameter > &  value)
inline

A list of Parameter structures that specify input parameters for the stack. For more information, see the Parameter data type.

Definition at line 313 of file CreateStackRequest.h.

◆ SetResourceTypes() [1/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetResourceTypes ( Aws::Vector< Aws::String > &&  value)
inline

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all AWS resource), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular AWS service), and AWS::service_name::resource_logical_ID (for a specific AWS resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for AWS CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with AWS Identity and Access Management.

Definition at line 1086 of file CreateStackRequest.h.

◆ SetResourceTypes() [2/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetResourceTypes ( const Aws::Vector< Aws::String > &  value)
inline

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all AWS resource), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular AWS service), and AWS::service_name::resource_logical_ID (for a specific AWS resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for AWS CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with AWS Identity and Access Management.

Definition at line 1067 of file CreateStackRequest.h.

◆ SetRoleARN() [1/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetRoleARN ( Aws::String &&  value)
inline

The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

Definition at line 1238 of file CreateStackRequest.h.

◆ SetRoleARN() [2/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetRoleARN ( const Aws::String value)
inline

The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

Definition at line 1224 of file CreateStackRequest.h.

◆ SetRoleARN() [3/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetRoleARN ( const char *  value)
inline

The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

Definition at line 1252 of file CreateStackRequest.h.

◆ SetRollbackConfiguration() [1/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetRollbackConfiguration ( const RollbackConfiguration value)
inline

The rollback triggers for AWS CloudFormation to monitor during stack creation and updating operations, and for the specified monitoring period afterwards.

Definition at line 401 of file CreateStackRequest.h.

◆ SetRollbackConfiguration() [2/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetRollbackConfiguration ( RollbackConfiguration &&  value)
inline

The rollback triggers for AWS CloudFormation to monitor during stack creation and updating operations, and for the specified monitoring period afterwards.

Definition at line 407 of file CreateStackRequest.h.

◆ SetStackName() [1/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetStackName ( Aws::String &&  value)
inline

The name that is associated with the stack. The name must be unique in the Region in which you are creating the stack.

A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.

Definition at line 82 of file CreateStackRequest.h.

◆ SetStackName() [2/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetStackName ( const Aws::String value)
inline

The name that is associated with the stack. The name must be unique in the Region in which you are creating the stack.

A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.

Definition at line 73 of file CreateStackRequest.h.

◆ SetStackName() [3/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetStackName ( const char *  value)
inline

The name that is associated with the stack. The name must be unique in the Region in which you are creating the stack.

A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.

Definition at line 91 of file CreateStackRequest.h.

◆ SetStackPolicyBody() [1/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetStackPolicyBody ( Aws::String &&  value)
inline

Structure containing the stack policy body. For more information, go to Prevent Updates to Stack Resources in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1380 of file CreateStackRequest.h.

◆ SetStackPolicyBody() [2/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetStackPolicyBody ( const Aws::String value)
inline

Structure containing the stack policy body. For more information, go to Prevent Updates to Stack Resources in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1371 of file CreateStackRequest.h.

◆ SetStackPolicyBody() [3/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetStackPolicyBody ( const char *  value)
inline

Structure containing the stack policy body. For more information, go to Prevent Updates to Stack Resources in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1389 of file CreateStackRequest.h.

◆ SetStackPolicyURL() [1/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetStackPolicyURL ( Aws::String &&  value)
inline

Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same Region as the stack. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1449 of file CreateStackRequest.h.

◆ SetStackPolicyURL() [2/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetStackPolicyURL ( const Aws::String value)
inline

Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same Region as the stack. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1441 of file CreateStackRequest.h.

◆ SetStackPolicyURL() [3/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetStackPolicyURL ( const char *  value)
inline

Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same Region as the stack. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1457 of file CreateStackRequest.h.

◆ SetTags() [1/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetTags ( Aws::Vector< Tag > &&  value)
inline

Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.

Definition at line 1510 of file CreateStackRequest.h.

◆ SetTags() [2/2]

void Aws::CloudFormation::Model::CreateStackRequest::SetTags ( const Aws::Vector< Tag > &  value)
inline

Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.

Definition at line 1503 of file CreateStackRequest.h.

◆ SetTemplateBody() [1/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetTemplateBody ( Aws::String &&  value)
inline

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 159 of file CreateStackRequest.h.

◆ SetTemplateBody() [2/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetTemplateBody ( const Aws::String value)
inline

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 149 of file CreateStackRequest.h.

◆ SetTemplateBody() [3/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetTemplateBody ( const char *  value)
inline

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 169 of file CreateStackRequest.h.

◆ SetTemplateURL() [1/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetTemplateURL ( Aws::String &&  value)
inline

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, go to the Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 244 of file CreateStackRequest.h.

◆ SetTemplateURL() [2/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetTemplateURL ( const Aws::String value)
inline

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, go to the Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 233 of file CreateStackRequest.h.

◆ SetTemplateURL() [3/3]

void Aws::CloudFormation::Model::CreateStackRequest::SetTemplateURL ( const char *  value)
inline

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, go to the Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 255 of file CreateStackRequest.h.

◆ SetTimeoutInMinutes()

void Aws::CloudFormation::Model::CreateStackRequest::SetTimeoutInMinutes ( int  value)
inline

The amount of time that can pass before the stack status becomes CREATE_FAILED; if DisableRollback is not set or is set to false, the stack will be rolled back.

Definition at line 441 of file CreateStackRequest.h.

◆ StackNameHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::StackNameHasBeenSet ( ) const
inline

The name that is associated with the stack. The name must be unique in the Region in which you are creating the stack.

A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.

Definition at line 64 of file CreateStackRequest.h.

◆ StackPolicyBodyHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::StackPolicyBodyHasBeenSet ( ) const
inline

Structure containing the stack policy body. For more information, go to Prevent Updates to Stack Resources in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1362 of file CreateStackRequest.h.

◆ StackPolicyURLHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::StackPolicyURLHasBeenSet ( ) const
inline

Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same Region as the stack. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1433 of file CreateStackRequest.h.

◆ TagsHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::TagsHasBeenSet ( ) const
inline

Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.

Definition at line 1496 of file CreateStackRequest.h.

◆ TemplateBodyHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::TemplateBodyHasBeenSet ( ) const
inline

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 139 of file CreateStackRequest.h.

◆ TemplateURLHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::TemplateURLHasBeenSet ( ) const
inline

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, go to the Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 222 of file CreateStackRequest.h.

◆ TimeoutInMinutesHasBeenSet()

bool Aws::CloudFormation::Model::CreateStackRequest::TimeoutInMinutesHasBeenSet ( ) const
inline

The amount of time that can pass before the stack status becomes CREATE_FAILED; if DisableRollback is not set or is set to false, the stack will be rolled back.

Definition at line 434 of file CreateStackRequest.h.

◆ WithCapabilities() [1/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithCapabilities ( Aws::Vector< Capability > &&  value)
inline

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your AWS account; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, AWS CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by AWS CloudFormation.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create the stack directly from the template using this capability.

    You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified.

    For more information, see Using AWS CloudFormation Macros to Perform Custom Processing on Templates.

Definition at line 885 of file CreateStackRequest.h.

◆ WithCapabilities() [2/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithCapabilities ( const Aws::Vector< Capability > &  value)
inline

In some cases, you must explicitly acknowledge that your stack template contains certain capabilities in order for AWS CloudFormation to create the stack.

  • CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some stack templates might include resources that can affect permissions in your AWS account; for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge this by specifying one of these capabilities.

    The following IAM resources require you to specify either the CAPABILITY_IAM or CAPABILITY_NAMED_IAM capability.

    • If you have IAM resources, you can specify either capability.

    • If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

    • If you don't specify either of these capabilities, AWS CloudFormation returns an InsufficientCapabilities error.

    If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

    For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

  • CAPABILITY_AUTO_EXPAND

    Some template contain macros. Macros perform custom processing on templates; this can include simple actions like find-and-replace operations, all the way to extensive transformations of entire templates. Because of this, users typically create a change set from the processed template, so that they can review the changes resulting from the macros before actually creating the stack. If your stack template contains one or more macros, and you choose to create a stack directly from the processed template, without first reviewing the resulting changes in a change set, you must acknowledge this capability. This includes the AWS::Include and AWS::Serverless transforms, which are macros hosted by AWS CloudFormation.

    If you want to create a stack from a stack template that contains macros and nested stacks, you must create the stack directly from the template using this capability.

    You should only create stacks directly from a stack template that contains macros if you know what processing the macro performs.

    Each macro relies on an underlying Lambda service function for processing stack templates. Be aware that the Lambda function owner can update the function operation without AWS CloudFormation being notified.

    For more information, see Using AWS CloudFormation Macros to Perform Custom Processing on Templates.

Definition at line 823 of file CreateStackRequest.h.

◆ WithClientRequestToken() [1/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithClientRequestToken ( Aws::String &&  value)
inline

A unique identifier for this CreateStack request. Specify this token if you plan to retry requests so that AWS CloudFormation knows that you're not attempting to create a stack with the same name. You might retry CreateStack requests to ensure that AWS CloudFormation successfully received them.

All events triggered by a given stack operation are assigned the same client request token, which you can use to track operations. For example, if you execute a CreateStack operation with the token token1, then all the StackEvents generated by that operation will have ClientRequestToken set as token1.

In the console, stack operations display the client request token on the Events tab. Stack operations that are initiated from the console use the token format Console-StackOperation-ID, which helps you easily identify the stack operation . For example, if you create a stack using the console, each stack event would be assigned the same token in the following format: Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002.

Definition at line 1679 of file CreateStackRequest.h.

◆ WithClientRequestToken() [2/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithClientRequestToken ( const Aws::String value)
inline

A unique identifier for this CreateStack request. Specify this token if you plan to retry requests so that AWS CloudFormation knows that you're not attempting to create a stack with the same name. You might retry CreateStack requests to ensure that AWS CloudFormation successfully received them.

All events triggered by a given stack operation are assigned the same client request token, which you can use to track operations. For example, if you execute a CreateStack operation with the token token1, then all the StackEvents generated by that operation will have ClientRequestToken set as token1.

In the console, stack operations display the client request token on the Events tab. Stack operations that are initiated from the console use the token format Console-StackOperation-ID, which helps you easily identify the stack operation . For example, if you create a stack using the console, each stack event would be assigned the same token in the following format: Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002.

Definition at line 1659 of file CreateStackRequest.h.

◆ WithClientRequestToken() [3/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithClientRequestToken ( const char *  value)
inline

A unique identifier for this CreateStack request. Specify this token if you plan to retry requests so that AWS CloudFormation knows that you're not attempting to create a stack with the same name. You might retry CreateStack requests to ensure that AWS CloudFormation successfully received them.

All events triggered by a given stack operation are assigned the same client request token, which you can use to track operations. For example, if you execute a CreateStack operation with the token token1, then all the StackEvents generated by that operation will have ClientRequestToken set as token1.

In the console, stack operations display the client request token on the Events tab. Stack operations that are initiated from the console use the token format Console-StackOperation-ID, which helps you easily identify the stack operation . For example, if you create a stack using the console, each stack event would be assigned the same token in the following format: Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002.

Definition at line 1699 of file CreateStackRequest.h.

◆ WithDisableRollback()

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithDisableRollback ( bool  value)
inline

Set to true to disable rollback of the stack if stack creation failed. You can specify either DisableRollback or OnFailure, but not both.

Default: false

Definition at line 382 of file CreateStackRequest.h.

◆ WithEnableTerminationProtection()

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithEnableTerminationProtection ( bool  value)
inline

Whether to enable termination protection on 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. Termination protection is disabled on stacks by default.

For nested stacks, termination protection is set on the root stack and cannot be changed directly on the nested stack.

Definition at line 1752 of file CreateStackRequest.h.

◆ WithNotificationARNs() [1/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithNotificationARNs ( Aws::Vector< Aws::String > &&  value)
inline

The Simple Notification Service (SNS) topic ARNs to publish stack related events. You can find your SNS topic ARNs using the SNS console or your Command Line Interface (CLI).

Definition at line 491 of file CreateStackRequest.h.

◆ WithNotificationARNs() [2/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithNotificationARNs ( const Aws::Vector< Aws::String > &  value)
inline

The Simple Notification Service (SNS) topic ARNs to publish stack related events. You can find your SNS topic ARNs using the SNS console or your Command Line Interface (CLI).

Definition at line 484 of file CreateStackRequest.h.

◆ WithOnFailure() [1/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithOnFailure ( const OnFailure value)
inline

Determines what action will be taken if stack creation fails. This must be one of: DO_NOTHING, ROLLBACK, or DELETE. You can specify either OnFailure or DisableRollback, but not both.

Default: ROLLBACK

Definition at line 1335 of file CreateStackRequest.h.

◆ WithOnFailure() [2/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithOnFailure ( OnFailure &&  value)
inline

Determines what action will be taken if stack creation fails. This must be one of: DO_NOTHING, ROLLBACK, or DELETE. You can specify either OnFailure or DisableRollback, but not both.

Default: ROLLBACK

Definition at line 1343 of file CreateStackRequest.h.

◆ WithParameters() [1/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithParameters ( Aws::Vector< Parameter > &&  value)
inline

A list of Parameter structures that specify input parameters for the stack. For more information, see the Parameter data type.

Definition at line 337 of file CreateStackRequest.h.

◆ WithParameters() [2/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithParameters ( const Aws::Vector< Parameter > &  value)
inline

A list of Parameter structures that specify input parameters for the stack. For more information, see the Parameter data type.

Definition at line 329 of file CreateStackRequest.h.

◆ WithResourceTypes() [1/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithResourceTypes ( Aws::Vector< Aws::String > &&  value)
inline

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all AWS resource), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular AWS service), and AWS::service_name::resource_logical_ID (for a specific AWS resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for AWS CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with AWS Identity and Access Management.

Definition at line 1124 of file CreateStackRequest.h.

◆ WithResourceTypes() [2/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithResourceTypes ( const Aws::Vector< Aws::String > &  value)
inline

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all AWS resource), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular AWS service), and AWS::service_name::resource_logical_ID (for a specific AWS resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for AWS CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with AWS Identity and Access Management.

Definition at line 1105 of file CreateStackRequest.h.

◆ WithRoleARN() [1/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithRoleARN ( Aws::String &&  value)
inline

The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

Definition at line 1280 of file CreateStackRequest.h.

◆ WithRoleARN() [2/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithRoleARN ( const Aws::String value)
inline

The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

Definition at line 1266 of file CreateStackRequest.h.

◆ WithRoleARN() [3/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithRoleARN ( const char *  value)
inline

The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

Definition at line 1294 of file CreateStackRequest.h.

◆ WithRollbackConfiguration() [1/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithRollbackConfiguration ( const RollbackConfiguration value)
inline

The rollback triggers for AWS CloudFormation to monitor during stack creation and updating operations, and for the specified monitoring period afterwards.

Definition at line 413 of file CreateStackRequest.h.

◆ WithRollbackConfiguration() [2/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithRollbackConfiguration ( RollbackConfiguration &&  value)
inline

The rollback triggers for AWS CloudFormation to monitor during stack creation and updating operations, and for the specified monitoring period afterwards.

Definition at line 419 of file CreateStackRequest.h.

◆ WithStackName() [1/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithStackName ( Aws::String &&  value)
inline

The name that is associated with the stack. The name must be unique in the Region in which you are creating the stack.

A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.

Definition at line 109 of file CreateStackRequest.h.

◆ WithStackName() [2/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithStackName ( const Aws::String value)
inline

The name that is associated with the stack. The name must be unique in the Region in which you are creating the stack.

A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.

Definition at line 100 of file CreateStackRequest.h.

◆ WithStackName() [3/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithStackName ( const char *  value)
inline

The name that is associated with the stack. The name must be unique in the Region in which you are creating the stack.

A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.

Definition at line 118 of file CreateStackRequest.h.

◆ WithStackPolicyBody() [1/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithStackPolicyBody ( Aws::String &&  value)
inline

Structure containing the stack policy body. For more information, go to Prevent Updates to Stack Resources in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1407 of file CreateStackRequest.h.

◆ WithStackPolicyBody() [2/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithStackPolicyBody ( const Aws::String value)
inline

Structure containing the stack policy body. For more information, go to Prevent Updates to Stack Resources in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1398 of file CreateStackRequest.h.

◆ WithStackPolicyBody() [3/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithStackPolicyBody ( const char *  value)
inline

Structure containing the stack policy body. For more information, go to Prevent Updates to Stack Resources in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1416 of file CreateStackRequest.h.

◆ WithStackPolicyURL() [1/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithStackPolicyURL ( Aws::String &&  value)
inline

Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same Region as the stack. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1473 of file CreateStackRequest.h.

◆ WithStackPolicyURL() [2/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithStackPolicyURL ( const Aws::String value)
inline

Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same Region as the stack. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1465 of file CreateStackRequest.h.

◆ WithStackPolicyURL() [3/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithStackPolicyURL ( const char *  value)
inline

Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same Region as the stack. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

Definition at line 1481 of file CreateStackRequest.h.

◆ WithTags() [1/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithTags ( Aws::Vector< Tag > &&  value)
inline

Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.

Definition at line 1524 of file CreateStackRequest.h.

◆ WithTags() [2/2]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithTags ( const Aws::Vector< Tag > &  value)
inline

Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.

Definition at line 1517 of file CreateStackRequest.h.

◆ WithTemplateBody() [1/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithTemplateBody ( Aws::String &&  value)
inline

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 189 of file CreateStackRequest.h.

◆ WithTemplateBody() [2/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithTemplateBody ( const Aws::String value)
inline

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 179 of file CreateStackRequest.h.

◆ WithTemplateBody() [3/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithTemplateBody ( const char *  value)
inline

Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 199 of file CreateStackRequest.h.

◆ WithTemplateURL() [1/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithTemplateURL ( Aws::String &&  value)
inline

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, go to the Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 277 of file CreateStackRequest.h.

◆ WithTemplateURL() [2/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithTemplateURL ( const Aws::String value)
inline

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, go to the Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 266 of file CreateStackRequest.h.

◆ WithTemplateURL() [3/3]

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithTemplateURL ( const char *  value)
inline

Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, go to the Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

Definition at line 288 of file CreateStackRequest.h.

◆ WithTimeoutInMinutes()

CreateStackRequest& Aws::CloudFormation::Model::CreateStackRequest::WithTimeoutInMinutes ( int  value)
inline

The amount of time that can pass before the stack status becomes CREATE_FAILED; if DisableRollback is not set or is set to false, the stack will be rolled back.

Definition at line 448 of file CreateStackRequest.h.


The documentation for this class was generated from the following file: