452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
|
# File 'lib/wrapbox/runner/ecs.rb', line 452
def run_cmd(*args)
repo = Wrapbox::ConfigRepository.new.tap { |r| r.load_yaml(options[:config]) }
config = repo.get(options[:config_name])
config.runner = :ecs
runner = config.build_runner
environments = options[:environments].to_s.split(/,\s*/).map { |kv| kv.split("=") }.map do |k, v|
{name: k, value: v}
end
run_options = {
cluster: options[:cluster],
task_role_arn: options[:task_role_arn],
timeout: options[:timeout],
launch_timeout: options[:launch_timeout],
launch_retry: options[:launch_retry],
execution_retry: options[:execution_retry],
max_retry_interval: options[:max_retry_interval]
}.reject { |_, v| v.nil? }
if options[:cpu] || options[:memory]
container_definition_overrides = {cpu: options[:cpu], memory: options[:memory]}.reject { |_, v| v.nil? }
else
container_definition_overrides = {}
end
runner.run_cmd(args, environments: environments, container_definition_overrides: container_definition_overrides, **run_options)
end
|