Class: AWSCDK::Deadline::CfnFleet::ServiceManagedEC2FleetConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
deadline/cfn_fleet.rb

Overview

The configuration details for a service managed EC2 fleet.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(instance_capabilities:, instance_market_options:, auto_scaling_configuration: nil, persistent_volume_configuration: nil, storage_profile_id: nil, vpc_configuration: nil) ⇒ ServiceManagedEC2FleetConfigurationProperty

Returns a new instance of ServiceManagedEC2FleetConfigurationProperty.

Parameters:



1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
# File 'deadline/cfn_fleet.rb', line 1557

def initialize(instance_capabilities:, instance_market_options:, auto_scaling_configuration: nil, persistent_volume_configuration: nil, storage_profile_id: nil, vpc_configuration: nil)
  @instance_capabilities = instance_capabilities.is_a?(Hash) ? ::AWSCDK::Deadline::CfnFleet::ServiceManagedEC2InstanceCapabilitiesProperty.new(**instance_capabilities.transform_keys(&:to_sym)) : instance_capabilities
  Jsii::Type.check_type(@instance_capabilities, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kZWFkbGluZS5DZm5GbGVldC5TZXJ2aWNlTWFuYWdlZEVjMkluc3RhbmNlQ2FwYWJpbGl0aWVzUHJvcGVydHkifV19fQ==")), "instanceCapabilities")
  @instance_market_options = instance_market_options.is_a?(Hash) ? ::AWSCDK::Deadline::CfnFleet::ServiceManagedEC2InstanceMarketOptionsProperty.new(**instance_market_options.transform_keys(&:to_sym)) : instance_market_options
  Jsii::Type.check_type(@instance_market_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kZWFkbGluZS5DZm5GbGVldC5TZXJ2aWNlTWFuYWdlZEVjMkluc3RhbmNlTWFya2V0T3B0aW9uc1Byb3BlcnR5In1dfX0=")), "instanceMarketOptions")
  @auto_scaling_configuration = auto_scaling_configuration.is_a?(Hash) ? ::AWSCDK::Deadline::CfnFleet::ServiceManagedEC2AutoScalingConfigurationProperty.new(**auto_scaling_configuration.transform_keys(&:to_sym)) : auto_scaling_configuration
  Jsii::Type.check_type(@auto_scaling_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kZWFkbGluZS5DZm5GbGVldC5TZXJ2aWNlTWFuYWdlZEVjMkF1dG9TY2FsaW5nQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "autoScalingConfiguration") unless @auto_scaling_configuration.nil?
  @persistent_volume_configuration = persistent_volume_configuration.is_a?(Hash) ? ::AWSCDK::Deadline::CfnFleet::PersistentVolumeConfigurationProperty.new(**persistent_volume_configuration.transform_keys(&:to_sym)) : persistent_volume_configuration
  Jsii::Type.check_type(@persistent_volume_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kZWFkbGluZS5DZm5GbGVldC5QZXJzaXN0ZW50Vm9sdW1lQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "persistentVolumeConfiguration") unless @persistent_volume_configuration.nil?
  @storage_profile_id = storage_profile_id
  Jsii::Type.check_type(@storage_profile_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "storageProfileId") unless @storage_profile_id.nil?
  @vpc_configuration = vpc_configuration.is_a?(Hash) ? ::AWSCDK::Deadline::CfnFleet::VPCConfigurationProperty.new(**vpc_configuration.transform_keys(&:to_sym)) : vpc_configuration
  Jsii::Type.check_type(@vpc_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kZWFkbGluZS5DZm5GbGVldC5WcGNDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "vpcConfiguration") unless @vpc_configuration.nil?
end

Instance Attribute Details

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



1587
1588
1589
# File 'deadline/cfn_fleet.rb', line 1587

def persistent_volume_configuration
  @persistent_volume_configuration
end

#storage_profile_idString? (readonly)

The storage profile ID for the service managed EC2 fleet.



1592
1593
1594
# File 'deadline/cfn_fleet.rb', line 1592

def storage_profile_id
  @storage_profile_id
end

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

The VPC configuration for the service managed EC2 fleet.



1597
1598
1599
# File 'deadline/cfn_fleet.rb', line 1597

def vpc_configuration
  @vpc_configuration
end

Class Method Details

.jsii_propertiesObject



1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
# File 'deadline/cfn_fleet.rb', line 1599

def self.jsii_properties
  {
    :instance_capabilities => "instanceCapabilities",
    :instance_market_options => "instanceMarketOptions",
    :auto_scaling_configuration => "autoScalingConfiguration",
    :persistent_volume_configuration => "persistentVolumeConfiguration",
    :storage_profile_id => "storageProfileId",
    :vpc_configuration => "vpcConfiguration",
  }
end

Instance Method Details

#to_jsiiObject



1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
# File 'deadline/cfn_fleet.rb', line 1610

def to_jsii
  result = {}
  result.merge!({
    "instanceCapabilities" => @instance_capabilities,
    "instanceMarketOptions" => @instance_market_options,
    "autoScalingConfiguration" => @auto_scaling_configuration,
    "persistentVolumeConfiguration" => @persistent_volume_configuration,
    "storageProfileId" => @storage_profile_id,
    "vpcConfiguration" => @vpc_configuration,
  })
  result.compact
end