Module: Kiba

Extended by:
Parser
Defined in:
lib/kiba/parser.rb,
lib/kiba/context.rb,
lib/kiba/control.rb,
lib/kiba/version.rb,
lib/kiba/streaming_runner.rb,
lib/kiba/dsl_extensions/config.rb,
lib/kiba.rb

Defined Under Namespace

Modules: DSLExtensions, Parser, StreamingRunner Classes: Context, Control

Constant Summary collapse

VERSION =
"4.0.0"

Class Method Summary collapse

Methods included from Parser

parse

Class Method Details

.run(job = nil, &block) ⇒ Object



12
13
14
15
16
17
18
19
20
21
# File 'lib/kiba.rb', line 12

def self.run(job = nil, &block)
  unless job.nil? ^ block.nil?
    fail ArgumentError.new("Kiba.run takes either one argument (the job) or a block (defining the job)")
  end

  job ||= Kiba.parse { instance_exec(&block) }

  runner = job.config.fetch(:kiba, {}).fetch(:runner, Kiba::StreamingRunner)
  runner.run(job)
end