Class: AWSCDK::ServiceCatalog::CfnCloudFormationProvisionedProduct::ProvisioningPreferencesProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
service_catalog/cfn_cloud_formation_provisioned_product.rb

Overview

The user-defined preferences that will be applied when updating a provisioned product.

Not all preferences are applicable to all provisioned product type

One or more AWS accounts that will have access to the provisioned product.

Applicable only to a CFN_STACKSET provisioned product type.

The AWS accounts specified should be within the list of accounts in the STACKSET constraint. To get the list of accounts in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all accounts from the STACKSET constraint.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(stack_set_accounts: nil, stack_set_failure_tolerance_count: nil, stack_set_failure_tolerance_percentage: nil, stack_set_max_concurrency_count: nil, stack_set_max_concurrency_percentage: nil, stack_set_operation_type: nil, stack_set_regions: nil) ⇒ ProvisioningPreferencesProperty

Returns a new instance of ProvisioningPreferencesProperty.

Parameters:

  • stack_set_accounts (Array<String>, nil) (defaults to: nil)

    One or more AWS accounts where the provisioned product will be available.

  • stack_set_failure_tolerance_count (Numeric, nil) (defaults to: nil)

    The number of accounts, per Region, for which this operation can fail before AWS Service Catalog stops the operation in that Region.

  • stack_set_failure_tolerance_percentage (Numeric, nil) (defaults to: nil)

    The percentage of accounts, per Region, for which this stack operation can fail before AWS Service Catalog stops the operation in that Region.

  • stack_set_max_concurrency_count (Numeric, nil) (defaults to: nil)

    The maximum number of accounts in which to perform this operation at one time.

  • stack_set_max_concurrency_percentage (Numeric, nil) (defaults to: nil)

    The maximum percentage of accounts in which to perform this operation at one time.

  • stack_set_operation_type (String, nil) (defaults to: nil)

    Determines what action AWS Service Catalog performs to a stack set or a stack instance represented by the provisioned product.

  • stack_set_regions (Array<String>, nil) (defaults to: nil)

    One or more AWS Regions where the provisioned product will be available.



739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
# File 'service_catalog/cfn_cloud_formation_provisioned_product.rb', line 739

def initialize(stack_set_accounts: nil, stack_set_failure_tolerance_count: nil, stack_set_failure_tolerance_percentage: nil, stack_set_max_concurrency_count: nil, stack_set_max_concurrency_percentage: nil, stack_set_operation_type: nil, stack_set_regions: nil)
  @stack_set_accounts = stack_set_accounts
  Jsii::Type.check_type(@stack_set_accounts, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "stackSetAccounts") unless @stack_set_accounts.nil?
  @stack_set_failure_tolerance_count = stack_set_failure_tolerance_count
  Jsii::Type.check_type(@stack_set_failure_tolerance_count, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "stackSetFailureToleranceCount") unless @stack_set_failure_tolerance_count.nil?
  @stack_set_failure_tolerance_percentage = stack_set_failure_tolerance_percentage
  Jsii::Type.check_type(@stack_set_failure_tolerance_percentage, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "stackSetFailureTolerancePercentage") unless @stack_set_failure_tolerance_percentage.nil?
  @stack_set_max_concurrency_count = stack_set_max_concurrency_count
  Jsii::Type.check_type(@stack_set_max_concurrency_count, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "stackSetMaxConcurrencyCount") unless @stack_set_max_concurrency_count.nil?
  @stack_set_max_concurrency_percentage = stack_set_max_concurrency_percentage
  Jsii::Type.check_type(@stack_set_max_concurrency_percentage, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "stackSetMaxConcurrencyPercentage") unless @stack_set_max_concurrency_percentage.nil?
  @stack_set_operation_type = stack_set_operation_type
  Jsii::Type.check_type(@stack_set_operation_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "stackSetOperationType") unless @stack_set_operation_type.nil?
  @stack_set_regions = stack_set_regions
  Jsii::Type.check_type(@stack_set_regions, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "stackSetRegions") unless @stack_set_regions.nil?
end

Instance Attribute Details

#stack_set_accountsArray<String>? (readonly)

One or more AWS accounts where the provisioned product will be available.

Applicable only to a CFN_STACKSET provisioned product type.

The specified accounts should be within the list of accounts from the STACKSET constraint. To get the list of accounts in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all acounts from the STACKSET constraint.



766
767
768
# File 'service_catalog/cfn_cloud_formation_provisioned_product.rb', line 766

def stack_set_accounts
  @stack_set_accounts
end

#stack_set_failure_tolerance_countNumeric? (readonly)

The number of accounts, per Region, for which this operation can fail before AWS Service Catalog stops the operation in that Region.

If the operation is stopped in a Region, AWS Service Catalog doesn't attempt the operation in any subsequent Regions.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage , but not both.

