class EcsDeployCli::DSL::Task
Public Class Methods
new(name, config)
click to toggle source
# File lib/ecs_deploy_cli/dsl/task.rb, line 10 def initialize(name, config) @config = config _options[:family] = name.to_s end
Public Instance Methods
as_definition(containers)
click to toggle source
# File lib/ecs_deploy_cli/dsl/task.rb, line 39 def as_definition(containers) { container_definitions: containers.values_at(*@containers), execution_role_arn: "arn:aws:iam::#{@config[:aws_profile_id]}:role/ecsTaskExecutionRole", requires_compatibilities: ['EC2'], placement_constraints: [], cpu: @cpu, memory: @memory, volumes: [], network_mode: nil }.merge(_options) end
containers(*containers)
click to toggle source
# File lib/ecs_deploy_cli/dsl/task.rb, line 15 def containers(*containers) @containers = containers end
cpu(value)
click to toggle source
# File lib/ecs_deploy_cli/dsl/task.rb, line 19 def cpu(value) @cpu = value.to_s end
execution_role(name)
click to toggle source
# File lib/ecs_deploy_cli/dsl/task.rb, line 35 def execution_role(name) _options[:execution_role_arn] = "arn:aws:iam::#{@config[:aws_profile_id]}:role/#{name}" end
memory(value)
click to toggle source
# File lib/ecs_deploy_cli/dsl/task.rb, line 23 def memory(value) @memory = value.to_s end
tag(key, value)
click to toggle source
# File lib/ecs_deploy_cli/dsl/task.rb, line 27 def tag(key, value) (_options[:tags] ||= []) << { key: key, value: value } end
volume(value)
click to toggle source
# File lib/ecs_deploy_cli/dsl/task.rb, line 31 def volume(value) (_options[:volumes] ||= []) << value end