/*
* 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
{
///
/// [Service-managed permissions] The Organizations accounts to which StackSets deploys.
/// StackSets doesn't deploy stack instances to the organization management account, even
/// if the organization management account is in your organization or in an OU in your
/// organization.
///
///
///
/// For update operations, you can specify either Accounts
or OrganizationalUnitIds
.
/// For create and delete operations, specify OrganizationalUnitIds
.
///
///
public partial class DeploymentTargets
{
private AccountFilterType _accountFilterType;
private List _accounts = new List();
private string _accountsUrl;
private List _organizationalUnitIds = new List();
///
/// Gets and sets the property AccountFilterType.
///
/// Limit deployment targets to individual accounts or include additional accounts with
/// provided OUs.
///
///
///
/// The following is a list of possible values for the AccountFilterType
/// operation.
///
/// -
///
///
INTERSECTION
: StackSets deploys to the accounts specified in Accounts
/// parameter.
///
/// -
///
///
DIFFERENCE
: StackSets excludes the accounts specified in Accounts
/// parameter. This enables user to avoid certain accounts within an OU such as suspended
/// accounts.
///
/// -
///
///
UNION
: StackSets includes additional accounts deployment targets.
///
///
///
/// This is the default value if AccountFilterType
is not provided. This
/// enables user to update an entire OU and individual accounts from a different OU in
/// one request, which used to be two separate requests.
///
/// -
///
///
NONE
: Deploys to all the accounts in specified organizational units
/// (OU).
///
///
///
public AccountFilterType AccountFilterType
{
get { return this._accountFilterType; }
set { this._accountFilterType = value; }
}
// Check to see if AccountFilterType property is set
internal bool IsSetAccountFilterType()
{
return this._accountFilterType != null;
}
///
/// Gets and sets the property Accounts.
///
/// The names of one or more Amazon Web Services accounts for which you want to deploy
/// stack set updates.
///
///
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 AccountsUrl.
///
/// Returns the value of the AccountsUrl
property.
///
///
[AWSProperty(Min=1, Max=5120)]
public string AccountsUrl
{
get { return this._accountsUrl; }
set { this._accountsUrl = value; }
}
// Check to see if AccountsUrl property is set
internal bool IsSetAccountsUrl()
{
return this._accountsUrl != null;
}
///
/// Gets and sets the property OrganizationalUnitIds.
///
/// The organization root ID or organizational unit (OU) IDs to which StackSets deploys.
///
///
public List OrganizationalUnitIds
{
get { return this._organizationalUnitIds; }
set { this._organizationalUnitIds = value; }
}
// Check to see if OrganizationalUnitIds property is set
internal bool IsSetOrganizationalUnitIds()
{
return this._organizationalUnitIds != null && this._organizationalUnitIds.Count > 0;
}
}
}