The default value is 0 if no value is specified.



779
780
781
# File 'service_catalog/cfn_cloud_formation_provisioned_product.rb', line 779

def stack_set_failure_tolerance_count
  @stack_set_failure_tolerance_count
end

#stack_set_failure_tolerance_percentageNumeric? (readonly)

The percentage of accounts, per Region, for which this stack operation can fail before AWS Service Catalog stops the operation in that Region.

If the operation is stopped in a Region, AWS Service Catalog doesn't attempt the operation in any subsequent Regions.

When calculating the number of accounts based on the specified percentage, AWS Service Catalog rounds down to the next whole number.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage , but not both.



792
793
794
# File 'service_catalog/cfn_cloud_formation_provisioned_product.rb', line 792

def stack_set_failure_tolerance_percentage
  @stack_set_failure_tolerance_percentage
end

#stack_set_max_concurrency_countNumeric? (readonly)

The maximum number of accounts in which to perform this operation at one time.

This is dependent on the value of StackSetFailureToleranceCount . StackSetMaxConcurrentCount is at most one more than the StackSetFailureToleranceCount .

Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetMaxConcurrentCount or StackSetMaxConcurrentPercentage , but not both.



805
806
807
# File 'service_catalog/cfn_cloud_formation_provisioned_product.rb', line 805

def stack_set_max_concurrency_count
  @stack_set_max_concurrency_count
end

#stack_set_max_concurrency_percentageNumeric? (readonly)

The maximum percentage of accounts in which to perform this operation at one time.

When calculating the number of accounts based on the specified percentage, AWS Service Catalog rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, AWS Service Catalog sets the number as 1 instead.

Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetMaxConcurrentCount or StackSetMaxConcurrentPercentage , but not both.



818
819
820
# File 'service_catalog/cfn_cloud_formation_provisioned_product.rb', line 818

def stack_set_max_concurrency_percentage
  @stack_set_max_concurrency_percentage
end

#stack_set_operation_typeString? (readonly)

Determines what action AWS Service Catalog performs to a stack set or a stack instance represented by the provisioned product.

The default value is UPDATE if nothing is specified.

Applicable only to a CFN_STACKSET provisioned product type.

  • CREATE - Creates a new stack instance in the stack set represented by the provisioned product. In this case, only new stack instances are created based on accounts and Regions; if new ProductId or ProvisioningArtifactID are passed, they will be ignored.
  • UPDATE - Updates the stack set represented by the provisioned product and also its stack instances.
  • DELETE - Deletes a stack instance in the stack set represented by the provisioned product.


831
832
833
# File 'service_catalog/cfn_cloud_formation_provisioned_product.rb', line 831

def stack_set_operation_type
  @stack_set_operation_type
end

#stack_set_regionsArray<String>? (readonly)

One or more AWS Regions where the provisioned product will be available.

Applicable only to a CFN_STACKSET provisioned product type.

The specified Regions should be within the list of Regions from the STACKSET constraint. To get the list of Regions in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all Regions from the STACKSET constraint.



842
843
844
# File 'service_catalog/cfn_cloud_formation_provisioned_product.rb', line 842

def stack_set_regions
  @stack_set_regions
end

Class Method Details

.jsii_propertiesObject



844
845
846
847
848
849
850
851
852
853
854
# File 'service_catalog/cfn_cloud_formation_provisioned_product.rb', line 844

def self.jsii_properties
  {
    :stack_set_accounts => "stackSetAccounts",
    :stack_set_failure_tolerance_count => "stackSetFailureToleranceCount",
    :stack_set_failure_tolerance_percentage => "stackSetFailureTolerancePercentage",
    :stack_set_max_concurrency_count => "stackSetMaxConcurrencyCount",
    :stack_set_max_concurrency_percentage => "stackSetMaxConcurrencyPercentage",
    :stack_set_operation_type => "stackSetOperationType",
    :stack_set_regions => "stackSetRegions",
  }
end

Instance Method Details

#to_jsiiObject



856
857
858
859
860
861
862
863
864
865
866
867
868
# File 'service_catalog/cfn_cloud_formation_provisioned_product.rb', line 856

def to_jsii
  result = {}
  result.merge!({
    "stackSetAccounts" => @stack_set_accounts,
    "stackSetFailureToleranceCount" => @stack_set_failure_tolerance_count,
    "stackSetFailureTolerancePercentage" => @stack_set_failure_tolerance_percentage,
    "stackSetMaxConcurrencyCount" => @stack_set_max_concurrency_count,
    "stackSetMaxConcurrencyPercentage" => @stack_set_max_concurrency_percentage,
    "stackSetOperationType" => @stack_set_operation_type,
    "stackSetRegions" => @stack_set_regions,
  })
  result.compact
end