Class: AWSCDK::EMRServerless::CfnApplicationProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::EMRServerless::CfnApplicationProps
- Defined in:
- emr_serverless/cfn_application_props.rb
Overview
Properties for defining a CfnApplication.
Instance Attribute Summary collapse
-
#architecture ⇒ String?
readonly
The CPU architecture of an application.
-
#auto_start_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The configuration for an application to automatically start on job submission.
-
#auto_stop_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The configuration for an application to automatically stop after a certain amount of time being idle.
-
#identity_center_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The IAM Identity Center configuration applied to enable trusted identity propagation.
-
#image_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The image configuration applied to all worker types.
-
#initial_capacity ⇒ AWSCDK::IResolvable, ...
readonly
The initial capacity of the application.
-
#interactive_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The interactive configuration object that enables the interactive use cases for an application.
-
#maximum_capacity ⇒ AWSCDK::IResolvable, ...
readonly
The maximum capacity of the application.
-
#monitoring_configuration ⇒ AWSCDK::IResolvable, ...
readonly
A configuration specification to be used when provisioning an application.
-
#name ⇒ String?
readonly
The name of the application.
-
#network_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The network configuration for customer VPC connectivity for the application.
-
#release_label ⇒ String
readonly
The EMR release associated with the application.
-
#runtime_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The Configuration specifications of an application.
-
#scheduler_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The scheduler configuration for batch and streaming jobs running on this application.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
The tags assigned to the application.
-
#type ⇒ String
readonly
The type of application, such as Spark or Hive.
-
#worker_type_specifications ⇒ AWSCDK::IResolvable, ...
readonly
The specification applied to each worker type.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(release_label:, type:, architecture: nil, auto_start_configuration: nil, auto_stop_configuration: nil, identity_center_configuration: nil, image_configuration: nil, initial_capacity: nil, interactive_configuration: nil, maximum_capacity: nil, monitoring_configuration: nil, name: nil, network_configuration: nil, runtime_configuration: nil, scheduler_configuration: nil, tags: nil, worker_type_specifications: nil) ⇒ CfnApplicationProps
constructor
A new instance of CfnApplicationProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(release_label:, type:, architecture: nil, auto_start_configuration: nil, auto_stop_configuration: nil, identity_center_configuration: nil, image_configuration: nil, initial_capacity: nil, interactive_configuration: nil, maximum_capacity: nil, monitoring_configuration: nil, name: nil, network_configuration: nil, runtime_configuration: nil, scheduler_configuration: nil, tags: nil, worker_type_specifications: nil) ⇒ CfnApplicationProps
Returns a new instance of CfnApplicationProps.
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'emr_serverless/cfn_application_props.rb', line 26 def initialize(release_label:, type:, architecture: nil, auto_start_configuration: nil, auto_stop_configuration: nil, identity_center_configuration: nil, image_configuration: nil, initial_capacity: nil, interactive_configuration: nil, maximum_capacity: nil, monitoring_configuration: nil, name: nil, network_configuration: nil, runtime_configuration: nil, scheduler_configuration: nil, tags: nil, worker_type_specifications: nil) @release_label = release_label Jsii::Type.check_type(@release_label, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "releaseLabel") @type = type Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type") @architecture = architecture Jsii::Type.check_type(@architecture, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "architecture") unless @architecture.nil? @auto_start_configuration = auto_start_configuration.is_a?(Hash) ? ::AWSCDK::EMRServerless::CfnApplication::AutoStartConfigurationProperty.new(**auto_start_configuration.transform_keys(&:to_sym)) : auto_start_configuration Jsii::Type.check_type(@auto_start_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXJzZXJ2ZXJsZXNzLkNmbkFwcGxpY2F0aW9uLkF1dG9TdGFydENvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "autoStartConfiguration") unless @auto_start_configuration.nil? @auto_stop_configuration = auto_stop_configuration.is_a?(Hash) ? ::AWSCDK::EMRServerless::CfnApplication::AutoStopConfigurationProperty.new(**auto_stop_configuration.transform_keys(&:to_sym)) : auto_stop_configuration Jsii::Type.check_type(@auto_stop_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXJzZXJ2ZXJsZXNzLkNmbkFwcGxpY2F0aW9uLkF1dG9TdG9wQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "autoStopConfiguration") unless @auto_stop_configuration.nil? @identity_center_configuration = identity_center_configuration.is_a?(Hash) ? ::AWSCDK::EMRServerless::CfnApplication::IdentityCenterConfigurationProperty.new(**identity_center_configuration.transform_keys(&:to_sym)) : identity_center_configuration Jsii::Type.check_type(@identity_center_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXJzZXJ2ZXJsZXNzLkNmbkFwcGxpY2F0aW9uLklkZW50aXR5Q2VudGVyQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "identityCenterConfiguration") unless @identity_center_configuration.nil? @image_configuration = image_configuration.is_a?(Hash) ? ::AWSCDK::EMRServerless::CfnApplication::ImageConfigurationInputProperty.new(**image_configuration.transform_keys(&:to_sym)) : image_configuration Jsii::Type.check_type(@image_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXJzZXJ2ZXJsZXNzLkNmbkFwcGxpY2F0aW9uLkltYWdlQ29uZmlndXJhdGlvbklucHV0UHJvcGVydHkifV19fQ==")), "imageConfiguration") unless @image_configuration.nil? @initial_capacity = initial_capacity Jsii::Type.check_type(@initial_capacity, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yc2VydmVybGVzcy5DZm5BcHBsaWNhdGlvbi5Jbml0aWFsQ2FwYWNpdHlDb25maWdLZXlWYWx1ZVBhaXJQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "initialCapacity") unless @initial_capacity.nil? @interactive_configuration = interactive_configuration.is_a?(Hash) ? ::AWSCDK::EMRServerless::CfnApplication::InteractiveConfigurationProperty.new(**interactive_configuration.transform_keys(&:to_sym)) : interactive_configuration Jsii::Type.check_type(@interactive_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXJzZXJ2ZXJsZXNzLkNmbkFwcGxpY2F0aW9uLkludGVyYWN0aXZlQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "interactiveConfiguration") unless @interactive_configuration.nil? @maximum_capacity = maximum_capacity.is_a?(Hash) ? ::AWSCDK::EMRServerless::CfnApplication::MaximumAllowedResourcesProperty.new(**maximum_capacity.transform_keys(&:to_sym)) : maximum_capacity Jsii::Type.check_type(@maximum_capacity, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXJzZXJ2ZXJsZXNzLkNmbkFwcGxpY2F0aW9uLk1heGltdW1BbGxvd2VkUmVzb3VyY2VzUHJvcGVydHkifV19fQ==")), "maximumCapacity") unless @maximum_capacity.nil? @monitoring_configuration = monitoring_configuration.is_a?(Hash) ? ::AWSCDK::EMRServerless::CfnApplication::MonitoringConfigurationProperty.new(**monitoring_configuration.transform_keys(&:to_sym)) : monitoring_configuration Jsii::Type.check_type(@monitoring_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXJzZXJ2ZXJsZXNzLkNmbkFwcGxpY2F0aW9uLk1vbml0b3JpbmdDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "monitoringConfiguration") unless @monitoring_configuration.nil? @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil? @network_configuration = network_configuration.is_a?(Hash) ? ::AWSCDK::EMRServerless::CfnApplication::NetworkConfigurationProperty.new(**network_configuration.transform_keys(&:to_sym)) : network_configuration Jsii::Type.check_type(@network_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXJzZXJ2ZXJsZXNzLkNmbkFwcGxpY2F0aW9uLk5ldHdvcmtDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "networkConfiguration") unless @network_configuration.nil? @runtime_configuration = runtime_configuration Jsii::Type.check_type(@runtime_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yc2VydmVybGVzcy5DZm5BcHBsaWNhdGlvbi5Db25maWd1cmF0aW9uT2JqZWN0UHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "runtimeConfiguration") unless @runtime_configuration.nil? @scheduler_configuration = scheduler_configuration.is_a?(Hash) ? ::AWSCDK::EMRServerless::CfnApplication::SchedulerConfigurationProperty.new(**scheduler_configuration.transform_keys(&:to_sym)) : scheduler_configuration Jsii::Type.check_type(@scheduler_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbXJzZXJ2ZXJsZXNzLkNmbkFwcGxpY2F0aW9uLlNjaGVkdWxlckNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "schedulerConfiguration") unless @scheduler_configuration.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? @worker_type_specifications = worker_type_specifications Jsii::Type.check_type(@worker_type_specifications, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yc2VydmVybGVzcy5DZm5BcHBsaWNhdGlvbi5Xb3JrZXJUeXBlU3BlY2lmaWNhdGlvbklucHV0UHJvcGVydHkifV19fSwia2luZCI6Im1hcCJ9fV19fQ==")), "workerTypeSpecifications") unless @worker_type_specifications.nil? end |
Instance Attribute Details
#architecture ⇒ String? (readonly)
The CPU architecture of an application.
77 78 79 |
# File 'emr_serverless/cfn_application_props.rb', line 77 def architecture @architecture end |
#auto_start_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The configuration for an application to automatically start on job submission.
82 83 84 |
# File 'emr_serverless/cfn_application_props.rb', line 82 def auto_start_configuration @auto_start_configuration end |
#auto_stop_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The configuration for an application to automatically stop after a certain amount of time being idle.
87 88 89 |
# File 'emr_serverless/cfn_application_props.rb', line 87 def auto_stop_configuration @auto_stop_configuration end |
#identity_center_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The IAM Identity Center configuration applied to enable trusted identity propagation.
92 93 94 |
# File 'emr_serverless/cfn_application_props.rb', line 92 def identity_center_configuration @identity_center_configuration end |
#image_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The image configuration applied to all worker types.
97 98 99 |
# File 'emr_serverless/cfn_application_props.rb', line 97 def image_configuration @image_configuration end |
#initial_capacity ⇒ AWSCDK::IResolvable, ... (readonly)
The initial capacity of the application.
102 103 104 |
# File 'emr_serverless/cfn_application_props.rb', line 102 def initial_capacity @initial_capacity end |
#interactive_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The interactive configuration object that enables the interactive use cases for an application.
107 108 109 |
# File 'emr_serverless/cfn_application_props.rb', line 107 def interactive_configuration @interactive_configuration end |
#maximum_capacity ⇒ AWSCDK::IResolvable, ... (readonly)
The maximum capacity of the application.
This is cumulative across all workers at any given point in time during the lifespan of the application is created. No new resources will be created once any one of the defined limits is hit.
114 115 116 |
# File 'emr_serverless/cfn_application_props.rb', line 114 def maximum_capacity @maximum_capacity end |
#monitoring_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
A configuration specification to be used when provisioning an application.
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.
121 122 123 |
# File 'emr_serverless/cfn_application_props.rb', line 121 def monitoring_configuration @monitoring_configuration end |
#name ⇒ String? (readonly)
The name of the application.
126 127 128 |
# File 'emr_serverless/cfn_application_props.rb', line 126 def name @name end |
#network_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The network configuration for customer VPC connectivity for the application.
131 132 133 |
# File 'emr_serverless/cfn_application_props.rb', line 131 def network_configuration @network_configuration end |
#release_label ⇒ String (readonly)
The EMR release associated with the application.
67 68 69 |
# File 'emr_serverless/cfn_application_props.rb', line 67 def release_label @release_label end |
#runtime_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The Configuration specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the GetApplication API operation.
136 137 138 |
# File 'emr_serverless/cfn_application_props.rb', line 136 def runtime_configuration @runtime_configuration end |
#scheduler_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The scheduler configuration for batch and streaming jobs running on this application.
Supported with release labels emr-7.0.0 and above.
143 144 145 |
# File 'emr_serverless/cfn_application_props.rb', line 143 def scheduler_configuration @scheduler_configuration end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
The tags assigned to the application.
148 149 150 |
# File 'emr_serverless/cfn_application_props.rb', line 148 def @tags end |
#type ⇒ String (readonly)
The type of application, such as Spark or Hive.
72 73 74 |
# File 'emr_serverless/cfn_application_props.rb', line 72 def type @type end |
#worker_type_specifications ⇒ AWSCDK::IResolvable, ... (readonly)
The specification applied to each worker type.
153 154 155 |
# File 'emr_serverless/cfn_application_props.rb', line 153 def worker_type_specifications @worker_type_specifications end |
Class Method Details
.jsii_properties ⇒ Object
155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 |
# File 'emr_serverless/cfn_application_props.rb', line 155 def self.jsii_properties { :release_label => "releaseLabel", :type => "type", :architecture => "architecture", :auto_start_configuration => "autoStartConfiguration", :auto_stop_configuration => "autoStopConfiguration", :identity_center_configuration => "identityCenterConfiguration", :image_configuration => "imageConfiguration", :initial_capacity => "initialCapacity", :interactive_configuration => "interactiveConfiguration", :maximum_capacity => "maximumCapacity", :monitoring_configuration => "monitoringConfiguration", :name => "name", :network_configuration => "networkConfiguration", :runtime_configuration => "runtimeConfiguration", :scheduler_configuration => "schedulerConfiguration", :tags => "tags", :worker_type_specifications => "workerTypeSpecifications", } end |
Instance Method Details
#to_jsii ⇒ Object
177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 |
# File 'emr_serverless/cfn_application_props.rb', line 177 def to_jsii result = {} result.merge!({ "releaseLabel" => @release_label, "type" => @type, "architecture" => @architecture, "autoStartConfiguration" => @auto_start_configuration, "autoStopConfiguration" => @auto_stop_configuration, "identityCenterConfiguration" => @identity_center_configuration, "imageConfiguration" => @image_configuration, "initialCapacity" => @initial_capacity, "interactiveConfiguration" => @interactive_configuration, "maximumCapacity" => @maximum_capacity, "monitoringConfiguration" => @monitoring_configuration, "name" => @name, "networkConfiguration" => @network_configuration, "runtimeConfiguration" => @runtime_configuration, "schedulerConfiguration" => @scheduler_configuration, "tags" => @tags, "workerTypeSpecifications" => @worker_type_specifications, }) result.compact end |