Module: Minirails

Defined in:
lib/minirails.rb,
lib/minirails/version.rb

Defined Under Namespace

Classes: App, Builder, RackApp, RailsApp, WrappedApp

Constant Summary collapse

VERSION =
"0.2.0"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.builderObject

Returns the value of attribute builder.



60
61
62
# File 'lib/minirails.rb', line 60

def builder
  @builder
end

Class Method Details

.fastObject



43
44
45
46
47
48
49
50
51
52
53
# File 'lib/minirails.rb', line 43

def fast
  File.open("Gemfile", "w") do |f|
    f.puts %Q|source "https://rubygems.org"|
    f.puts %Q|gem "minirails"|
  end

  system "bundle install"
  system "bundle binstubs minirails --force"

  puts "Now you can use much faster bin/minirails instead of minirails"
end

.helpObject



22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/minirails.rb', line 22

def help
  puts <<-EOS
Usage: #$0 [OPTIONS] [FILE]

$ #$0 myapp.rb

OPTIONS:
  --help  Show this message
  --init  Create new sample app
  --fast  Setup faster app loading
  EOS
end

.initObject



35
36
37
38
39
40
41
# File 'lib/minirails.rb', line 35

def init
  File.open("myapp.rb", "w") do |f|
    f.write File.read(File.expand_path("../../test/apps/hello.rb", __FILE__))
  end

  puts "You new app has been created! You can strat it with $ minirails myapp.rb"
end

.run(argv) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/minirails.rb', line 5

def run(argv)
  case argv[0]
  when "--init"
    init
  when "--fast"
    fast
  when "--help", nil
    help
  else
    if argv[0].start_with?("--")
      help
    else
      start(argv[0], argv[1])
    end
  end
end

.start(specfile, num = nil) ⇒ Object



55
56
57
58
# File 'lib/minirails.rb', line 55

def start(specfile, num = nil)
  self.builder = Builder.new(specfile)
  num ? builder.start(num.to_i) : builder.spawn
end