/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace CloudFormation { namespace Model { /** */ class UpdateStackSetRequest : public CloudFormationRequest { public: AWS_CLOUDFORMATION_API UpdateStackSetRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "UpdateStackSet"; } AWS_CLOUDFORMATION_API Aws::String SerializePayload() const override; protected: AWS_CLOUDFORMATION_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override; public: /** *

The name or unique ID of the stack set that you want to update.

*/ inline const Aws::String& GetStackSetName() const{ return m_stackSetName; } /** *

The name or unique ID of the stack set that you want to update.

*/ inline bool StackSetNameHasBeenSet() const { return m_stackSetNameHasBeenSet; } /** *

The name or unique ID of the stack set that you want to update.

*/ inline void SetStackSetName(const Aws::String& value) { m_stackSetNameHasBeenSet = true; m_stackSetName = value; } /** *

The name or unique ID of the stack set that you want to update.

*/ inline void SetStackSetName(Aws::String&& value) { m_stackSetNameHasBeenSet = true; m_stackSetName = std::move(value); } /** *

The name or unique ID of the stack set that you want to update.

*/ inline void SetStackSetName(const char* value) { m_stackSetNameHasBeenSet = true; m_stackSetName.assign(value); } /** *

The name or unique ID of the stack set that you want to update.

*/ inline UpdateStackSetRequest& WithStackSetName(const Aws::String& value) { SetStackSetName(value); return *this;} /** *

The name or unique ID of the stack set that you want to update.

*/ inline UpdateStackSetRequest& WithStackSetName(Aws::String&& value) { SetStackSetName(std::move(value)); return *this;} /** *

The name or unique ID of the stack set that you want to update.

*/ inline UpdateStackSetRequest& WithStackSetName(const char* value) { SetStackSetName(value); return *this;} /** *

A brief description of updates that you are making.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

A brief description of updates that you are making.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

A brief description of updates that you are making.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

A brief description of updates that you are making.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

A brief description of updates that you are making.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

A brief description of updates that you are making.

*/ inline UpdateStackSetRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

A brief description of updates that you are making.

*/ inline UpdateStackSetRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

A brief description of updates that you are making.

*/ inline UpdateStackSetRequest& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

The structure that contains the template body, with a minimum length of 1 * byte and a maximum length of 51,200 bytes. For more information, see Template * Anatomy in the CloudFormation User Guide.

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline const Aws::String& GetTemplateBody() const{ return m_templateBody; } /** *

The structure that contains the template body, with a minimum length of 1 * byte and a maximum length of 51,200 bytes. For more information, see Template * Anatomy in the CloudFormation User Guide.

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline bool TemplateBodyHasBeenSet() const { return m_templateBodyHasBeenSet; } /** *

The structure that contains the template body, with a minimum length of 1 * byte and a maximum length of 51,200 bytes. For more information, see Template * Anatomy in the CloudFormation User Guide.

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline void SetTemplateBody(const Aws::String& value) { m_templateBodyHasBeenSet = true; m_templateBody = value; } /** *

The structure that contains the template body, with a minimum length of 1 * byte and a maximum length of 51,200 bytes. For more information, see Template * Anatomy in the CloudFormation User Guide.

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline void SetTemplateBody(Aws::String&& value) { m_templateBodyHasBeenSet = true; m_templateBody = std::move(value); } /** *

The structure that contains the template body, with a minimum length of 1 * byte and a maximum length of 51,200 bytes. For more information, see Template * Anatomy in the CloudFormation User Guide.

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline void SetTemplateBody(const char* value) { m_templateBodyHasBeenSet = true; m_templateBody.assign(value); } /** *

The structure that contains the template body, with a minimum length of 1 * byte and a maximum length of 51,200 bytes. For more information, see Template * Anatomy in the CloudFormation User Guide.

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline UpdateStackSetRequest& WithTemplateBody(const Aws::String& value) { SetTemplateBody(value); return *this;} /** *

The structure that contains the template body, with a minimum length of 1 * byte and a maximum length of 51,200 bytes. For more information, see Template * Anatomy in the CloudFormation User Guide.

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline UpdateStackSetRequest& WithTemplateBody(Aws::String&& value) { SetTemplateBody(std::move(value)); return *this;} /** *

The structure that contains the template body, with a minimum length of 1 * byte and a maximum length of 51,200 bytes. For more information, see Template * Anatomy in the CloudFormation User Guide.

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline UpdateStackSetRequest& WithTemplateBody(const char* value) { SetTemplateBody(value); return *this;} /** *

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

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline const Aws::String& GetTemplateURL() const{ return m_templateURL; } /** *

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

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline bool TemplateURLHasBeenSet() const { return m_templateURLHasBeenSet; } /** *

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

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline void SetTemplateURL(const Aws::String& value) { m_templateURLHasBeenSet = true; m_templateURL = value; } /** *

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

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline void SetTemplateURL(Aws::String&& value) { m_templateURLHasBeenSet = true; m_templateURL = std::move(value); } /** *

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

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline void SetTemplateURL(const char* value) { m_templateURLHasBeenSet = true; m_templateURL.assign(value); } /** *

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

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline UpdateStackSetRequest& WithTemplateURL(const Aws::String& value) { SetTemplateURL(value); return *this;} /** *

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

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline UpdateStackSetRequest& WithTemplateURL(Aws::String&& value) { SetTemplateURL(std::move(value)); return *this;} /** *

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

Conditional: You must * specify only one of the following parameters: TemplateBody or * TemplateURL—or set UsePreviousTemplate to true.

*/ inline UpdateStackSetRequest& WithTemplateURL(const char* value) { SetTemplateURL(value); return *this;} /** *

Use the existing template that's associated with the stack set that you're * updating.

Conditional: You must specify only one of the following * parameters: TemplateBody or TemplateURL—or set * UsePreviousTemplate to true.

*/ inline bool GetUsePreviousTemplate() const{ return m_usePreviousTemplate; } /** *

Use the existing template that's associated with the stack set that you're * updating.

Conditional: You must specify only one of the following * parameters: TemplateBody or TemplateURL—or set * UsePreviousTemplate to true.

*/ inline bool UsePreviousTemplateHasBeenSet() const { return m_usePreviousTemplateHasBeenSet; } /** *

Use the existing template that's associated with the stack set that you're * updating.

Conditional: You must specify only one of the following * parameters: TemplateBody or TemplateURL—or set * UsePreviousTemplate to true.

*/ inline void SetUsePreviousTemplate(bool value) { m_usePreviousTemplateHasBeenSet = true; m_usePreviousTemplate = value; } /** *

Use the existing template that's associated with the stack set that you're * updating.

Conditional: You must specify only one of the following * parameters: TemplateBody or TemplateURL—or set * UsePreviousTemplate to true.

*/ inline UpdateStackSetRequest& WithUsePreviousTemplate(bool value) { SetUsePreviousTemplate(value); return *this;} /** *

A list of input parameters for the stack set template.

*/ inline const Aws::Vector& GetParameters() const{ return m_parameters; } /** *

A list of input parameters for the stack set template.

*/ inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; } /** *

A list of input parameters for the stack set template.

*/ inline void SetParameters(const Aws::Vector& value) { m_parametersHasBeenSet = true; m_parameters = value; } /** *

A list of input parameters for the stack set template.

*/ inline void SetParameters(Aws::Vector&& value) { m_parametersHasBeenSet = true; m_parameters = std::move(value); } /** *

A list of input parameters for the stack set template.

*/ inline UpdateStackSetRequest& WithParameters(const Aws::Vector& value) { SetParameters(value); return *this;} /** *

A list of input parameters for the stack set template.

*/ inline UpdateStackSetRequest& WithParameters(Aws::Vector&& value) { SetParameters(std::move(value)); return *this;} /** *

A list of input parameters for the stack set template.

*/ inline UpdateStackSetRequest& AddParameters(const Parameter& value) { m_parametersHasBeenSet = true; m_parameters.push_back(value); return *this; } /** *

A list of input parameters for the stack set template.

*/ inline UpdateStackSetRequest& AddParameters(Parameter&& value) { m_parametersHasBeenSet = true; m_parameters.push_back(std::move(value)); return *this; } /** *

In some cases, you must explicitly acknowledge that your stack template * contains certain capabilities in order for CloudFormation to update the stack * set and its associated stack instances.

  • * CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some * stack templates might include resources that can affect permissions in your * Amazon Web Services account; for example, by creating new Identity and Access * Management (IAM) users. For those stacks sets, 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, 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 CloudFormation Templates.

  • * CAPABILITY_AUTO_EXPAND

    Some templates reference macros. If * your stack set template references one or more macros, you must update the stack * set directly from the processed template, without first reviewing the resulting * changes in a change set. To update the stack set directly, you must acknowledge * this capability. For more information, see Using * CloudFormation Macros to Perform Custom Processing on Templates.

    *

    Stack sets with service-managed permissions do not currently * support the use of macros in templates. (This includes the AWS::Include * and AWS::Serverless * transforms, which are macros hosted by CloudFormation.) Even if you specify this * capability for a stack set with service-managed permissions, if you reference a * macro in your template the stack set operation will fail.

  • *
*/ inline const Aws::Vector& GetCapabilities() const{ return m_capabilities; } /** *

In some cases, you must explicitly acknowledge that your stack template * contains certain capabilities in order for CloudFormation to update the stack * set and its associated stack instances.

  • * CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some * stack templates might include resources that can affect permissions in your * Amazon Web Services account; for example, by creating new Identity and Access * Management (IAM) users. For those stacks sets, 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, 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 CloudFormation Templates.

  • * CAPABILITY_AUTO_EXPAND

    Some templates reference macros. If * your stack set template references one or more macros, you must update the stack * set directly from the processed template, without first reviewing the resulting * changes in a change set. To update the stack set directly, you must acknowledge * this capability. For more information, see Using * CloudFormation Macros to Perform Custom Processing on Templates.

    *

    Stack sets with service-managed permissions do not currently * support the use of macros in templates. (This includes the AWS::Include * and AWS::Serverless * transforms, which are macros hosted by CloudFormation.) Even if you specify this * capability for a stack set with service-managed permissions, if you reference a * macro in your template the stack set operation will fail.

  • *
*/ inline bool CapabilitiesHasBeenSet() const { return m_capabilitiesHasBeenSet; } /** *

In some cases, you must explicitly acknowledge that your stack template * contains certain capabilities in order for CloudFormation to update the stack * set and its associated stack instances.

  • * CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some * stack templates might include resources that can affect permissions in your * Amazon Web Services account; for example, by creating new Identity and Access * Management (IAM) users. For those stacks sets, 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, 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 CloudFormation Templates.

  • * CAPABILITY_AUTO_EXPAND

    Some templates reference macros. If * your stack set template references one or more macros, you must update the stack * set directly from the processed template, without first reviewing the resulting * changes in a change set. To update the stack set directly, you must acknowledge * this capability. For more information, see Using * CloudFormation Macros to Perform Custom Processing on Templates.

    *

    Stack sets with service-managed permissions do not currently * support the use of macros in templates. (This includes the AWS::Include * and AWS::Serverless * transforms, which are macros hosted by CloudFormation.) Even if you specify this * capability for a stack set with service-managed permissions, if you reference a * macro in your template the stack set operation will fail.

  • *
*/ inline void SetCapabilities(const Aws::Vector& value) { m_capabilitiesHasBeenSet = true; m_capabilities = value; } /** *

In some cases, you must explicitly acknowledge that your stack template * contains certain capabilities in order for CloudFormation to update the stack * set and its associated stack instances.

  • * CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some * stack templates might include resources that can affect permissions in your * Amazon Web Services account; for example, by creating new Identity and Access * Management (IAM) users. For those stacks sets, 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, 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 CloudFormation Templates.

  • * CAPABILITY_AUTO_EXPAND

    Some templates reference macros. If * your stack set template references one or more macros, you must update the stack * set directly from the processed template, without first reviewing the resulting * changes in a change set. To update the stack set directly, you must acknowledge * this capability. For more information, see Using * CloudFormation Macros to Perform Custom Processing on Templates.

    *

    Stack sets with service-managed permissions do not currently * support the use of macros in templates. (This includes the AWS::Include * and AWS::Serverless * transforms, which are macros hosted by CloudFormation.) Even if you specify this * capability for a stack set with service-managed permissions, if you reference a * macro in your template the stack set operation will fail.

  • *
*/ inline void SetCapabilities(Aws::Vector&& value) { m_capabilitiesHasBeenSet = true; m_capabilities = std::move(value); } /** *

In some cases, you must explicitly acknowledge that your stack template * contains certain capabilities in order for CloudFormation to update the stack * set and its associated stack instances.

  • * CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some * stack templates might include resources that can affect permissions in your * Amazon Web Services account; for example, by creating new Identity and Access * Management (IAM) users. For those stacks sets, 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, 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 CloudFormation Templates.

  • * CAPABILITY_AUTO_EXPAND

    Some templates reference macros. If * your stack set template references one or more macros, you must update the stack * set directly from the processed template, without first reviewing the resulting * changes in a change set. To update the stack set directly, you must acknowledge * this capability. For more information, see Using * CloudFormation Macros to Perform Custom Processing on Templates.

    *

    Stack sets with service-managed permissions do not currently * support the use of macros in templates. (This includes the AWS::Include * and AWS::Serverless * transforms, which are macros hosted by CloudFormation.) Even if you specify this * capability for a stack set with service-managed permissions, if you reference a * macro in your template the stack set operation will fail.

  • *
*/ inline UpdateStackSetRequest& WithCapabilities(const Aws::Vector& value) { SetCapabilities(value); return *this;} /** *

In some cases, you must explicitly acknowledge that your stack template * contains certain capabilities in order for CloudFormation to update the stack * set and its associated stack instances.

  • * CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some * stack templates might include resources that can affect permissions in your * Amazon Web Services account; for example, by creating new Identity and Access * Management (IAM) users. For those stacks sets, 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, 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 CloudFormation Templates.

  • * CAPABILITY_AUTO_EXPAND

    Some templates reference macros. If * your stack set template references one or more macros, you must update the stack * set directly from the processed template, without first reviewing the resulting * changes in a change set. To update the stack set directly, you must acknowledge * this capability. For more information, see Using * CloudFormation Macros to Perform Custom Processing on Templates.

    *

    Stack sets with service-managed permissions do not currently * support the use of macros in templates. (This includes the AWS::Include * and AWS::Serverless * transforms, which are macros hosted by CloudFormation.) Even if you specify this * capability for a stack set with service-managed permissions, if you reference a * macro in your template the stack set operation will fail.

  • *
*/ inline UpdateStackSetRequest& WithCapabilities(Aws::Vector&& value) { SetCapabilities(std::move(value)); return *this;} /** *

In some cases, you must explicitly acknowledge that your stack template * contains certain capabilities in order for CloudFormation to update the stack * set and its associated stack instances.

  • * CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some * stack templates might include resources that can affect permissions in your * Amazon Web Services account; for example, by creating new Identity and Access * Management (IAM) users. For those stacks sets, 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, 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 CloudFormation Templates.

  • * CAPABILITY_AUTO_EXPAND

    Some templates reference macros. If * your stack set template references one or more macros, you must update the stack * set directly from the processed template, without first reviewing the resulting * changes in a change set. To update the stack set directly, you must acknowledge * this capability. For more information, see Using * CloudFormation Macros to Perform Custom Processing on Templates.

    *

    Stack sets with service-managed permissions do not currently * support the use of macros in templates. (This includes the AWS::Include * and AWS::Serverless * transforms, which are macros hosted by CloudFormation.) Even if you specify this * capability for a stack set with service-managed permissions, if you reference a * macro in your template the stack set operation will fail.

  • *
*/ inline UpdateStackSetRequest& AddCapabilities(const Capability& value) { m_capabilitiesHasBeenSet = true; m_capabilities.push_back(value); return *this; } /** *

In some cases, you must explicitly acknowledge that your stack template * contains certain capabilities in order for CloudFormation to update the stack * set and its associated stack instances.

  • * CAPABILITY_IAM and CAPABILITY_NAMED_IAM

    Some * stack templates might include resources that can affect permissions in your * Amazon Web Services account; for example, by creating new Identity and Access * Management (IAM) users. For those stacks sets, 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, 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 CloudFormation Templates.

  • * CAPABILITY_AUTO_EXPAND

    Some templates reference macros. If * your stack set template references one or more macros, you must update the stack * set directly from the processed template, without first reviewing the resulting * changes in a change set. To update the stack set directly, you must acknowledge * this capability. For more information, see Using * CloudFormation Macros to Perform Custom Processing on Templates.

    *

    Stack sets with service-managed permissions do not currently * support the use of macros in templates. (This includes the AWS::Include * and AWS::Serverless * transforms, which are macros hosted by CloudFormation.) Even if you specify this * capability for a stack set with service-managed permissions, if you reference a * macro in your template the stack set operation will fail.

  • *
*/ inline UpdateStackSetRequest& AddCapabilities(Capability&& value) { m_capabilitiesHasBeenSet = true; m_capabilities.push_back(std::move(value)); return *this; } /** *

The key-value pairs to associate with this stack set and the stacks created * from it. CloudFormation also propagates these tags to supported resources that * are created in the stacks. You can specify a maximum number of 50 tags.

*

If you specify tags for this parameter, those tags replace any list of tags * that are currently associated with this stack set. This means:

  • *

    If you don't specify this parameter, CloudFormation doesn't modify the * stack's tags.

  • If you specify any tags using this * parameter, you must specify all the tags that you want associated with * this stack set, even tags you've specified before (for example, when creating * the stack set or during a previous update of the stack set.). Any tags that you * don't include in the updated list of tags are removed from the stack set, and * therefore from the stacks and resources as well.

  • If you * specify an empty value, CloudFormation removes all currently associated * tags.

If you specify new tags as part of an * UpdateStackSet action, CloudFormation checks to see if you have the * required IAM permission to tag resources. If you omit tags that are currently * associated with the stack set from the list of tags you specify, CloudFormation * assumes that you want to remove those tags from the stack set, and checks to see * if you have permission to untag resources. If you don't have the necessary * permission(s), the entire UpdateStackSet action fails with an * access denied error, and the stack set is not updated.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

The key-value pairs to associate with this stack set and the stacks created * from it. CloudFormation also propagates these tags to supported resources that * are created in the stacks. You can specify a maximum number of 50 tags.

*

If you specify tags for this parameter, those tags replace any list of tags * that are currently associated with this stack set. This means:

  • *

    If you don't specify this parameter, CloudFormation doesn't modify the * stack's tags.

  • If you specify any tags using this * parameter, you must specify all the tags that you want associated with * this stack set, even tags you've specified before (for example, when creating * the stack set or during a previous update of the stack set.). Any tags that you * don't include in the updated list of tags are removed from the stack set, and * therefore from the stacks and resources as well.

  • If you * specify an empty value, CloudFormation removes all currently associated * tags.

If you specify new tags as part of an * UpdateStackSet action, CloudFormation checks to see if you have the * required IAM permission to tag resources. If you omit tags that are currently * associated with the stack set from the list of tags you specify, CloudFormation * assumes that you want to remove those tags from the stack set, and checks to see * if you have permission to untag resources. If you don't have the necessary * permission(s), the entire UpdateStackSet action fails with an * access denied error, and the stack set is not updated.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

The key-value pairs to associate with this stack set and the stacks created * from it. CloudFormation also propagates these tags to supported resources that * are created in the stacks. You can specify a maximum number of 50 tags.

*

If you specify tags for this parameter, those tags replace any list of tags * that are currently associated with this stack set. This means:

  • *

    If you don't specify this parameter, CloudFormation doesn't modify the * stack's tags.

  • If you specify any tags using this * parameter, you must specify all the tags that you want associated with * this stack set, even tags you've specified before (for example, when creating * the stack set or during a previous update of the stack set.). Any tags that you * don't include in the updated list of tags are removed from the stack set, and * therefore from the stacks and resources as well.

  • If you * specify an empty value, CloudFormation removes all currently associated * tags.

If you specify new tags as part of an * UpdateStackSet action, CloudFormation checks to see if you have the * required IAM permission to tag resources. If you omit tags that are currently * associated with the stack set from the list of tags you specify, CloudFormation * assumes that you want to remove those tags from the stack set, and checks to see * if you have permission to untag resources. If you don't have the necessary * permission(s), the entire UpdateStackSet action fails with an * access denied error, and the stack set is not updated.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

The key-value pairs to associate with this stack set and the stacks created * from it. CloudFormation also propagates these tags to supported resources that * are created in the stacks. You can specify a maximum number of 50 tags.

*

If you specify tags for this parameter, those tags replace any list of tags * that are currently associated with this stack set. This means:

  • *

    If you don't specify this parameter, CloudFormation doesn't modify the * stack's tags.

  • If you specify any tags using this * parameter, you must specify all the tags that you want associated with * this stack set, even tags you've specified before (for example, when creating * the stack set or during a previous update of the stack set.). Any tags that you * don't include in the updated list of tags are removed from the stack set, and * therefore from the stacks and resources as well.

  • If you * specify an empty value, CloudFormation removes all currently associated * tags.

If you specify new tags as part of an * UpdateStackSet action, CloudFormation checks to see if you have the * required IAM permission to tag resources. If you omit tags that are currently * associated with the stack set from the list of tags you specify, CloudFormation * assumes that you want to remove those tags from the stack set, and checks to see * if you have permission to untag resources. If you don't have the necessary * permission(s), the entire UpdateStackSet action fails with an * access denied error, and the stack set is not updated.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

The key-value pairs to associate with this stack set and the stacks created * from it. CloudFormation also propagates these tags to supported resources that * are created in the stacks. You can specify a maximum number of 50 tags.

*

If you specify tags for this parameter, those tags replace any list of tags * that are currently associated with this stack set. This means:

  • *

    If you don't specify this parameter, CloudFormation doesn't modify the * stack's tags.

  • If you specify any tags using this * parameter, you must specify all the tags that you want associated with * this stack set, even tags you've specified before (for example, when creating * the stack set or during a previous update of the stack set.). Any tags that you * don't include in the updated list of tags are removed from the stack set, and * therefore from the stacks and resources as well.

  • If you * specify an empty value, CloudFormation removes all currently associated * tags.

If you specify new tags as part of an * UpdateStackSet action, CloudFormation checks to see if you have the * required IAM permission to tag resources. If you omit tags that are currently * associated with the stack set from the list of tags you specify, CloudFormation * assumes that you want to remove those tags from the stack set, and checks to see * if you have permission to untag resources. If you don't have the necessary * permission(s), the entire UpdateStackSet action fails with an * access denied error, and the stack set is not updated.

*/ inline UpdateStackSetRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

The key-value pairs to associate with this stack set and the stacks created * from it. CloudFormation also propagates these tags to supported resources that * are created in the stacks. You can specify a maximum number of 50 tags.

*

If you specify tags for this parameter, those tags replace any list of tags * that are currently associated with this stack set. This means:

  • *

    If you don't specify this parameter, CloudFormation doesn't modify the * stack's tags.

  • If you specify any tags using this * parameter, you must specify all the tags that you want associated with * this stack set, even tags you've specified before (for example, when creating * the stack set or during a previous update of the stack set.). Any tags that you * don't include in the updated list of tags are removed from the stack set, and * therefore from the stacks and resources as well.

  • If you * specify an empty value, CloudFormation removes all currently associated * tags.

If you specify new tags as part of an * UpdateStackSet action, CloudFormation checks to see if you have the * required IAM permission to tag resources. If you omit tags that are currently * associated with the stack set from the list of tags you specify, CloudFormation * assumes that you want to remove those tags from the stack set, and checks to see * if you have permission to untag resources. If you don't have the necessary * permission(s), the entire UpdateStackSet action fails with an * access denied error, and the stack set is not updated.

*/ inline UpdateStackSetRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

The key-value pairs to associate with this stack set and the stacks created * from it. CloudFormation also propagates these tags to supported resources that * are created in the stacks. You can specify a maximum number of 50 tags.

*

If you specify tags for this parameter, those tags replace any list of tags * that are currently associated with this stack set. This means:

  • *

    If you don't specify this parameter, CloudFormation doesn't modify the * stack's tags.

  • If you specify any tags using this * parameter, you must specify all the tags that you want associated with * this stack set, even tags you've specified before (for example, when creating * the stack set or during a previous update of the stack set.). Any tags that you * don't include in the updated list of tags are removed from the stack set, and * therefore from the stacks and resources as well.

  • If you * specify an empty value, CloudFormation removes all currently associated * tags.

If you specify new tags as part of an * UpdateStackSet action, CloudFormation checks to see if you have the * required IAM permission to tag resources. If you omit tags that are currently * associated with the stack set from the list of tags you specify, CloudFormation * assumes that you want to remove those tags from the stack set, and checks to see * if you have permission to untag resources. If you don't have the necessary * permission(s), the entire UpdateStackSet action fails with an * access denied error, and the stack set is not updated.

*/ inline UpdateStackSetRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

The key-value pairs to associate with this stack set and the stacks created * from it. CloudFormation also propagates these tags to supported resources that * are created in the stacks. You can specify a maximum number of 50 tags.

*

If you specify tags for this parameter, those tags replace any list of tags * that are currently associated with this stack set. This means:

  • *

    If you don't specify this parameter, CloudFormation doesn't modify the * stack's tags.

  • If you specify any tags using this * parameter, you must specify all the tags that you want associated with * this stack set, even tags you've specified before (for example, when creating * the stack set or during a previous update of the stack set.). Any tags that you * don't include in the updated list of tags are removed from the stack set, and * therefore from the stacks and resources as well.

  • If you * specify an empty value, CloudFormation removes all currently associated * tags.

If you specify new tags as part of an * UpdateStackSet action, CloudFormation checks to see if you have the * required IAM permission to tag resources. If you omit tags that are currently * associated with the stack set from the list of tags you specify, CloudFormation * assumes that you want to remove those tags from the stack set, and checks to see * if you have permission to untag resources. If you don't have the necessary * permission(s), the entire UpdateStackSet action fails with an * access denied error, and the stack set is not updated.

*/ inline UpdateStackSetRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

Preferences for how CloudFormation performs this stack set operation.

*/ inline const StackSetOperationPreferences& GetOperationPreferences() const{ return m_operationPreferences; } /** *

Preferences for how CloudFormation performs this stack set operation.

*/ inline bool OperationPreferencesHasBeenSet() const { return m_operationPreferencesHasBeenSet; } /** *

Preferences for how CloudFormation performs this stack set operation.

*/ inline void SetOperationPreferences(const StackSetOperationPreferences& value) { m_operationPreferencesHasBeenSet = true; m_operationPreferences = value; } /** *

Preferences for how CloudFormation performs this stack set operation.

*/ inline void SetOperationPreferences(StackSetOperationPreferences&& value) { m_operationPreferencesHasBeenSet = true; m_operationPreferences = std::move(value); } /** *

Preferences for how CloudFormation performs this stack set operation.

*/ inline UpdateStackSetRequest& WithOperationPreferences(const StackSetOperationPreferences& value) { SetOperationPreferences(value); return *this;} /** *

Preferences for how CloudFormation performs this stack set operation.

*/ inline UpdateStackSetRequest& WithOperationPreferences(StackSetOperationPreferences&& value) { SetOperationPreferences(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role to use to update this stack * set.

Specify an IAM role only if you are using customized administrator * roles to control which users or groups can manage specific stack sets within the * same administrator account. For more information, see Granting * Permissions for Stack Set Operations in the CloudFormation User * Guide.

If you specified a customized administrator role when you * created the stack set, you must specify a customized administrator role, even if * it is the same customized administrator role used with this stack set * previously.

*/ inline const Aws::String& GetAdministrationRoleARN() const{ return m_administrationRoleARN; } /** *

The Amazon Resource Name (ARN) of the IAM role to use to update this stack * set.

Specify an IAM role only if you are using customized administrator * roles to control which users or groups can manage specific stack sets within the * same administrator account. For more information, see Granting * Permissions for Stack Set Operations in the CloudFormation User * Guide.

If you specified a customized administrator role when you * created the stack set, you must specify a customized administrator role, even if * it is the same customized administrator role used with this stack set * previously.

*/ inline bool AdministrationRoleARNHasBeenSet() const { return m_administrationRoleARNHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the IAM role to use to update this stack * set.

Specify an IAM role only if you are using customized administrator * roles to control which users or groups can manage specific stack sets within the * same administrator account. For more information, see Granting * Permissions for Stack Set Operations in the CloudFormation User * Guide.

If you specified a customized administrator role when you * created the stack set, you must specify a customized administrator role, even if * it is the same customized administrator role used with this stack set * previously.

*/ inline void SetAdministrationRoleARN(const Aws::String& value) { m_administrationRoleARNHasBeenSet = true; m_administrationRoleARN = value; } /** *

The Amazon Resource Name (ARN) of the IAM role to use to update this stack * set.

Specify an IAM role only if you are using customized administrator * roles to control which users or groups can manage specific stack sets within the * same administrator account. For more information, see Granting * Permissions for Stack Set Operations in the CloudFormation User * Guide.

If you specified a customized administrator role when you * created the stack set, you must specify a customized administrator role, even if * it is the same customized administrator role used with this stack set * previously.

*/ inline void SetAdministrationRoleARN(Aws::String&& value) { m_administrationRoleARNHasBeenSet = true; m_administrationRoleARN = std::move(value); } /** *

The Amazon Resource Name (ARN) of the IAM role to use to update this stack * set.

Specify an IAM role only if you are using customized administrator * roles to control which users or groups can manage specific stack sets within the * same administrator account. For more information, see Granting * Permissions for Stack Set Operations in the CloudFormation User * Guide.

If you specified a customized administrator role when you * created the stack set, you must specify a customized administrator role, even if * it is the same customized administrator role used with this stack set * previously.

*/ inline void SetAdministrationRoleARN(const char* value) { m_administrationRoleARNHasBeenSet = true; m_administrationRoleARN.assign(value); } /** *

The Amazon Resource Name (ARN) of the IAM role to use to update this stack * set.

Specify an IAM role only if you are using customized administrator * roles to control which users or groups can manage specific stack sets within the * same administrator account. For more information, see Granting * Permissions for Stack Set Operations in the CloudFormation User * Guide.

If you specified a customized administrator role when you * created the stack set, you must specify a customized administrator role, even if * it is the same customized administrator role used with this stack set * previously.

*/ inline UpdateStackSetRequest& WithAdministrationRoleARN(const Aws::String& value) { SetAdministrationRoleARN(value); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role to use to update this stack * set.

Specify an IAM role only if you are using customized administrator * roles to control which users or groups can manage specific stack sets within the * same administrator account. For more information, see Granting * Permissions for Stack Set Operations in the CloudFormation User * Guide.

If you specified a customized administrator role when you * created the stack set, you must specify a customized administrator role, even if * it is the same customized administrator role used with this stack set * previously.

*/ inline UpdateStackSetRequest& WithAdministrationRoleARN(Aws::String&& value) { SetAdministrationRoleARN(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role to use to update this stack * set.

Specify an IAM role only if you are using customized administrator * roles to control which users or groups can manage specific stack sets within the * same administrator account. For more information, see Granting * Permissions for Stack Set Operations in the CloudFormation User * Guide.

If you specified a customized administrator role when you * created the stack set, you must specify a customized administrator role, even if * it is the same customized administrator role used with this stack set * previously.

*/ inline UpdateStackSetRequest& WithAdministrationRoleARN(const char* value) { SetAdministrationRoleARN(value); return *this;} /** *

The name of the IAM execution role to use to update the stack set. If you do * not specify an execution role, CloudFormation uses the * AWSCloudFormationStackSetExecutionRole role for the stack set * operation.

Specify an IAM role only if you are using customized execution * roles to control which stack resources users and groups can include in their * stack sets.

If you specify a customized execution role, CloudFormation * uses that role to update the stack. If you do not specify a customized execution * role, CloudFormation performs the update using the role previously associated * with the stack set, so long as you have permissions to perform operations on the * stack set.

*/ inline const Aws::String& GetExecutionRoleName() const{ return m_executionRoleName; } /** *

The name of the IAM execution role to use to update the stack set. If you do * not specify an execution role, CloudFormation uses the * AWSCloudFormationStackSetExecutionRole role for the stack set * operation.

Specify an IAM role only if you are using customized execution * roles to control which stack resources users and groups can include in their * stack sets.

If you specify a customized execution role, CloudFormation * uses that role to update the stack. If you do not specify a customized execution * role, CloudFormation performs the update using the role previously associated * with the stack set, so long as you have permissions to perform operations on the * stack set.

*/ inline bool ExecutionRoleNameHasBeenSet() const { return m_executionRoleNameHasBeenSet; } /** *

The name of the IAM execution role to use to update the stack set. If you do * not specify an execution role, CloudFormation uses the * AWSCloudFormationStackSetExecutionRole role for the stack set * operation.

Specify an IAM role only if you are using customized execution * roles to control which stack resources users and groups can include in their * stack sets.

If you specify a customized execution role, CloudFormation * uses that role to update the stack. If you do not specify a customized execution * role, CloudFormation performs the update using the role previously associated * with the stack set, so long as you have permissions to perform operations on the * stack set.

*/ inline void SetExecutionRoleName(const Aws::String& value) { m_executionRoleNameHasBeenSet = true; m_executionRoleName = value; } /** *

The name of the IAM execution role to use to update the stack set. If you do * not specify an execution role, CloudFormation uses the * AWSCloudFormationStackSetExecutionRole role for the stack set * operation.

Specify an IAM role only if you are using customized execution * roles to control which stack resources users and groups can include in their * stack sets.

If you specify a customized execution role, CloudFormation * uses that role to update the stack. If you do not specify a customized execution * role, CloudFormation performs the update using the role previously associated * with the stack set, so long as you have permissions to perform operations on the * stack set.

*/ inline void SetExecutionRoleName(Aws::String&& value) { m_executionRoleNameHasBeenSet = true; m_executionRoleName = std::move(value); } /** *

The name of the IAM execution role to use to update the stack set. If you do * not specify an execution role, CloudFormation uses the * AWSCloudFormationStackSetExecutionRole role for the stack set * operation.

Specify an IAM role only if you are using customized execution * roles to control which stack resources users and groups can include in their * stack sets.

If you specify a customized execution role, CloudFormation * uses that role to update the stack. If you do not specify a customized execution * role, CloudFormation performs the update using the role previously associated * with the stack set, so long as you have permissions to perform operations on the * stack set.

*/ inline void SetExecutionRoleName(const char* value) { m_executionRoleNameHasBeenSet = true; m_executionRoleName.assign(value); } /** *

The name of the IAM execution role to use to update the stack set. If you do * not specify an execution role, CloudFormation uses the * AWSCloudFormationStackSetExecutionRole role for the stack set * operation.

Specify an IAM role only if you are using customized execution * roles to control which stack resources users and groups can include in their * stack sets.

If you specify a customized execution role, CloudFormation * uses that role to update the stack. If you do not specify a customized execution * role, CloudFormation performs the update using the role previously associated * with the stack set, so long as you have permissions to perform operations on the * stack set.

*/ inline UpdateStackSetRequest& WithExecutionRoleName(const Aws::String& value) { SetExecutionRoleName(value); return *this;} /** *

The name of the IAM execution role to use to update the stack set. If you do * not specify an execution role, CloudFormation uses the * AWSCloudFormationStackSetExecutionRole role for the stack set * operation.

Specify an IAM role only if you are using customized execution * roles to control which stack resources users and groups can include in their * stack sets.

If you specify a customized execution role, CloudFormation * uses that role to update the stack. If you do not specify a customized execution * role, CloudFormation performs the update using the role previously associated * with the stack set, so long as you have permissions to perform operations on the * stack set.

*/ inline UpdateStackSetRequest& WithExecutionRoleName(Aws::String&& value) { SetExecutionRoleName(std::move(value)); return *this;} /** *

The name of the IAM execution role to use to update the stack set. If you do * not specify an execution role, CloudFormation uses the * AWSCloudFormationStackSetExecutionRole role for the stack set * operation.

Specify an IAM role only if you are using customized execution * roles to control which stack resources users and groups can include in their * stack sets.

If you specify a customized execution role, CloudFormation * uses that role to update the stack. If you do not specify a customized execution * role, CloudFormation performs the update using the role previously associated * with the stack set, so long as you have permissions to perform operations on the * stack set.

*/ inline UpdateStackSetRequest& WithExecutionRoleName(const char* value) { SetExecutionRoleName(value); return *this;} /** *

[Service-managed permissions] The Organizations accounts in which to update * associated stack instances.

To update all the stack instances associated * with this stack set, do not specify DeploymentTargets or * Regions.

If the stack set update includes changes to the * template (that is, if TemplateBody or TemplateURL is * specified), or the Parameters, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update doesn't include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and * Regions, while leaving all other stack instances with their existing stack * instance status.

*/ inline const DeploymentTargets& GetDeploymentTargets() const{ return m_deploymentTargets; } /** *

[Service-managed permissions] The Organizations accounts in which to update * associated stack instances.

To update all the stack instances associated * with this stack set, do not specify DeploymentTargets or * Regions.

If the stack set update includes changes to the * template (that is, if TemplateBody or TemplateURL is * specified), or the Parameters, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update doesn't include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and * Regions, while leaving all other stack instances with their existing stack * instance status.

*/ inline bool DeploymentTargetsHasBeenSet() const { return m_deploymentTargetsHasBeenSet; } /** *

[Service-managed permissions] The Organizations accounts in which to update * associated stack instances.

To update all the stack instances associated * with this stack set, do not specify DeploymentTargets or * Regions.

If the stack set update includes changes to the * template (that is, if TemplateBody or TemplateURL is * specified), or the Parameters, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update doesn't include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and * Regions, while leaving all other stack instances with their existing stack * instance status.

*/ inline void SetDeploymentTargets(const DeploymentTargets& value) { m_deploymentTargetsHasBeenSet = true; m_deploymentTargets = value; } /** *

[Service-managed permissions] The Organizations accounts in which to update * associated stack instances.

To update all the stack instances associated * with this stack set, do not specify DeploymentTargets or * Regions.

If the stack set update includes changes to the * template (that is, if TemplateBody or TemplateURL is * specified), or the Parameters, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update doesn't include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and * Regions, while leaving all other stack instances with their existing stack * instance status.

*/ inline void SetDeploymentTargets(DeploymentTargets&& value) { m_deploymentTargetsHasBeenSet = true; m_deploymentTargets = std::move(value); } /** *

[Service-managed permissions] The Organizations accounts in which to update * associated stack instances.

To update all the stack instances associated * with this stack set, do not specify DeploymentTargets or * Regions.

If the stack set update includes changes to the * template (that is, if TemplateBody or TemplateURL is * specified), or the Parameters, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update doesn't include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and * Regions, while leaving all other stack instances with their existing stack * instance status.

*/ inline UpdateStackSetRequest& WithDeploymentTargets(const DeploymentTargets& value) { SetDeploymentTargets(value); return *this;} /** *

[Service-managed permissions] The Organizations accounts in which to update * associated stack instances.

To update all the stack instances associated * with this stack set, do not specify DeploymentTargets or * Regions.

If the stack set update includes changes to the * template (that is, if TemplateBody or TemplateURL is * specified), or the Parameters, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update doesn't include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and * Regions, while leaving all other stack instances with their existing stack * instance status.

*/ inline UpdateStackSetRequest& WithDeploymentTargets(DeploymentTargets&& value) { SetDeploymentTargets(std::move(value)); return *this;} /** *

Describes how the IAM roles required for stack set operations are created. * You cannot modify PermissionModel if there are stack instances * associated with your stack set.

*/ inline const PermissionModels& GetPermissionModel() const{ return m_permissionModel; } /** *

Describes how the IAM roles required for stack set operations are created. * You cannot modify PermissionModel if there are stack instances * associated with your stack set.

*/ inline bool PermissionModelHasBeenSet() const { return m_permissionModelHasBeenSet; } /** *

Describes how the IAM roles required for stack set operations are created. * You cannot modify PermissionModel if there are stack instances * associated with your stack set.

*/ inline void SetPermissionModel(const PermissionModels& value) { m_permissionModelHasBeenSet = true; m_permissionModel = value; } /** *

Describes how the IAM roles required for stack set operations are created. * You cannot modify PermissionModel if there are stack instances * associated with your stack set.

*/ inline void SetPermissionModel(PermissionModels&& value) { m_permissionModelHasBeenSet = true; m_permissionModel = std::move(value); } /** *

Describes how the IAM roles required for stack set operations are created. * You cannot modify PermissionModel if there are stack instances * associated with your stack set.

*/ inline UpdateStackSetRequest& WithPermissionModel(const PermissionModels& value) { SetPermissionModel(value); return *this;} /** *

Describes how the IAM roles required for stack set operations are created. * You cannot modify PermissionModel if there are stack instances * associated with your stack set.

*/ inline UpdateStackSetRequest& WithPermissionModel(PermissionModels&& value) { SetPermissionModel(std::move(value)); return *this;} /** *

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

If you specify AutoDeployment, * don't specify DeploymentTargets or Regions.

*/ inline const AutoDeployment& GetAutoDeployment() const{ return m_autoDeployment; } /** *

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

If you specify AutoDeployment, * don't specify DeploymentTargets or Regions.

*/ inline bool AutoDeploymentHasBeenSet() const { return m_autoDeploymentHasBeenSet; } /** *

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

If you specify AutoDeployment, * don't specify DeploymentTargets or Regions.

*/ inline void SetAutoDeployment(const AutoDeployment& value) { m_autoDeploymentHasBeenSet = true; m_autoDeployment = value; } /** *

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

If you specify AutoDeployment, * don't specify DeploymentTargets or Regions.

*/ inline void SetAutoDeployment(AutoDeployment&& value) { m_autoDeploymentHasBeenSet = true; m_autoDeployment = std::move(value); } /** *

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

If you specify AutoDeployment, * don't specify DeploymentTargets or Regions.

*/ inline UpdateStackSetRequest& WithAutoDeployment(const AutoDeployment& value) { SetAutoDeployment(value); return *this;} /** *

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

If you specify AutoDeployment, * don't specify DeploymentTargets or Regions.

*/ inline UpdateStackSetRequest& WithAutoDeployment(AutoDeployment&& value) { SetAutoDeployment(std::move(value)); return *this;} /** *

The unique ID for this stack set operation.

The operation ID also * functions as an idempotency token, to ensure that CloudFormation performs the * stack set operation only once, even if you retry the request multiple times. You * might retry stack set operation requests to ensure that CloudFormation * successfully received them.

If you don't specify an operation ID, * CloudFormation generates one automatically.

Repeating this stack set * operation with a new operation ID retries all stack instances whose status is * OUTDATED.

*/ inline const Aws::String& GetOperationId() const{ return m_operationId; } /** *

The unique ID for this stack set operation.

The operation ID also * functions as an idempotency token, to ensure that CloudFormation performs the * stack set operation only once, even if you retry the request multiple times. You * might retry stack set operation requests to ensure that CloudFormation * successfully received them.

If you don't specify an operation ID, * CloudFormation generates one automatically.

Repeating this stack set * operation with a new operation ID retries all stack instances whose status is * OUTDATED.

*/ inline bool OperationIdHasBeenSet() const { return m_operationIdHasBeenSet; } /** *

The unique ID for this stack set operation.

The operation ID also * functions as an idempotency token, to ensure that CloudFormation performs the * stack set operation only once, even if you retry the request multiple times. You * might retry stack set operation requests to ensure that CloudFormation * successfully received them.

If you don't specify an operation ID, * CloudFormation generates one automatically.

Repeating this stack set * operation with a new operation ID retries all stack instances whose status is * OUTDATED.

*/ inline void SetOperationId(const Aws::String& value) { m_operationIdHasBeenSet = true; m_operationId = value; } /** *

The unique ID for this stack set operation.

The operation ID also * functions as an idempotency token, to ensure that CloudFormation performs the * stack set operation only once, even if you retry the request multiple times. You * might retry stack set operation requests to ensure that CloudFormation * successfully received them.

If you don't specify an operation ID, * CloudFormation generates one automatically.

Repeating this stack set * operation with a new operation ID retries all stack instances whose status is * OUTDATED.

*/ inline void SetOperationId(Aws::String&& value) { m_operationIdHasBeenSet = true; m_operationId = std::move(value); } /** *

The unique ID for this stack set operation.

The operation ID also * functions as an idempotency token, to ensure that CloudFormation performs the * stack set operation only once, even if you retry the request multiple times. You * might retry stack set operation requests to ensure that CloudFormation * successfully received them.

If you don't specify an operation ID, * CloudFormation generates one automatically.

Repeating this stack set * operation with a new operation ID retries all stack instances whose status is * OUTDATED.

*/ inline void SetOperationId(const char* value) { m_operationIdHasBeenSet = true; m_operationId.assign(value); } /** *

The unique ID for this stack set operation.

The operation ID also * functions as an idempotency token, to ensure that CloudFormation performs the * stack set operation only once, even if you retry the request multiple times. You * might retry stack set operation requests to ensure that CloudFormation * successfully received them.

If you don't specify an operation ID, * CloudFormation generates one automatically.

Repeating this stack set * operation with a new operation ID retries all stack instances whose status is * OUTDATED.

*/ inline UpdateStackSetRequest& WithOperationId(const Aws::String& value) { SetOperationId(value); return *this;} /** *

The unique ID for this stack set operation.

The operation ID also * functions as an idempotency token, to ensure that CloudFormation performs the * stack set operation only once, even if you retry the request multiple times. You * might retry stack set operation requests to ensure that CloudFormation * successfully received them.

If you don't specify an operation ID, * CloudFormation generates one automatically.

Repeating this stack set * operation with a new operation ID retries all stack instances whose status is * OUTDATED.

*/ inline UpdateStackSetRequest& WithOperationId(Aws::String&& value) { SetOperationId(std::move(value)); return *this;} /** *

The unique ID for this stack set operation.

The operation ID also * functions as an idempotency token, to ensure that CloudFormation performs the * stack set operation only once, even if you retry the request multiple times. You * might retry stack set operation requests to ensure that CloudFormation * successfully received them.

If you don't specify an operation ID, * CloudFormation generates one automatically.

Repeating this stack set * operation with a new operation ID retries all stack instances whose status is * OUTDATED.

*/ inline UpdateStackSetRequest& WithOperationId(const char* value) { SetOperationId(value); return *this;} /** *

[Self-managed permissions] The accounts in which to update associated stack * instances. If you specify accounts, you must also specify the Amazon Web * Services Regions in which to update stack set instances.

To update * all the stack instances associated with this stack set, don't specify the * Accounts or Regions properties.

If the stack * set update includes changes to the template (that is, if the * TemplateBody or TemplateURL properties are specified), * or the Parameters property, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update does not include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and Amazon * Web Services Regions, while leaving all other stack instances with their * existing stack instance status.

*/ inline const Aws::Vector& GetAccounts() const{ return m_accounts; } /** *

[Self-managed permissions] The accounts in which to update associated stack * instances. If you specify accounts, you must also specify the Amazon Web * Services Regions in which to update stack set instances.

To update * all the stack instances associated with this stack set, don't specify the * Accounts or Regions properties.

If the stack * set update includes changes to the template (that is, if the * TemplateBody or TemplateURL properties are specified), * or the Parameters property, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update does not include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and Amazon * Web Services Regions, while leaving all other stack instances with their * existing stack instance status.

*/ inline bool AccountsHasBeenSet() const { return m_accountsHasBeenSet; } /** *

[Self-managed permissions] The accounts in which to update associated stack * instances. If you specify accounts, you must also specify the Amazon Web * Services Regions in which to update stack set instances.

To update * all the stack instances associated with this stack set, don't specify the * Accounts or Regions properties.

If the stack * set update includes changes to the template (that is, if the * TemplateBody or TemplateURL properties are specified), * or the Parameters property, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update does not include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and Amazon * Web Services Regions, while leaving all other stack instances with their * existing stack instance status.

*/ inline void SetAccounts(const Aws::Vector& value) { m_accountsHasBeenSet = true; m_accounts = value; } /** *

[Self-managed permissions] The accounts in which to update associated stack * instances. If you specify accounts, you must also specify the Amazon Web * Services Regions in which to update stack set instances.

To update * all the stack instances associated with this stack set, don't specify the * Accounts or Regions properties.

If the stack * set update includes changes to the template (that is, if the * TemplateBody or TemplateURL properties are specified), * or the Parameters property, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update does not include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and Amazon * Web Services Regions, while leaving all other stack instances with their * existing stack instance status.

*/ inline void SetAccounts(Aws::Vector&& value) { m_accountsHasBeenSet = true; m_accounts = std::move(value); } /** *

[Self-managed permissions] The accounts in which to update associated stack * instances. If you specify accounts, you must also specify the Amazon Web * Services Regions in which to update stack set instances.

To update * all the stack instances associated with this stack set, don't specify the * Accounts or Regions properties.

If the stack * set update includes changes to the template (that is, if the * TemplateBody or TemplateURL properties are specified), * or the Parameters property, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update does not include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and Amazon * Web Services Regions, while leaving all other stack instances with their * existing stack instance status.

*/ inline UpdateStackSetRequest& WithAccounts(const Aws::Vector& value) { SetAccounts(value); return *this;} /** *

[Self-managed permissions] The accounts in which to update associated stack * instances. If you specify accounts, you must also specify the Amazon Web * Services Regions in which to update stack set instances.

To update * all the stack instances associated with this stack set, don't specify the * Accounts or Regions properties.

If the stack * set update includes changes to the template (that is, if the * TemplateBody or TemplateURL properties are specified), * or the Parameters property, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update does not include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and Amazon * Web Services Regions, while leaving all other stack instances with their * existing stack instance status.

*/ inline UpdateStackSetRequest& WithAccounts(Aws::Vector&& value) { SetAccounts(std::move(value)); return *this;} /** *

[Self-managed permissions] The accounts in which to update associated stack * instances. If you specify accounts, you must also specify the Amazon Web * Services Regions in which to update stack set instances.

To update * all the stack instances associated with this stack set, don't specify the * Accounts or Regions properties.

If the stack * set update includes changes to the template (that is, if the * TemplateBody or TemplateURL properties are specified), * or the Parameters property, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update does not include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and Amazon * Web Services Regions, while leaving all other stack instances with their * existing stack instance status.

*/ inline UpdateStackSetRequest& AddAccounts(const Aws::String& value) { m_accountsHasBeenSet = true; m_accounts.push_back(value); return *this; } /** *

[Self-managed permissions] The accounts in which to update associated stack * instances. If you specify accounts, you must also specify the Amazon Web * Services Regions in which to update stack set instances.

To update * all the stack instances associated with this stack set, don't specify the * Accounts or Regions properties.

If the stack * set update includes changes to the template (that is, if the * TemplateBody or TemplateURL properties are specified), * or the Parameters property, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update does not include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and Amazon * Web Services Regions, while leaving all other stack instances with their * existing stack instance status.

*/ inline UpdateStackSetRequest& AddAccounts(Aws::String&& value) { m_accountsHasBeenSet = true; m_accounts.push_back(std::move(value)); return *this; } /** *

[Self-managed permissions] The accounts in which to update associated stack * instances. If you specify accounts, you must also specify the Amazon Web * Services Regions in which to update stack set instances.

To update * all the stack instances associated with this stack set, don't specify the * Accounts or Regions properties.

If the stack * set update includes changes to the template (that is, if the * TemplateBody or TemplateURL properties are specified), * or the Parameters property, CloudFormation marks all stack * instances with a status of OUTDATED prior to updating the stack * instances in the specified accounts and Amazon Web Services Regions. If the * stack set update does not include changes to the template or parameters, * CloudFormation updates the stack instances in the specified accounts and Amazon * Web Services Regions, while leaving all other stack instances with their * existing stack instance status.

*/ inline UpdateStackSetRequest& AddAccounts(const char* value) { m_accountsHasBeenSet = true; m_accounts.push_back(value); return *this; } /** *

The Amazon Web Services Regions in which to update associated stack * instances. If you specify Regions, you must also specify accounts in which to * update stack set instances.

To update all the stack instances * associated with this stack set, do not specify the Accounts or * Regions properties.

If the stack set update includes changes * to the template (that is, if the TemplateBody or * TemplateURL properties are specified), or the * Parameters property, CloudFormation marks all stack instances with * a status of OUTDATED prior to updating the stack instances in the * specified accounts and Regions. If the stack set update does not include changes * to the template or parameters, CloudFormation updates the stack instances in the * specified accounts and Regions, while leaving all other stack instances with * their existing stack instance status.

*/ inline const Aws::Vector& GetRegions() const{ return m_regions; } /** *

The Amazon Web Services Regions in which to update associated stack * instances. If you specify Regions, you must also specify accounts in which to * update stack set instances.

To update all the stack instances * associated with this stack set, do not specify the Accounts or * Regions properties.

If the stack set update includes changes * to the template (that is, if the TemplateBody or * TemplateURL properties are specified), or the * Parameters property, CloudFormation marks all stack instances with * a status of OUTDATED prior to updating the stack instances in the * specified accounts and Regions. If the stack set update does not include changes * to the template or parameters, CloudFormation updates the stack instances in the * specified accounts and Regions, while leaving all other stack instances with * their existing stack instance status.

*/ inline bool RegionsHasBeenSet() const { return m_regionsHasBeenSet; } /** *

The Amazon Web Services Regions in which to update associated stack * instances. If you specify Regions, you must also specify accounts in which to * update stack set instances.

To update all the stack instances * associated with this stack set, do not specify the Accounts or * Regions properties.

If the stack set update includes changes * to the template (that is, if the TemplateBody or * TemplateURL properties are specified), or the * Parameters property, CloudFormation marks all stack instances with * a status of OUTDATED prior to updating the stack instances in the * specified accounts and Regions. If the stack set update does not include changes * to the template or parameters, CloudFormation updates the stack instances in the * specified accounts and Regions, while leaving all other stack instances with * their existing stack instance status.

*/ inline void SetRegions(const Aws::Vector& value) { m_regionsHasBeenSet = true; m_regions = value; } /** *

The Amazon Web Services Regions in which to update associated stack * instances. If you specify Regions, you must also specify accounts in which to * update stack set instances.

To update all the stack instances * associated with this stack set, do not specify the Accounts or * Regions properties.

If the stack set update includes changes * to the template (that is, if the TemplateBody or * TemplateURL properties are specified), or the * Parameters property, CloudFormation marks all stack instances with * a status of OUTDATED prior to updating the stack instances in the * specified accounts and Regions. If the stack set update does not include changes * to the template or parameters, CloudFormation updates the stack instances in the * specified accounts and Regions, while leaving all other stack instances with * their existing stack instance status.

*/ inline void SetRegions(Aws::Vector&& value) { m_regionsHasBeenSet = true; m_regions = std::move(value); } /** *

The Amazon Web Services Regions in which to update associated stack * instances. If you specify Regions, you must also specify accounts in which to * update stack set instances.

To update all the stack instances * associated with this stack set, do not specify the Accounts or * Regions properties.

If the stack set update includes changes * to the template (that is, if the TemplateBody or * TemplateURL properties are specified), or the * Parameters property, CloudFormation marks all stack instances with * a status of OUTDATED prior to updating the stack instances in the * specified accounts and Regions. If the stack set update does not include changes * to the template or parameters, CloudFormation updates the stack instances in the * specified accounts and Regions, while leaving all other stack instances with * their existing stack instance status.

*/ inline UpdateStackSetRequest& WithRegions(const Aws::Vector& value) { SetRegions(value); return *this;} /** *

The Amazon Web Services Regions in which to update associated stack * instances. If you specify Regions, you must also specify accounts in which to * update stack set instances.

To update all the stack instances * associated with this stack set, do not specify the Accounts or * Regions properties.

If the stack set update includes changes * to the template (that is, if the TemplateBody or * TemplateURL properties are specified), or the * Parameters property, CloudFormation marks all stack instances with * a status of OUTDATED prior to updating the stack instances in the * specified accounts and Regions. If the stack set update does not include changes * to the template or parameters, CloudFormation updates the stack instances in the * specified accounts and Regions, while leaving all other stack instances with * their existing stack instance status.

*/ inline UpdateStackSetRequest& WithRegions(Aws::Vector&& value) { SetRegions(std::move(value)); return *this;} /** *

The Amazon Web Services Regions in which to update associated stack * instances. If you specify Regions, you must also specify accounts in which to * update stack set instances.

To update all the stack instances * associated with this stack set, do not specify the Accounts or * Regions properties.

If the stack set update includes changes * to the template (that is, if the TemplateBody or * TemplateURL properties are specified), or the * Parameters property, CloudFormation marks all stack instances with * a status of OUTDATED prior to updating the stack instances in the * specified accounts and Regions. If the stack set update does not include changes * to the template or parameters, CloudFormation updates the stack instances in the * specified accounts and Regions, while leaving all other stack instances with * their existing stack instance status.

*/ inline UpdateStackSetRequest& AddRegions(const Aws::String& value) { m_regionsHasBeenSet = true; m_regions.push_back(value); return *this; } /** *

The Amazon Web Services Regions in which to update associated stack * instances. If you specify Regions, you must also specify accounts in which to * update stack set instances.

To update all the stack instances * associated with this stack set, do not specify the Accounts or * Regions properties.

If the stack set update includes changes * to the template (that is, if the TemplateBody or * TemplateURL properties are specified), or the * Parameters property, CloudFormation marks all stack instances with * a status of OUTDATED prior to updating the stack instances in the * specified accounts and Regions. If the stack set update does not include changes * to the template or parameters, CloudFormation updates the stack instances in the * specified accounts and Regions, while leaving all other stack instances with * their existing stack instance status.

*/ inline UpdateStackSetRequest& AddRegions(Aws::String&& value) { m_regionsHasBeenSet = true; m_regions.push_back(std::move(value)); return *this; } /** *

The Amazon Web Services Regions in which to update associated stack * instances. If you specify Regions, you must also specify accounts in which to * update stack set instances.

To update all the stack instances * associated with this stack set, do not specify the Accounts or * Regions properties.

If the stack set update includes changes * to the template (that is, if the TemplateBody or * TemplateURL properties are specified), or the * Parameters property, CloudFormation marks all stack instances with * a status of OUTDATED prior to updating the stack instances in the * specified accounts and Regions. If the stack set update does not include changes * to the template or parameters, CloudFormation updates the stack instances in the * specified accounts and Regions, while leaving all other stack instances with * their existing stack instance status.

*/ inline UpdateStackSetRequest& AddRegions(const char* value) { m_regionsHasBeenSet = true; m_regions.push_back(value); return *this; } /** *

[Service-managed permissions] Specifies whether you are acting as an account * administrator in the organization's management account or as a delegated * administrator in a member account.

By default, SELF is * specified. Use SELF for stack sets with self-managed * permissions.

  • If you are signed in to the management account, * specify SELF.

  • If you are signed in to a delegated * administrator account, specify DELEGATED_ADMIN.

    Your Amazon * Web Services account must be registered as a delegated administrator in the * management account. For more information, see Register * a delegated administrator in the CloudFormation User Guide.

  • *
*/ inline const CallAs& GetCallAs() const{ return m_callAs; } /** *

[Service-managed permissions] Specifies whether you are acting as an account * administrator in the organization's management account or as a delegated * administrator in a member account.

By default, SELF is * specified. Use SELF for stack sets with self-managed * permissions.

  • If you are signed in to the management account, * specify SELF.

  • If you are signed in to a delegated * administrator account, specify DELEGATED_ADMIN.

    Your Amazon * Web Services account must be registered as a delegated administrator in the * management account. For more information, see Register * a delegated administrator in the CloudFormation User Guide.

  • *
*/ inline bool CallAsHasBeenSet() const { return m_callAsHasBeenSet; } /** *

[Service-managed permissions] Specifies whether you are acting as an account * administrator in the organization's management account or as a delegated * administrator in a member account.

By default, SELF is * specified. Use SELF for stack sets with self-managed * permissions.

  • If you are signed in to the management account, * specify SELF.

  • If you are signed in to a delegated * administrator account, specify DELEGATED_ADMIN.

    Your Amazon * Web Services account must be registered as a delegated administrator in the * management account. For more information, see Register * a delegated administrator in the CloudFormation User Guide.

  • *
*/ inline void SetCallAs(const CallAs& value) { m_callAsHasBeenSet = true; m_callAs = value; } /** *

[Service-managed permissions] Specifies whether you are acting as an account * administrator in the organization's management account or as a delegated * administrator in a member account.

By default, SELF is * specified. Use SELF for stack sets with self-managed * permissions.

  • If you are signed in to the management account, * specify SELF.

  • If you are signed in to a delegated * administrator account, specify DELEGATED_ADMIN.

    Your Amazon * Web Services account must be registered as a delegated administrator in the * management account. For more information, see Register * a delegated administrator in the CloudFormation User Guide.

  • *
*/ inline void SetCallAs(CallAs&& value) { m_callAsHasBeenSet = true; m_callAs = std::move(value); } /** *

[Service-managed permissions] Specifies whether you are acting as an account * administrator in the organization's management account or as a delegated * administrator in a member account.

By default, SELF is * specified. Use SELF for stack sets with self-managed * permissions.

  • If you are signed in to the management account, * specify SELF.

  • If you are signed in to a delegated * administrator account, specify DELEGATED_ADMIN.

    Your Amazon * Web Services account must be registered as a delegated administrator in the * management account. For more information, see Register * a delegated administrator in the CloudFormation User Guide.

  • *
*/ inline UpdateStackSetRequest& WithCallAs(const CallAs& value) { SetCallAs(value); return *this;} /** *

[Service-managed permissions] Specifies whether you are acting as an account * administrator in the organization's management account or as a delegated * administrator in a member account.

By default, SELF is * specified. Use SELF for stack sets with self-managed * permissions.

  • If you are signed in to the management account, * specify SELF.

  • If you are signed in to a delegated * administrator account, specify DELEGATED_ADMIN.

    Your Amazon * Web Services account must be registered as a delegated administrator in the * management account. For more information, see Register * a delegated administrator in the CloudFormation User Guide.

  • *
*/ inline UpdateStackSetRequest& WithCallAs(CallAs&& value) { SetCallAs(std::move(value)); return *this;} /** *

Describes whether StackSets performs non-conflicting operations concurrently * and queues conflicting operations.

*/ inline const ManagedExecution& GetManagedExecution() const{ return m_managedExecution; } /** *

Describes whether StackSets performs non-conflicting operations concurrently * and queues conflicting operations.

*/ inline bool ManagedExecutionHasBeenSet() const { return m_managedExecutionHasBeenSet; } /** *

Describes whether StackSets performs non-conflicting operations concurrently * and queues conflicting operations.

*/ inline void SetManagedExecution(const ManagedExecution& value) { m_managedExecutionHasBeenSet = true; m_managedExecution = value; } /** *

Describes whether StackSets performs non-conflicting operations concurrently * and queues conflicting operations.

*/ inline void SetManagedExecution(ManagedExecution&& value) { m_managedExecutionHasBeenSet = true; m_managedExecution = std::move(value); } /** *

Describes whether StackSets performs non-conflicting operations concurrently * and queues conflicting operations.

*/ inline UpdateStackSetRequest& WithManagedExecution(const ManagedExecution& value) { SetManagedExecution(value); return *this;} /** *

Describes whether StackSets performs non-conflicting operations concurrently * and queues conflicting operations.

*/ inline UpdateStackSetRequest& WithManagedExecution(ManagedExecution&& value) { SetManagedExecution(std::move(value)); return *this;} private: Aws::String m_stackSetName; bool m_stackSetNameHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_templateBody; bool m_templateBodyHasBeenSet = false; Aws::String m_templateURL; bool m_templateURLHasBeenSet = false; bool m_usePreviousTemplate; bool m_usePreviousTemplateHasBeenSet = false; Aws::Vector m_parameters; bool m_parametersHasBeenSet = false; Aws::Vector m_capabilities; bool m_capabilitiesHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; StackSetOperationPreferences m_operationPreferences; bool m_operationPreferencesHasBeenSet = false; Aws::String m_administrationRoleARN; bool m_administrationRoleARNHasBeenSet = false; Aws::String m_executionRoleName; bool m_executionRoleNameHasBeenSet = false; DeploymentTargets m_deploymentTargets; bool m_deploymentTargetsHasBeenSet = false; PermissionModels m_permissionModel; bool m_permissionModelHasBeenSet = false; AutoDeployment m_autoDeployment; bool m_autoDeploymentHasBeenSet = false; Aws::String m_operationId; bool m_operationIdHasBeenSet = false; Aws::Vector m_accounts; bool m_accountsHasBeenSet = false; Aws::Vector m_regions; bool m_regionsHasBeenSet = false; CallAs m_callAs; bool m_callAsHasBeenSet = false; ManagedExecution m_managedExecution; bool m_managedExecutionHasBeenSet = false; }; } // namespace Model } // namespace CloudFormation } // namespace Aws