aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/commands/application.rb
blob: 60d1aed73a562b635064f23c82cc63f0e8117013 (plain) (blame)
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
require 'rails/version'

if ['--version', '-v'].include?(ARGV.first)
  puts "Rails #{Rails::VERSION::STRING}"
  exit(0)
end

if ARGV.first != "new"
  ARGV[0] = "--help"
else
  ARGV.shift
  railsrc = File.join(File.expand_path("~"), ".railsrc")
  if File.exist?(railsrc)
    extra_args_string = File.open(railsrc).read
    extra_args = extra_args_string.split(/\n+/).map {|l| l.split}.flatten
    puts "Using #{extra_args.join(" ")} from #{railsrc}"
    ARGV << extra_args
    ARGV.flatten!
  end
end

require 'rubygems' if ARGV.include?("--dev")
require 'rails/generators'
require 'rails/generators/rails/app/app_generator'

module Rails
  module Generators
    class AppGenerator
      # We want to exit on failure to be kind to other libraries
      # This is only when accessing via CLI
      def self.exit_on_failure?
        true
      end
    end
  end
end

Rails::Generators::AppGenerator.start