Class: AWSCDK::ServiceCatalog::ProductStackProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::ServiceCatalog::ProductStackProps
- Defined in:
- service_catalog/product_stack_props.rb
Overview
Product stack props.
Instance Attribute Summary collapse
-
#analytics_reporting ⇒ Boolean?
readonly
Include runtime versioning information in this Stack.
-
#asset_bucket ⇒ AWSCDK::S3::IBucket?
readonly
A Bucket can be passed to store assets, enabling ProductStack Asset support.
-
#description ⇒ String?
readonly
A description of the stack.
-
#memory_limit ⇒ Numeric?
readonly
The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket.
-
#server_side_encryption ⇒ AWSCDK::S3Deployment::ServerSideEncryption?
readonly
A ServerSideEncryption can be enabled to encrypt assets that are put into assetBucket.
-
#server_side_encryption_aws_kms_key_id ⇒ String?
readonly
For AWS_KMS ServerSideEncryption a KMS KeyId must be provided which will be used to encrypt assets.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(analytics_reporting: nil, asset_bucket: nil, description: nil, memory_limit: nil, server_side_encryption: nil, server_side_encryption_aws_kms_key_id: nil) ⇒ ProductStackProps
constructor
A new instance of ProductStackProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(analytics_reporting: nil, asset_bucket: nil, description: nil, memory_limit: nil, server_side_encryption: nil, server_side_encryption_aws_kms_key_id: nil) ⇒ ProductStackProps
Returns a new instance of ProductStackProps.
13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'service_catalog/product_stack_props.rb', line 13 def initialize(analytics_reporting: nil, asset_bucket: nil, description: nil, memory_limit: nil, server_side_encryption: nil, server_side_encryption_aws_kms_key_id: nil) @analytics_reporting = analytics_reporting Jsii::Type.check_type(@analytics_reporting, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "analyticsReporting") unless @analytics_reporting.nil? @asset_bucket = asset_bucket Jsii::Type.check_type(@asset_bucket, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfczMuSUJ1Y2tldCJ9")), "assetBucket") unless @asset_bucket.nil? @description = description Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil? @memory_limit = memory_limit Jsii::Type.check_type(@memory_limit, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "memoryLimit") unless @memory_limit.nil? @server_side_encryption = server_side_encryption Jsii::Type.check_type(@server_side_encryption, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfczNfZGVwbG95bWVudC5TZXJ2ZXJTaWRlRW5jcnlwdGlvbiJ9")), "serverSideEncryption") unless @server_side_encryption.nil? @server_side_encryption_aws_kms_key_id = server_side_encryption_aws_kms_key_id Jsii::Type.check_type(@server_side_encryption_aws_kms_key_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "serverSideEncryptionAwsKmsKeyId") unless @server_side_encryption_aws_kms_key_id.nil? end |
Instance Attribute Details
#analytics_reporting ⇒ Boolean? (readonly)
Default: - analyticsReporting setting of containing App, or value of 'aws:cdk:version-reporting' context key
Include runtime versioning information in this Stack.
32 33 34 |
# File 'service_catalog/product_stack_props.rb', line 32 def analytics_reporting @analytics_reporting end |
#asset_bucket ⇒ AWSCDK::S3::IBucket? (readonly)
Default: - No Bucket provided and Assets will not be supported.
A Bucket can be passed to store assets, enabling ProductStack Asset support.
37 38 39 |
# File 'service_catalog/product_stack_props.rb', line 37 def asset_bucket @asset_bucket end |
#description ⇒ String? (readonly)
Default: - No description.
A description of the stack.
42 43 44 |
# File 'service_catalog/product_stack_props.rb', line 42 def description @description end |
#memory_limit ⇒ Numeric? (readonly)
Default: 128
The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket.
If you are deploying large files, you will need to increase this number accordingly.
50 51 52 |
# File 'service_catalog/product_stack_props.rb', line 50 def memory_limit @memory_limit end |
#server_side_encryption ⇒ AWSCDK::S3Deployment::ServerSideEncryption? (readonly)
Default: - No encryption is used
A ServerSideEncryption can be enabled to encrypt assets that are put into assetBucket.
55 56 57 |
# File 'service_catalog/product_stack_props.rb', line 55 def server_side_encryption @server_side_encryption end |
#server_side_encryption_aws_kms_key_id ⇒ String? (readonly)
Default: - No KMS KeyId and SSE_KMS encryption cannot be used
For AWS_KMS ServerSideEncryption a KMS KeyId must be provided which will be used to encrypt assets.
60 61 62 |
# File 'service_catalog/product_stack_props.rb', line 60 def server_side_encryption_aws_kms_key_id @server_side_encryption_aws_kms_key_id end |
Class Method Details
.jsii_properties ⇒ Object
62 63 64 65 66 67 68 69 70 71 |
# File 'service_catalog/product_stack_props.rb', line 62 def self.jsii_properties { :analytics_reporting => "analyticsReporting", :asset_bucket => "assetBucket", :description => "description", :memory_limit => "memoryLimit", :server_side_encryption => "serverSideEncryption", :server_side_encryption_aws_kms_key_id => "serverSideEncryptionAwsKmsKeyId", } end |
Instance Method Details
#to_jsii ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'service_catalog/product_stack_props.rb', line 73 def to_jsii result = {} result.merge!({ "analyticsReporting" => @analytics_reporting, "assetBucket" => @asset_bucket, "description" => @description, "memoryLimit" => @memory_limit, "serverSideEncryption" => @server_side_encryption, "serverSideEncryptionAwsKmsKeyId" => @server_side_encryption_aws_kms_key_id, }) result.compact end |