class Minirails::Builder
Public Instance Methods
define(name = nil, opts = {}, &block)
click to toggle source
DSL API
# File lib/minirails.rb, line 67 def define(name = nil, opts = {}, &block) type = opts[:type] || :rails klazz = { rails: RailsApp, rack: RackApp, blank: App }[type] if opts[:initialize] parent = apps.find {|a| a.name == opts[:initialize] } apps << WrappedApp.new(klazz.new(name, block), parent) else apps << klazz.new(name, block) end end
spawn()
click to toggle source
# File lib/minirails.rb, line 90 def spawn boot require "foreman/engine/cli" engine = Foreman::Engine::CLI.new apps.each.with_index do |app, index| engine.register( app.name || "web-#{index}", "#{File.expand_path($0)} #{File.expand_path(specfile)} #{index}", cwd: Dir.pwd ) end engine.start end
start(num)
click to toggle source
internals
# File lib/minirails.rb, line 84 def start(num) boot apps[num].init apps[num].call end
Protected Instance Methods
apps()
click to toggle source
# File lib/minirails.rb, line 109 def apps @apps ||= [] end
boot()
click to toggle source
# File lib/minirails.rb, line 113 def boot load specfile end