Class: AWSCDK::StepFunctionsTasks::CommonECSRunTaskProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
step_functions_tasks/common_ecs_run_task_props.rb

Overview

Basic properties for ECS Tasks.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(cluster:, task_definition:, container_overrides: nil, integration_pattern: nil) ⇒ CommonECSRunTaskProps

Returns a new instance of CommonECSRunTaskProps.

Parameters:



11
12
13
14
15
16
17
18
19
20
# File 'step_functions_tasks/common_ecs_run_task_props.rb', line 11

def initialize(cluster:, task_definition:, container_overrides: nil, integration_pattern: nil)
  @cluster = cluster
  Jsii::Type.check_type(@cluster, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWNzLklDbHVzdGVyIn0=")), "cluster")
  @task_definition = task_definition
  Jsii::Type.check_type(@task_definition, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWNzLlRhc2tEZWZpbml0aW9uIn0=")), "taskDefinition")
  @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?
  @integration_pattern = integration_pattern
  Jsii::Type.check_type(@integration_pattern, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5TZXJ2aWNlSW50ZWdyYXRpb25QYXR0ZXJuIn0=")), "integrationPattern") unless @integration_pattern.nil?
end

Instance Attribute Details

#clusterAWSCDK::ECS::ICluster (readonly)

The topic to run the task on.



25
26
27
# File 'step_functions_tasks/common_ecs_run_task_props.rb', line 25

def cluster
  @cluster
end

#container_overridesArray<AWSCDK::StepFunctionsTasks::ContainerOverride>? (readonly)

Note:

Default: - No overrides

Container setting overrides.

Key is the name of the container to override, value is the values you want to override.



42
43
44
# File 'step_functions_tasks/common_ecs_run_task_props.rb', line 42

def container_overrides
  @container_overrides
end

#integration_patternAWSCDK::StepFunctions::ServiceIntegrationPattern? (readonly)

Note:

Default: FIRE_AND_FORGET

The service integration pattern indicates different ways to call RunTask in ECS.

The valid value for Lambda is FIRE_AND_FORGET, SYNC and WAIT_FOR_TASK_TOKEN.



49
50
51
# File 'step_functions_tasks/common_ecs_run_task_props.rb', line 49

def integration_pattern
  @integration_pattern
end

#task_definitionAWSCDK::ECS::TaskDefinition (readonly)

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



34
35
36
# File 'step_functions_tasks/common_ecs_run_task_props.rb', line 34

def task_definition
  @task_definition
end

Class Method Details

.jsii_propertiesObject



51
52
53
54
55
56
57
58
# File 'step_functions_tasks/common_ecs_run_task_props.rb', line 51

def self.jsii_properties
  {
    :cluster => "cluster",
    :task_definition => "taskDefinition",
    :container_overrides => "containerOverrides",
    :integration_pattern => "integrationPattern",
  }
end

Instance Method Details

#to_jsiiObject



60
61
62
63
64
65
66
67
68
69
# File 'step_functions_tasks/common_ecs_run_task_props.rb', line 60

def to_jsii
  result = {}
  result.merge!({
    "cluster" => @cluster,
    "taskDefinition" => @task_definition,
    "containerOverrides" => @container_overrides,
    "integrationPattern" => @integration_pattern,
  })
  result.compact
end