Sha256: 44d14757e5c2e3b39524df56279bc487fcdc9b743b09b65926acd2373404c7f8
Contents?: true
Size: 1.34 KB
Versions: 2
Compression:
Stored size: 1.34 KB
Contents
require 'wip/runner/workflow/builder' require 'wip/runner/workflow/builder/component' require 'wip/runner/workflow/builder/workflow' require 'wip/runner/workflow/builder/task' require 'wip/runner/workflow/builder/step' require 'wip/runner/workflow/runner' module WIP module Runner module Workflow class Error < WIP::Runner::Error; end class GuardError < Error; end class HaltSignal < Error; end def self.define(&block) command = (eval 'self', block.send(:binding)) command.send(:include, InstanceMethods) command.class_exec do options do |parser, config| config.overview = false config.preview = false parser.on('--overview', 'Prints workflow overview') do config.no_validate = true config.overview = true end parser.on('--preview', 'Prints workflow preview') do config.preview = true end define_method(:builder) do @builder ||= Builder.new(self, &block) end end end end module InstanceMethods def execute(arguments, options) workflow = builder.build(arguments, options) runner = Runner.new(@ui, workflow) runner.run(options) end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
wip-runner-0.4.1 | lib/wip/runner/workflow.rb |
wip-runner-0.4.0 | lib/wip/runner/workflow.rb |