Class: AWSCDK::StepFunctionsTasks::ECSRunTaskJsonataProps
- Inherits:
-
AWSCDK::StepFunctions::TaskStateJsonataBaseProps
- Object
- AWSCDK::StepFunctions::TaskStateJsonataBaseProps
- AWSCDK::StepFunctionsTasks::ECSRunTaskJsonataProps
- Defined in:
- step_functions_tasks/ecs_run_task_jsonata_props.rb
Overview
Properties for ECS Tasks using JSONata.
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.
-
#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.
-
#outputs ⇒ Object?
readonly
Used to specify and transform output from the 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.
-
#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, outputs: 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) ⇒ ECSRunTaskJsonataProps
constructor
A new instance of ECSRunTaskJsonataProps.
- #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, outputs: 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) ⇒ ECSRunTaskJsonataProps
Returns a new instance of ECSRunTaskJsonataProps.
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 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 30 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, outputs: 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? @outputs = outputs Jsii::Type.check_type(@outputs, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "outputs") unless @outputs.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.
150 151 152 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 150 def assign @assign end |
#assign_public_ip ⇒ Boolean? (readonly)
Default: false
Assign public IP addresses to each task.
185 186 187 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 185 def assign_public_ip @assign_public_ip end |
#cluster ⇒ AWSCDK::ECS::ICluster (readonly)
The ECS cluster to run the task on.
166 167 168 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 166 def cluster @cluster end |
#comment ⇒ String? (readonly)
Default: No comment
A comment describing this state.
83 84 85 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 83 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.
192 193 194 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 192 def container_overrides @container_overrides end |
#cpu ⇒ String? (readonly)
Default: - No override
Cpu setting override.
198 199 200 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 198 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.
104 105 106 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 104 def credentials @credentials end |
#enable_execute_command ⇒ Boolean? (readonly)
Default: false
Whether ECS Exec should be enabled.
204 205 206 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 204 def enable_execute_command @enable_execute_command end |
#heartbeat ⇒ AWSCDK::Duration? (readonly)
use heartbeatTimeout
Default: - None
Timeout for the heartbeat.
110 111 112 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 110 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
118 119 120 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 118 def heartbeat_timeout @heartbeat_timeout 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.
128 129 130 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 128 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.
171 172 173 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 171 def launch_target @launch_target end |
#memory_mib ⇒ String? (readonly)
Default: - No override
Memory setting override.
210 211 212 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 210 def memory_mib @memory_mib end |
#outputs ⇒ Object? (readonly)
Default: - $states.result or $states.errorOutput
Used to specify and transform output from the state.
When specified, the value overrides the state output default. The output field accepts any JSON value (object, array, string, number, boolean, null). Any string value, including those inside objects or arrays, will be evaluated as JSONata if surrounded by % characters. Output also accepts a JSONata expression directly.
162 163 164 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 162 def outputs @outputs 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.
218 219 220 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 218 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.
91 92 93 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 91 def query_language @query_language end |
#revision_number ⇒ Numeric? (readonly)
Default: - '$latest'
The revision number of ECS task definition family.
223 224 225 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 223 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.
228 229 230 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 228 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.
96 97 98 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 96 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.
233 234 235 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 233 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
180 181 182 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 180 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
136 137 138 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 136 def task_timeout @task_timeout end |
#timeout ⇒ AWSCDK::Duration? (readonly)
use taskTimeout
Default: - None
Timeout for the task.
142 143 144 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 142 def timeout @timeout end |
Class Method Details
.jsii_properties ⇒ Object
235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 235 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", :outputs => "outputs", :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
263 264 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 |
# File 'step_functions_tasks/ecs_run_task_jsonata_props.rb', line 263 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, "outputs" => @outputs, "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 |