Class: AWSCDK::ImageBuilder::CfnDistributionConfiguration::FastLaunchConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
image_builder/cfn_distribution_configuration.rb

Overview

Define and configure faster launching for output Windows AMIs.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(account_id: nil, enabled: nil, launch_template: nil, max_parallel_launches: nil, snapshot_configuration: nil) ⇒ FastLaunchConfigurationProperty

Returns a new instance of FastLaunchConfigurationProperty.

Parameters:



817
818
819
820
821
822
823
824
825
826
827
828
# File 'image_builder/cfn_distribution_configuration.rb', line 817

def initialize(account_id: nil, enabled: nil, launch_template: nil, max_parallel_launches: nil, snapshot_configuration: nil)
  @account_id = 
  Jsii::Type.check_type(@account_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "accountId") unless @account_id.nil?
  @enabled = enabled
  Jsii::Type.check_type(@enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enabled") unless @enabled.nil?
  @launch_template = launch_template.is_a?(Hash) ? ::AWSCDK::ImageBuilder::CfnDistributionConfiguration::FastLaunchLaunchTemplateSpecificationProperty.new(**launch_template.transform_keys(&:to_sym)) : launch_template
  Jsii::Type.check_type(@launch_template, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pbWFnZWJ1aWxkZXIuQ2ZuRGlzdHJpYnV0aW9uQ29uZmlndXJhdGlvbi5GYXN0TGF1bmNoTGF1bmNoVGVtcGxhdGVTcGVjaWZpY2F0aW9uUHJvcGVydHkifV19fQ==")), "launchTemplate") unless @launch_template.nil?
  @max_parallel_launches = max_parallel_launches
  Jsii::Type.check_type(@max_parallel_launches, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "maxParallelLaunches") unless @max_parallel_launches.nil?
  @snapshot_configuration = snapshot_configuration.is_a?(Hash) ? ::AWSCDK::ImageBuilder::CfnDistributionConfiguration::FastLaunchSnapshotConfigurationProperty.new(**snapshot_configuration.transform_keys(&:to_sym)) : snapshot_configuration
  Jsii::Type.check_type(@snapshot_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pbWFnZWJ1aWxkZXIuQ2ZuRGlzdHJpYnV0aW9uQ29uZmlndXJhdGlvbi5GYXN0TGF1bmNoU25hcHNob3RDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "snapshotConfiguration") unless @snapshot_configuration.nil?
end

Instance Attribute Details

#account_idString? (readonly)

The owner account ID for the fast-launch enabled Windows AMI.



834
835
836
# File 'image_builder/cfn_distribution_configuration.rb', line 834

def 
  @account_id
end

#enabledBoolean, ... (readonly)

A Boolean that represents the current state of faster launching for the Windows AMI.

Set to true to start using Windows faster launching, or false to stop using it.



841
842
843
# File 'image_builder/cfn_distribution_configuration.rb', line 841

def enabled
  @enabled
end

#launch_templateAWSCDK::IResolvable, ... (readonly)

The launch template that the fast-launch enabled Windows AMI uses when it launches Windows instances to create pre-provisioned snapshots.



846
847
848
# File 'image_builder/cfn_distribution_configuration.rb', line 846

def launch_template
  @launch_template
end

#max_parallel_launchesNumeric? (readonly)

The maximum number of parallel instances that are launched for creating resources.



851
852
853
# File 'image_builder/cfn_distribution_configuration.rb', line 851

def max_parallel_launches
  @max_parallel_launches
end

#snapshot_configurationAWSCDK::IResolvable, ... (readonly)

Configuration settings for managing the number of snapshots that are created from pre-provisioned instances for the Windows AMI when faster launching is enabled.



856
857
858
# File 'image_builder/cfn_distribution_configuration.rb', line 856

def snapshot_configuration
  @snapshot_configuration
end

Class Method Details

.jsii_propertiesObject



858
859
860
861
862
863
864
865
866
# File 'image_builder/cfn_distribution_configuration.rb', line 858

def self.jsii_properties
  {
    :account_id => "accountId",
    :enabled => "enabled",
    :launch_template => "launchTemplate",
    :max_parallel_launches => "maxParallelLaunches",
    :snapshot_configuration => "snapshotConfiguration",
  }
end

Instance Method Details

#to_jsiiObject



868
869
870
871
872
873
874
875
876
877
878
# File 'image_builder/cfn_distribution_configuration.rb', line 868

def to_jsii
  result = {}
  result.merge!({
    "accountId" => @account_id,
    "enabled" => @enabled,
    "launchTemplate" => @launch_template,
    "maxParallelLaunches" => @max_parallel_launches,
    "snapshotConfiguration" => @snapshot_configuration,
  })
  result.compact
end