io.github.cdklabs.cdk.stacksets.StackSetTarget Maven / Gradle / Ivy
package io.github.cdklabs.cdk.stacksets;
/**
* (experimental) Which organizational units and/or accounts the stack set should be deployed to.
*
* fromAccounts
can be used to deploy the stack set to specific AWS accounts
*
* fromOrganizationalUnits
can be used to deploy the stack set to specific organizational units
* and optionally include additional accounts from other OUs, or exclude accounts from the specified
* OUs
*
* Example:
*
*
* // deploy to specific accounts
* StackSetTarget.fromAccounts(AccountsTargetOptions.builder()
* .accounts(List.of("11111111111", "22222222222"))
* .regions(List.of("us-east-1", "us-east-2"))
* .build());
* // deploy to OUs and 1 additional account
* StackSetTarget.fromOrganizationalUnits(OrganizationsTargetOptions.builder()
* .regions(List.of("us-east-1", "us-east-2"))
* .organizationalUnits(List.of("ou-1111111", "ou-2222222"))
* .additionalAccounts(List.of("33333333333"))
* .build());
* // deploy to OUs but exclude 1 account
* StackSetTarget.fromOrganizationalUnits(OrganizationsTargetOptions.builder()
* .regions(List.of("us-east-1", "us-east-2"))
* .organizationalUnits(List.of("ou-1111111", "ou-2222222"))
* .excludeAccounts(List.of("11111111111"))
* .build());
*
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.83.0 (build fd4544d)", date = "2023-06-13T00:17:42.441Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Jsii(module = io.github.cdklabs.cdk.stacksets.$Module.class, fqn = "cdk-stacksets.StackSetTarget")
public abstract class StackSetTarget extends software.amazon.jsii.JsiiObject {
protected StackSetTarget(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected StackSetTarget(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
protected StackSetTarget() {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this);
}
/**
* (experimental) Deploy the StackSet to a list of accounts.
*
* Example:
*
*
* StackSetTarget.fromAccounts(AccountsTargetOptions.builder()
* .accounts(List.of("11111111111", "22222222222"))
* .regions(List.of("us-east-1", "us-east-2"))
* .build());
*
*
* @param options This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static @org.jetbrains.annotations.NotNull io.github.cdklabs.cdk.stacksets.StackSetTarget fromAccounts(final @org.jetbrains.annotations.NotNull io.github.cdklabs.cdk.stacksets.AccountsTargetOptions options) {
return software.amazon.jsii.JsiiObject.jsiiStaticCall(io.github.cdklabs.cdk.stacksets.StackSetTarget.class, "fromAccounts", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.cdk.stacksets.StackSetTarget.class), new Object[] { java.util.Objects.requireNonNull(options, "options is required") });
}
/**
* (experimental) Deploy the StackSet to a list of AWS Organizations organizational units.
*
* You can optionally include/exclude individual AWS accounts.
*
* Example:
*
*
* StackSetTarget.fromOrganizationalUnits(OrganizationsTargetOptions.builder()
* .regions(List.of("us-east-1", "us-east-2"))
* .organizationalUnits(List.of("ou-1111111", "ou-2222222"))
* .build());
*
*
* @param options This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static @org.jetbrains.annotations.NotNull io.github.cdklabs.cdk.stacksets.StackSetTarget fromOrganizationalUnits(final @org.jetbrains.annotations.NotNull io.github.cdklabs.cdk.stacksets.OrganizationsTargetOptions options) {
return software.amazon.jsii.JsiiObject.jsiiStaticCall(io.github.cdklabs.cdk.stacksets.StackSetTarget.class, "fromOrganizationalUnits", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.cdk.stacksets.StackSetTarget.class), new Object[] { java.util.Objects.requireNonNull(options, "options is required") });
}
/**
* A proxy class which represents a concrete javascript instance of this type.
*/
@software.amazon.jsii.Internal
private static final class Jsii$Proxy extends io.github.cdklabs.cdk.stacksets.StackSetTarget {
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
}
}