Sha256: 1d2f9372f195fc28633f73b3b278a61d4f718f75cbc8ae00e21d9766a7ebd9f4
Contents?: true
Size: 1.41 KB
Versions: 4
Compression:
Stored size: 1.41 KB
Contents
require "active_support/core_ext/hash" require "active_support/core_ext/string" module Wrapbox Configuration = Struct.new( :name, :revision, :runner, :cluster, :region, :retry, :retry_interval, :retry_interval_multiplier, :container_definition, :additional_container_definitions, :task_role_arn, :keep_container ) do def self.load_config(config) new( config["name"], config["revision"], config["runner"] ? config["runner"].to_sym : :docker, config["cluster"], config["region"], config["retry"] || 0, config["retry_interval"] || 1, config["retry_interval_multiplier"] || 2, config["container_definition"].deep_symbolize_keys, config["additional_container_definitions"] || [], config["task_role_arn"], config["keep_container"] ) end AVAILABLE_RUNNERS = %i(docker ecs) def initialize(*args) super end def build_runner raise "#{runner} is unsupported runner" unless AVAILABLE_RUNNERS.include?(runner.to_sym) require "wrapbox/runner/#{runner}" Wrapbox::Runner.const_get(runner.to_s.camelcase).new(to_h) end def run(class_name, method_name, args, **options) build_runner.run(class_name, method_name, args, **options) end def run_cmd(*cmd, **options) build_runner.run_cmd(*cmd, **options) end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
wrapbox-0.4.1 | lib/wrapbox/configuration.rb |
wrapbox-0.4.0 | lib/wrapbox/configuration.rb |
wrapbox-0.3.0 | lib/wrapbox/configuration.rb |
wrapbox-0.2.0 | lib/wrapbox/configuration.rb |