Class: AWSCDK::EMR::CfnInstanceGroupConfig::ConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
emr/cfn_instance_group_config.rb

Overview

Configurations is a property of the AWS::EMR::Cluster resource that specifies the configuration of applications on an Amazon EMR cluster.

Configurations are optional. You can use them to have EMR customize applications and software bundled with Amazon EMR when a cluster is created. A configuration consists of a classification, properties, and optional nested configurations. A classification refers to an application-specific configuration file. Properties are the settings you want to change in that file. For more information, see Configuring Applications .

Applies only to Amazon EMR releases 4.0 and later.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(classification: nil, configuration_properties: nil, configurations: nil) ⇒ ConfigurationProperty

Returns a new instance of ConfigurationProperty.

Parameters:

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

    The classification within a configuration.

  • configuration_properties (AWSCDK::IResolvable, Hash{String => String}, nil) (defaults to: nil)

    Within a configuration classification, a set of properties that represent the settings that you want to change in the configuration file.

  • configurations (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::EMR::CfnInstanceGroupConfig::ConfigurationProperty>, nil) (defaults to: nil)

    A list of additional configurations to apply within a configuration object.



812
813
814
815
816
817
818
819
# File 'emr/cfn_instance_group_config.rb', line 812

def initialize(classification: nil, configuration_properties: nil, configurations: nil)
  @classification = classification
  Jsii::Type.check_type(@classification, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "classification") unless @classification.nil?
  @configuration_properties = configuration_properties
  Jsii::Type.check_type(@configuration_properties, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsicHJpbWl0aXZlIjoic3RyaW5nIn0sImtpbmQiOiJtYXAifX1dfX0=")), "configurationProperties") unless @configuration_properties.nil?
  @configurations = configurations
  Jsii::Type.check_type(@configurations, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yLkNmbkluc3RhbmNlR3JvdXBDb25maWcuQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "configurations") unless @configurations.nil?
end

Instance Attribute Details

#classificationString? (readonly)

The classification within a configuration.



825
826
827
# File 'emr/cfn_instance_group_config.rb', line 825

def classification
  @classification
end

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

Within a configuration classification, a set of properties that represent the settings that you want to change in the configuration file.

Duplicates not allowed.



832
833
834
# File 'emr/cfn_instance_group_config.rb', line 832

def configuration_properties
  @configuration_properties
end

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

A list of additional configurations to apply within a configuration object.



837
838
839
# File 'emr/cfn_instance_group_config.rb', line 837

def configurations
  @configurations
end

Class Method Details

.jsii_propertiesObject



839
840
841
842
843
844
845
# File 'emr/cfn_instance_group_config.rb', line 839

def self.jsii_properties
  {
    :classification => "classification",
    :configuration_properties => "configurationProperties",
    :configurations => "configurations",
  }
end

Instance Method Details

#to_jsiiObject



847
848
849
850
851
852
853
854
855
# File 'emr/cfn_instance_group_config.rb', line 847

def to_jsii
  result = {}
  result.merge!({
    "classification" => @classification,
    "configurationProperties" => @configuration_properties,
    "configurations" => @configurations,
  })
  result.compact
end