Class Yapra::Runtime
In: lib/yapra/runtime.rb
Parent: Object

How to use

    require 'yapra/runtime'
    require 'yapra/config'

    config = YAML.load(config_file)
    config = Yapra::Config.new(config)

    Yapra::Runtime.logger = Logger.new(STDOUT)

    yapra = Yapra::Runtime.new(config.env)
    yapra.execute(config.pipeline_commands)

config_file format written in Yapra::Config document.

Methods

execute   execute_pipeline   logger   logger=   new  

Attributes

current_pipeline  [R] 
env  [R] 
legacy_plugin_registry_factory  [R] 

Public Class methods

[Source]

    # File lib/yapra/runtime.rb, line 51
51:   def self.logger
52:     @@logger
53:   end

[Source]

    # File lib/yapra/runtime.rb, line 55
55:   def self.logger=logger
56:     @@logger = logger
57:   end

[Source]

    # File lib/yapra/runtime.rb, line 28
28:   def initialize env={}, legacy_plugin_registry_factory=nil
29:     @env    = env
30:     
31:     @legacy_plugin_registry_factory        = legacy_plugin_registry_factory
32:   end

Public Instance methods

execute pipelines from commands.

[Source]

    # File lib/yapra/runtime.rb, line 35
35:   def execute pipeline_commands
36:     pipeline_commands.each do |k, v|
37:       execute_pipeline k, v, []
38:     end
39:   end

execute one pipeline.

[Source]

    # File lib/yapra/runtime.rb, line 42
42:   def execute_pipeline pipeline_name, command_array, data=[]
43:     self.class.logger.info("# pipeline '#{pipeline_name}' is started...")
44:     pipeline = Yapra::Pipeline.new(pipeline_name, self)
45:     @current_pipeline = pipeline
46:     legacy_plugin_registory = legacy_plugin_registry_factory.create(pipeline) if legacy_plugin_registry_factory
47:     pipeline.run(command_array, data)
48:     @current_pipeline = nil
49:   end

[Validate]