Class: AWSCDK::StepFunctionsTasks::ECSRunTaskJsonPathProps
- Inherits:
-
AWSCDK::StepFunctions::TaskStateJsonPathBaseProps
- Object
- AWSCDK::StepFunctions::TaskStateJsonPathBaseProps
- AWSCDK::StepFunctionsTasks::ECSRunTaskJsonPathProps
- Defined in:
- step_functions_tasks/ecs_run_task_json_path_props.rb
Overview
Properties for ECS Tasks using JSONPath.
Instance Attribute Summary collapse
-
#assign ⇒ Hash{String => Object}?
readonly
Workflow variables to store in this step.
-
#assign_public_ip ⇒ Boolean?
readonly
Assign public IP addresses to each task.
-
#cluster ⇒ AWSCDK::ECS::ICluster
readonly
The ECS cluster to run the task on.
-
#comment ⇒ String?
readonly
A comment describing this state.
-
#container_overrides ⇒ Array<AWSCDK::StepFunctionsTasks::ContainerOverride>?
readonly
Container setting overrides.
-
#cpu ⇒ String?
readonly
Cpu setting override.
-
#credentials ⇒ AWSCDK::StepFunctions::Credentials?
readonly
Credentials for an IAM Role that the State Machine assumes for executing the task.
-
#enable_execute_command ⇒ Boolean?
readonly
Whether ECS Exec should be enabled.
-
#heartbeat ⇒ AWSCDK::Duration?
readonly
deprecated
Deprecated.
use
heartbeatTimeout -
#heartbeat_timeout ⇒ AWSCDK::StepFunctions::Timeout?
readonly
Timeout for the heartbeat.
-
#input_path ⇒ String?
readonly
JSONPath expression to select part of the state to be the input to this state.
-
#integration_pattern ⇒ AWSCDK::StepFunctions::IntegrationPattern?
readonly
AWS Step Functions integrates with services directly in the Amazon States Language.
-
#launch_target ⇒ AWSCDK::StepFunctionsTasks::IECSLaunchTarget
readonly
An Amazon ECS launch type determines the type of infrastructure on which your tasks and services are hosted.
-
#memory_mib ⇒ String?
readonly
Memory setting override.
-
#output_path ⇒ String?
readonly
JSONPath expression to select part of the state to be the output to this state.
-
#propagated_tag_source ⇒ AWSCDK::ECS::PropagatedTagSource?
readonly
Specifies whether to propagate the tags from the task definition to the task.
-
#query_language ⇒ AWSCDK::StepFunctions::QueryLanguage?
readonly
The name of the query language used by the state.
-
#result_path ⇒ String?
readonly
JSONPath expression to indicate where to inject the state's output.
-
#result_selector ⇒ Hash{String => Object}?
readonly
The JSON that will replace the state's raw result and become the effective result before ResultPath is applied.
-
#revision_number ⇒ Numeric?
readonly
The revision number of ECS task definition family.
-
#security_groups ⇒ Array<AWSCDK::EC2::ISecurityGroup>?
readonly
Existing security groups to use for the tasks.
-
#state_name ⇒ String?
readonly
Optional name for this state.
-
#subnets ⇒ AWSCDK::EC2::SubnetSelection?
readonly
Subnets to place the task's ENIs.
-
#task_definition ⇒ AWSCDK::ECS::TaskDefinition
readonly
[disable-awslint:ref-via-interface] Task Definition used for running tasks in the service.
-
#task_timeout ⇒ AWSCDK::StepFunctions::Timeout?
readonly
Timeout for the task.
-
#timeout ⇒ AWSCDK::Duration?
readonly
deprecated
Deprecated.
use
taskTimeout
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(comment: nil, query_language: nil, state_name: nil, credentials: nil, heartbeat: nil, heartbeat_timeout: nil, integration_pattern: nil, task_timeout: nil, timeout: nil, assign: nil, input_path: nil, output_path: nil, result_path: nil, result_selector: nil, cluster:, launch_target:, task_definition:, assign_public_ip: nil, container_overrides: nil, cpu: nil, enable_execute_command: nil, memory_mib: nil, propagated_tag_source: nil, revision_number: nil, security_groups: nil, subnets: nil) ⇒ ECSRunTaskJsonPathProps
constructor
A new instance of ECSRunTaskJsonPathProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(comment: nil, query_language: nil, state_name: nil, credentials: nil, heartbeat: nil, heartbeat_timeout: nil, integration_pattern: nil, task_timeout: nil, timeout: nil, assign: nil, input_path: nil, output_path: nil, result_path: nil, result_selector: nil, cluster:, launch_target:, task_definition:, assign_public_ip: nil, container_overrides: nil, cpu: nil, enable_execute_command: nil, memory_mib: nil, propagated_tag_source: nil, revision_number: nil, security_groups: nil, subnets: nil) ⇒ ECSRunTaskJsonPathProps
Returns a new instance of ECSRunTaskJsonPathProps.
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 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 33 def initialize(comment: nil, query_language: nil, state_name: nil, credentials: nil, heartbeat: nil, heartbeat_timeout: nil, integration_pattern: nil, task_timeout: nil, timeout: nil, assign: nil, input_path: nil, output_path: nil, result_path: nil, result_selector: nil, cluster:, launch_target:, task_definition:, assign_public_ip: nil, container_overrides: nil, cpu: nil, enable_execute_command: nil, memory_mib: nil, propagated_tag_source: nil, revision_number: nil, security_groups: nil, subnets: nil) @comment = comment Jsii::Type.check_type(@comment, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "comment") unless @comment.nil? @query_language = query_language Jsii::Type.check_type(@query_language, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5RdWVyeUxhbmd1YWdlIn0=")), "queryLanguage") unless @query_language.nil? @state_name = state_name Jsii::Type.check_type(@state_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "stateName") unless @state_name.nil? @credentials = credentials.is_a?(Hash) ? ::AWSCDK::StepFunctions::Credentials.new(**credentials.transform_keys(&:to_sym)) : credentials Jsii::Type.check_type(@credentials, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5DcmVkZW50aWFscyJ9")), "credentials") unless @credentials.nil? @heartbeat = heartbeat Jsii::Type.check_type(@heartbeat, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "heartbeat") unless @heartbeat.nil? @heartbeat_timeout = heartbeat_timeout Jsii::Type.check_type(@heartbeat_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5UaW1lb3V0In0=")), "heartbeatTimeout") unless @heartbeat_timeout.nil? @integration_pattern = integration_pattern Jsii::Type.check_type(@integration_pattern, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5JbnRlZ3JhdGlvblBhdHRlcm4ifQ==")), "integrationPattern") unless @integration_pattern.nil? @task_timeout = task_timeout Jsii::Type.check_type(@task_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5UaW1lb3V0In0=")), "taskTimeout") unless @task_timeout.nil? @timeout = timeout Jsii::Type.check_type(@timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "timeout") unless @timeout.nil? @assign = assign Jsii::Type.check_type(@assign, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "assign") unless @assign.nil? @input_path = input_path Jsii::Type.check_type(@input_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "inputPath") unless @input_path.nil? @output_path = output_path Jsii::Type.check_type(@output_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "outputPath") unless @output_path.nil? @result_path = result_path Jsii::Type.check_type(@result_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "resultPath") unless @result_path.nil? @result_selector = result_selector Jsii::Type.check_type(@result_selector, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "resultSelector") unless @result_selector.nil? @cluster = cluster Jsii::Type.check_type(@cluster, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWNzLklDbHVzdGVyIn0=")), "cluster") @launch_target = launch_target Jsii::Type.check_type(@launch_target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9uc190YXNrcy5JRWNzTGF1bmNoVGFyZ2V0In0=")), "launchTarget") @task_definition = task_definition Jsii::Type.check_type(@task_definition, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWNzLlRhc2tEZWZpbml0aW9uIn0=")), "taskDefinition") @assign_public_ip = assign_public_ip Jsii::Type.check_type(@assign_public_ip, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "assignPublicIp") unless @assign_public_ip.nil? @container_overrides = container_overrides.is_a?(Array) ? container_overrides.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::StepFunctionsTasks::ContainerOverride.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : container_overrides Jsii::Type.check_type(@container_overrides, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zdGVwZnVuY3Rpb25zX3Rhc2tzLkNvbnRhaW5lck92ZXJyaWRlIn0sImtpbmQiOiJhcnJheSJ9fQ==")), "containerOverrides") unless @container_overrides.nil? @cpu = cpu Jsii::Type.check_type(@cpu, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "cpu") unless @cpu.nil? @enable_execute_command = enable_execute_command Jsii::Type.check_type(@enable_execute_command, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "enableExecuteCommand") unless @enable_execute_command.nil? @memory_mib = memory_mib Jsii::Type.check_type(@memory_mib, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "memoryMiB") unless @memory_mib.nil? @propagated_tag_source = propagated_tag_source Jsii::Type.check_type(@propagated_tag_source, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWNzLlByb3BhZ2F0ZWRUYWdTb3VyY2UifQ==")), "propagatedTagSource") unless @propagated_tag_source.nil? @revision_number = revision_number Jsii::Type.check_type(@revision_number, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "revisionNumber") unless @revision_number.nil? @security_groups = security_groups Jsii::Type.check_type(@security_groups, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lYzIuSVNlY3VyaXR5R3JvdXAifSwia2luZCI6ImFycmF5In19")), "securityGroups") unless @security_groups.nil? @subnets = subnets.is_a?(Hash) ? ::AWSCDK::EC2::SubnetSelection.new(**subnets.transform_keys(&:to_sym)) : subnets Jsii::Type.check_type(@subnets, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWMyLlN1Ym5ldFNlbGVjdGlvbiJ9")), "subnets") unless @subnets.nil? end |
Instance Attribute Details
#assign ⇒ Hash{String => Object}? (readonly)
Default: - Not assign variables
Workflow variables to store in this step.
Using workflow variables, you can store data in a step and retrieve that data in future steps.
159 160 161 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 159 def assign @assign end |
#assign_public_ip ⇒ Boolean? (readonly)
Default: false
Assign public IP addresses to each task.
215 216 217 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 215 def assign_public_ip @assign_public_ip end |
#cluster ⇒ AWSCDK::ECS::ICluster (readonly)
The ECS cluster to run the task on.
196 197 198 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 196 def cluster @cluster end |
#comment ⇒ String? (readonly)
Default: No comment
A comment describing this state.
92 93 94 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 92 def comment @comment end |
#container_overrides ⇒ Array<AWSCDK::StepFunctionsTasks::ContainerOverride>? (readonly)
Default: - No overrides
Container setting overrides.
Specify the container to use and the overrides to apply.
222 223 224 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 222 def container_overrides @container_overrides end |
#cpu ⇒ String? (readonly)
Default: - No override
Cpu setting override.
228 229 230 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 228 def cpu @cpu end |
#credentials ⇒ AWSCDK::StepFunctions::Credentials? (readonly)
Default: - None (Task is executed using the State Machine's execution role)
Credentials for an IAM Role that the State Machine assumes for executing the task.
This enables cross-account resource invocations.
113 114 115 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 113 def credentials @credentials end |
#enable_execute_command ⇒ Boolean? (readonly)
Default: false
Whether ECS Exec should be enabled.
234 235 236 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 234 def enable_execute_command @enable_execute_command end |
#heartbeat ⇒ AWSCDK::Duration? (readonly)
use heartbeatTimeout
Default: - None
Timeout for the heartbeat.
119 120 121 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 119 def heartbeat @heartbeat end |
#heartbeat_timeout ⇒ AWSCDK::StepFunctions::Timeout? (readonly)
Default: - None
Timeout for the heartbeat.
[disable-awslint:duration-prop-type] is needed because all props interface in aws-stepfunctions-tasks extend this interface
127 128 129 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 127 def heartbeat_timeout @heartbeat_timeout end |
#input_path ⇒ String? (readonly)
Default: $
JSONPath expression to select part of the state to be the input to this state.
May also be the special value JsonPath.DISCARD, which will cause the effective input to be the empty object {}.
167 168 169 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 167 def input_path @input_path end |
#integration_pattern ⇒ AWSCDK::StepFunctions::IntegrationPattern? (readonly)
Default: - IntegrationPattern.REQUEST_RESPONSE for most tasks. IntegrationPattern.RUN_JOB for the following exceptions: BatchSubmitJob, EmrAddStep, EmrCreateCluster, EmrTerminationCluster, and EmrContainersStartJobRun.
AWS Step Functions integrates with services directly in the Amazon States Language.
You can control these AWS services using service integration patterns.
Depending on the AWS Service, the Service Integration Pattern availability will vary.
137 138 139 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 137 def integration_pattern @integration_pattern end |
#launch_target ⇒ AWSCDK::StepFunctionsTasks::IECSLaunchTarget (readonly)
An Amazon ECS launch type determines the type of infrastructure on which your tasks and services are hosted.
201 202 203 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 201 def launch_target @launch_target end |
#memory_mib ⇒ String? (readonly)
Default: - No override
Memory setting override.
240 241 242 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 240 def memory_mib @memory_mib end |
#output_path ⇒ String? (readonly)
Default: $
JSONPath expression to select part of the state to be the output to this state.
May also be the special value JsonPath.DISCARD, which will cause the effective output to be the empty object {}.
175 176 177 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 175 def output_path @output_path end |
#propagated_tag_source ⇒ AWSCDK::ECS::PropagatedTagSource? (readonly)
Default: - No tags are propagated.
Specifies whether to propagate the tags from the task definition to the task.
An error will be received if you specify the SERVICE option when running a task.
248 249 250 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 248 def propagated_tag_source @propagated_tag_source end |
#query_language ⇒ AWSCDK::StepFunctions::QueryLanguage? (readonly)
Default: - JSONPath
The name of the query language used by the state.
If the state does not contain a query_language field,
then it will use the query language specified in the top-level query_language field.
100 101 102 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 100 def query_language @query_language end |
#result_path ⇒ String? (readonly)
Default: $
JSONPath expression to indicate where to inject the state's output.
May also be the special value JsonPath.DISCARD, which will cause the state's input to become its output.
183 184 185 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 183 def result_path @result_path end |
#result_selector ⇒ Hash{String => Object}? (readonly)
Default: - None
The JSON that will replace the state's raw result and become the effective result before ResultPath is applied.
You can use ResultSelector to create a payload with values that are static or selected from the state's raw result.
192 193 194 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 192 def result_selector @result_selector end |
#revision_number ⇒ Numeric? (readonly)
Default: - '$latest'
The revision number of ECS task definition family.
253 254 255 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 253 def revision_number @revision_number end |
#security_groups ⇒ Array<AWSCDK::EC2::ISecurityGroup>? (readonly)
Default: - A new security group is created
Existing security groups to use for the tasks.
258 259 260 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 258 def security_groups @security_groups end |
#state_name ⇒ String? (readonly)
Default: - The construct ID will be used as state name
Optional name for this state.
105 106 107 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 105 def state_name @state_name end |
#subnets ⇒ AWSCDK::EC2::SubnetSelection? (readonly)
Default: - Public subnets if assignPublicIp is set. Private subnets otherwise.
Subnets to place the task's ENIs.
263 264 265 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 263 def subnets @subnets end |
#task_definition ⇒ AWSCDK::ECS::TaskDefinition (readonly)
[disable-awslint:ref-via-interface] Task Definition used for running tasks in the service.
Note: this must be TaskDefinition, and not ITaskDefinition, as it requires properties that are not known for imported task definitions If you want to run a RunTask with an imported task definition, consider using CustomState
210 211 212 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 210 def task_definition @task_definition end |
#task_timeout ⇒ AWSCDK::StepFunctions::Timeout? (readonly)
Default: - None
Timeout for the task.
[disable-awslint:duration-prop-type] is needed because all props interface in aws-stepfunctions-tasks extend this interface
145 146 147 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 145 def task_timeout @task_timeout end |
#timeout ⇒ AWSCDK::Duration? (readonly)
use taskTimeout
Default: - None
Timeout for the task.
151 152 153 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 151 def timeout @timeout end |
Class Method Details
.jsii_properties ⇒ Object
265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 265 def self.jsii_properties { :comment => "comment", :query_language => "queryLanguage", :state_name => "stateName", :credentials => "credentials", :heartbeat => "heartbeat", :heartbeat_timeout => "heartbeatTimeout", :integration_pattern => "integrationPattern", :task_timeout => "taskTimeout", :timeout => "timeout", :assign => "assign", :input_path => "inputPath", :output_path => "outputPath", :result_path => "resultPath", :result_selector => "resultSelector", :cluster => "cluster", :launch_target => "launchTarget", :task_definition => "taskDefinition", :assign_public_ip => "assignPublicIp", :container_overrides => "containerOverrides", :cpu => "cpu", :enable_execute_command => "enableExecuteCommand", :memory_mib => "memoryMiB", :propagated_tag_source => "propagatedTagSource", :revision_number => "revisionNumber", :security_groups => "securityGroups", :subnets => "subnets", } end |
Instance Method Details
#to_jsii ⇒ Object
296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 |
# File 'step_functions_tasks/ecs_run_task_json_path_props.rb', line 296 def to_jsii result = {} result.merge!(super) result.merge!({ "comment" => @comment, "queryLanguage" => @query_language, "stateName" => @state_name, "credentials" => @credentials, "heartbeat" => @heartbeat, "heartbeatTimeout" => @heartbeat_timeout, "integrationPattern" => @integration_pattern, "taskTimeout" => @task_timeout, "timeout" => @timeout, "assign" => @assign, "inputPath" => @input_path, "outputPath" => @output_path, "resultPath" => @result_path, "resultSelector" => @result_selector, "cluster" => @cluster, "launchTarget" => @launch_target, "taskDefinition" => @task_definition, "assignPublicIp" => @assign_public_ip, "containerOverrides" => @container_overrides, "cpu" => @cpu, "enableExecuteCommand" => @enable_execute_command, "memoryMiB" => @memory_mib, "propagatedTagSource" => @propagated_tag_source, "revisionNumber" => @revision_number, "securityGroups" => @security_groups, "subnets" => @subnets, }) result.compact end |