/*
* 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 UpdateStackInstances operation.
/// Updates the parameter values for stack instances for the specified accounts, within
/// the specified Amazon Web Services Regions. A stack instance refers to a stack in a
/// specific account and Region.
///
///
///
/// You can only update stack instances in Amazon Web Services Regions and accounts where
/// they already exist; to create additional stack instances, use CreateStackInstances.
///
///
///
/// During stack set updates, any parameters overridden for a stack instance aren't updated,
/// but retain their overridden value.
///
///
///
/// You can only update the parameter values that are specified in the stack set;
/// to add or delete a parameter itself, use UpdateStackSet
/// to update the stack set template. If you add a parameter to a template, before you
/// can override the parameter value specified in the stack set you must first use UpdateStackSet
/// to update all stack instances with the updated template and parameter value specified
/// in the stack set. Once a stack instance has been updated with the new parameter, you
/// can then override the parameter value using UpdateStackInstances
.
///
///
public partial class UpdateStackInstancesRequest : AmazonCloudFormationRequest
{
private List _accounts = new List();
private CallAs _callAs;
private DeploymentTargets _deploymentTargets;
private string _operationId;
private StackSetOperationPreferences _operationPreferences;
private List _parameterOverrides = new List();
private List _regions = new List();
private string _stackSetName;
///
/// Gets and sets the property Accounts.
///
/// [Self-managed permissions] The names of one or more Amazon Web Services accounts for
/// which you want to update parameter values for stack instances. The overridden parameter
/// values will be applied to all stack instances in the specified accounts and Amazon
/// Web Services Regions.
///
///
///
/// You can specify Accounts
or DeploymentTargets
, but not both.
///
///
public List Accounts
{
get { return this._accounts; }
set { this._accounts = value; }
}
// Check to see if Accounts property is set
internal bool IsSetAccounts()
{
return this._accounts != null && this._accounts.Count > 0;
}
///
/// Gets and sets the property 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.
///
///
///
public CallAs CallAs
{
get { return this._callAs; }
set { this._callAs = value; }
}
// Check to see if CallAs property is set
internal bool IsSetCallAs()
{
return this._callAs != null;
}
///
/// Gets and sets the property DeploymentTargets.
///
/// [Service-managed permissions] The Organizations accounts for which you want to update
/// parameter values for stack instances. If your update targets OUs, the overridden parameter
/// values only apply to the accounts that are currently in the target OUs and their child
/// OUs. Accounts added to the target OUs and their child OUs in the future won't use
/// the overridden values.
///
///
///
/// You can specify Accounts
or DeploymentTargets
, but not both.
///
///
public DeploymentTargets DeploymentTargets
{
get { return this._deploymentTargets; }
set { this._deploymentTargets = value; }
}
// Check to see if DeploymentTargets property is set
internal bool IsSetDeploymentTargets()
{
return this._deploymentTargets != null;
}
///
/// Gets and sets the property OperationId.
///
/// The unique identifier 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, the SDK generates one automatically.
///
///
[AWSProperty(Min=1, Max=128)]
public string OperationId
{
get { return this._operationId; }
set { this._operationId = value; }
}
// Check to see if OperationId property is set
internal bool IsSetOperationId()
{
return this._operationId != null;
}
///
/// Gets and sets the property OperationPreferences.
///
/// Preferences for how CloudFormation performs this stack set operation.
///
///
public StackSetOperationPreferences OperationPreferences
{
get { return this._operationPreferences; }
set { this._operationPreferences = value; }
}
// Check to see if OperationPreferences property is set
internal bool IsSetOperationPreferences()
{
return this._operationPreferences != null;
}
///
/// Gets and sets the property ParameterOverrides.
///
/// A list of input parameters whose values you want to update for the specified stack
/// instances.
///
///
///
/// Any overridden parameter values will be applied to all stack instances in the specified
/// accounts and Amazon Web Services Regions. When specifying parameters and their values,
/// be aware of how CloudFormation sets parameter values during stack instance update
/// operations:
///
/// -
///
/// To override the current value for a parameter, include the parameter and specify its
/// value.
///
///
-
///
/// To leave an overridden parameter set to its present value, include the parameter and
/// specify
UsePreviousValue
as true
. (You can't specify both
/// a value and set UsePreviousValue
to true
.)
///
/// -
///
/// To set an overridden parameter back to the value specified in the stack set, specify
/// a parameter list but don't include the parameter in the list.
///
///
-
///
/// To leave all parameters set to their present values, don't specify this property at
/// all.
///
///
///
/// During stack set updates, any parameter values overridden for a stack instance aren't
/// updated, but retain their overridden value.
///
///
///
/// You can only override the parameter values that are specified in the stack
/// set; to add or delete a parameter itself, use UpdateStackSet
to update
/// the stack set template. If you add a parameter to a template, before you can override
/// the parameter value specified in the stack set you must first use UpdateStackSet
/// to update all stack instances with the updated template and parameter value specified
/// in the stack set. Once a stack instance has been updated with the new parameter, you
/// can then override the parameter value using UpdateStackInstances
.
///
///
public List ParameterOverrides
{
get { return this._parameterOverrides; }
set { this._parameterOverrides = value; }
}
// Check to see if ParameterOverrides property is set
internal bool IsSetParameterOverrides()
{
return this._parameterOverrides != null && this._parameterOverrides.Count > 0;
}
///
/// Gets and sets the property Regions.
///
/// The names of one or more Amazon Web Services Regions in which you want to update parameter
/// values for stack instances. The overridden parameter values will be applied to all
/// stack instances in the specified accounts and Amazon Web Services Regions.
///
///
[AWSProperty(Required=true)]
public List Regions
{
get { return this._regions; }
set { this._regions = value; }
}
// Check to see if Regions property is set
internal bool IsSetRegions()
{
return this._regions != null && this._regions.Count > 0;
}
///
/// Gets and sets the property StackSetName.
///
/// The name or unique ID of the stack set associated with the stack instances.
///
///
[AWSProperty(Required=true)]
public string StackSetName
{
get { return this._stackSetName; }
set { this._stackSetName = value; }
}
// Check to see if StackSetName property is set
internal bool IsSetStackSetName()
{
return this._stackSetName != null;
}
}
}