summaryrefslogtreecommitdiff
path: root/install/prepare.rb
blob: f85c01a01ec07fba5af633f2679bc9805a4f5c89 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
module Install
  class << self 
    def prepare(env)
      puts green " == Starting for ENV=#{env} ..."
      puts "rvm detected" if is_rvm?

      bundler
      db(env)

      puts green " == Done! Now you can start server"
    end

    def bundler
      command 'gem install bundler'
      command 'bundle install'
    end

    def db(env)
      command "bundle exec rake db:setup RAILS_ENV=#{env}"
      command "bundle exec rake db:seed_fu RAILS_ENV=#{env}"
    end

    def is_rvm?
      `type rvm | head -1` =~ /^rvm is/
    end

    def colorize(text, color_code)
      "\033[#{color_code}#{text}\033[0m"
    end

    def red(text)
      colorize(text, "31m")
    end

    def green(text)
      colorize(text, "32m")
    end

    def command(string)
      `#{string}`
      if $?.to_i > 0 
        puts red " == #{string} - FAIL"
        puts red " == Error during configure"
        exit
      else
        puts green " == #{string} - OK"
      end
    end
  end
end