Sha256: 6c46aefcef921164dc742ccc389e0b62417c1d9301148b8e1dab4e2543f75b59

Contents?: true

Size: 921 Bytes

Versions: 1

Compression:

Stored size: 921 Bytes

Contents

require "logger"

module Wrapbox
  CLASS_NAME_ENV = "WRAPBOX_CLASS_NAME".freeze
  METHOD_NAME_ENV = "WRAPBOX_METHOD_NAME".freeze
  METHOD_ARGS_ENV = "WRAPBOX_METHOD_ARGS".freeze

  class << self
    attr_accessor :logger

    def load_config(filename)
      configs.load_yaml(filename)
    end

    def configs
      @configs ||= ConfigRepository.new
    end

    def configure
      yield configs
    end

    def run(*args, runner: nil, config_name: nil, **options)
      config = @configs.get(config_name)
      config.run(*args, **options)
    end

    def run_cmd(*args, runner: nil, config_name: nil, **options)
      config = @configs.get(config_name)
      config.run_cmd(*args, **options)
    end
  end

  $stdout.sync = true
  self.logger = Logger.new($stdout)
  self.logger.level = :info
end

require "wrapbox/version"

require "wrapbox/config_repository"
require "wrapbox/configuration"
require "wrapbox/job"

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
wrapbox-0.9.0 lib/wrapbox.rb