/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the cloudformation-2010-05-15.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.CloudFormation.Model { /// /// Container for the parameters to the ContinueUpdateRollback operation. /// For a specified stack that's in the UPDATE_ROLLBACK_FAILED state, continues /// rolling it back to the UPDATE_ROLLBACK_COMPLETE state. Depending on the /// cause of the failure, you can manually /// fix the error and continue the rollback. By continuing the rollback, you can return /// your stack to a working state (the UPDATE_ROLLBACK_COMPLETE state), and /// then try to update the stack again. /// /// /// /// A stack goes into the UPDATE_ROLLBACK_FAILED state when CloudFormation /// can't roll back all changes after a failed stack update. For example, you might have /// a stack that's rolling back to an old database instance that was deleted outside of /// CloudFormation. Because CloudFormation doesn't know the database was deleted, it assumes /// that the database instance still exists and attempts to roll back to it, causing the /// update rollback to fail. /// /// public partial class ContinueUpdateRollbackRequest : AmazonCloudFormationRequest { private string _clientRequestToken; private List _resourcesToSkip = new List(); private string _roleARN; private string _stackName; /// /// Gets and sets the property ClientRequestToken. /// /// A unique identifier for this ContinueUpdateRollback request. Specify /// this token if you plan to retry requests so that CloudFormation knows that you're /// not attempting to continue the rollback to a stack with the same name. You might retry /// ContinueUpdateRollback requests to ensure that CloudFormation successfully /// received them. /// /// [AWSProperty(Min=1, Max=128)] public string ClientRequestToken { get { return this._clientRequestToken; } set { this._clientRequestToken = value; } } // Check to see if ClientRequestToken property is set internal bool IsSetClientRequestToken() { return this._clientRequestToken != null; } /// /// Gets and sets the property ResourcesToSkip. /// /// A list of the logical IDs of the resources that CloudFormation skips during the continue /// update rollback operation. You can specify only resources that are in the UPDATE_FAILED /// state because a rollback failed. You can't specify resources that are in the UPDATE_FAILED /// state for other reasons, for example, because an update was canceled. To check why /// a resource update failed, use the DescribeStackResources action, and view the /// resource status reason. /// /// /// /// Specify this property to skip rolling back resources that CloudFormation can't successfully /// roll back. We recommend that you /// troubleshoot resources before skipping them. CloudFormation sets the status of /// the specified resources to UPDATE_COMPLETE and continues to roll back /// the stack. After the rollback is complete, the state of the skipped resources will /// be inconsistent with the state of the resources in the stack template. Before performing /// another stack update, you must update the stack or resources to be consistent with /// each other. If you don't, subsequent stack updates might fail, and the stack will /// become unrecoverable. /// /// /// /// Specify the minimum number of resources required to successfully roll back your stack. /// For example, a failed resource update might cause dependent resources to fail. In /// this case, it might not be necessary to skip the dependent resources. /// /// /// /// To skip resources that are part of nested stacks, use the following format: NestedStackName.ResourceLogicalID. /// If you want to specify the logical ID of a stack resource (Type: AWS::CloudFormation::Stack) /// in the ResourcesToSkip list, then its corresponding embedded stack must /// be in one of the following states: DELETE_IN_PROGRESS, DELETE_COMPLETE, /// or DELETE_FAILED. /// /// /// /// Don't confuse a child stack's name with its corresponding logical ID defined in the /// parent stack. For an example of a continue update rollback operation with nested stacks, /// see Using /// ResourcesToSkip to recover a nested stacks hierarchy. /// /// /// public List ResourcesToSkip { get { return this._resourcesToSkip; } set { this._resourcesToSkip = value; } } // Check to see if ResourcesToSkip property is set internal bool IsSetResourcesToSkip() { return this._resourcesToSkip != null && this._resourcesToSkip.Count > 0; } /// /// Gets and sets the property RoleARN. /// /// The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role that /// CloudFormation assumes to roll back the stack. CloudFormation uses the role's credentials /// to make calls on your behalf. CloudFormation always uses this role for all future /// operations on the stack. Provided that users have permission to operate on the stack, /// CloudFormation uses this role even if the users don't have permission to pass it. /// Ensure that the role grants least permission. /// /// /// /// If you don't specify a value, CloudFormation uses the role that was previously associated /// with the stack. If no role is available, CloudFormation uses a temporary session that's /// generated from your user credentials. /// /// [AWSProperty(Min=20, Max=2048)] public string RoleARN { get { return this._roleARN; } set { this._roleARN = value; } } // Check to see if RoleARN property is set internal bool IsSetRoleARN() { return this._roleARN != null; } /// /// Gets and sets the property StackName. /// /// The name or the unique ID of the stack that you want to continue rolling back. /// /// /// /// Don't specify the name of a nested stack (a stack that was created by using the AWS::CloudFormation::Stack /// resource). Instead, use this operation on the parent stack (the stack that contains /// the AWS::CloudFormation::Stack resource). /// /// /// [AWSProperty(Required=true, Min=1)] public string StackName { get { return this._stackName; } set { this._stackName = value; } } // Check to see if StackName property is set internal bool IsSetStackName() { return this._stackName != null; } } }