Chris@1464
|
1 source 'https://rubygems.org'
|
Chris@1115
|
2
|
Chris@1564
|
3 gem "rails", "~> 3.2.22"
|
Chris@1516
|
4 gem "rake", "~> 10.1.1"
|
Chris@1115
|
5 gem "jquery-rails", "~> 2.0.2"
|
Chris@1464
|
6 gem "coderay", "~> 1.1.0"
|
Chris@1115
|
7 gem "fastercsv", "~> 1.5.0", :platforms => [:mri_18, :mingw_18, :jruby]
|
Chris@1115
|
8 gem "builder", "3.0.0"
|
Chris@1517
|
9 gem "mime-types"
|
Chris@1517
|
10 gem "awesome_nested_set", "2.1.6"
|
Chris@1115
|
11
|
Chris@1115
|
12 # Optional gem for LDAP authentication
|
Chris@1115
|
13 group :ldap do
|
Chris@1115
|
14 gem "net-ldap", "~> 0.3.1"
|
Chris@1115
|
15 end
|
Chris@1115
|
16
|
Chris@1115
|
17 # Optional gem for OpenID authentication
|
Chris@1115
|
18 group :openid do
|
Chris@1464
|
19 gem "ruby-openid", "~> 2.3.0", :require => "openid"
|
Chris@1115
|
20 gem "rack-openid"
|
Chris@1115
|
21 end
|
Chris@1115
|
22
|
Chris@1115
|
23 platforms :mri, :mingw do
|
Chris@1517
|
24 # Optional gem for exporting the gantt to a PNG file, not supported with jruby
|
Chris@1115
|
25 group :rmagick do
|
Chris@1115
|
26 # RMagick 2 supports ruby 1.9
|
Chris@1115
|
27 # RMagick 1 would be fine for ruby 1.8 but Bundler does not support
|
Chris@1115
|
28 # different requirements for the same gem on different platforms
|
Chris@1115
|
29 gem "rmagick", ">= 2.0.0"
|
Chris@1115
|
30 end
|
Chris@1517
|
31
|
Chris@1517
|
32 # Optional Markdown support, not for JRuby
|
Chris@1517
|
33 group :markdown do
|
Chris@1517
|
34 # TODO: upgrade to redcarpet 3.x when ruby1.8 support is dropped
|
Chris@1517
|
35 gem "redcarpet", "~> 2.3.0"
|
Chris@1517
|
36 end
|
Chris@1115
|
37 end
|
Chris@1115
|
38
|
Chris@1464
|
39 platforms :jruby do
|
Chris@1464
|
40 # jruby-openssl is bundled with JRuby 1.7.0
|
Chris@1464
|
41 gem "jruby-openssl" if Object.const_defined?(:JRUBY_VERSION) && JRUBY_VERSION < '1.7.0'
|
Chris@1464
|
42 gem "activerecord-jdbc-adapter", "~> 1.3.2"
|
Chris@1115
|
43 end
|
Chris@1115
|
44
|
Chris@1464
|
45 # Include database gems for the adapters found in the database
|
Chris@1464
|
46 # configuration file
|
Chris@1464
|
47 require 'erb'
|
Chris@1464
|
48 require 'yaml'
|
Chris@1464
|
49 database_file = File.join(File.dirname(__FILE__), "config/database.yml")
|
Chris@1464
|
50 if File.exist?(database_file)
|
Chris@1464
|
51 database_config = YAML::load(ERB.new(IO.read(database_file)).result)
|
Chris@1464
|
52 adapters = database_config.values.map {|c| c['adapter']}.compact.uniq
|
Chris@1464
|
53 if adapters.any?
|
Chris@1464
|
54 adapters.each do |adapter|
|
Chris@1464
|
55 case adapter
|
Chris@1464
|
56 when 'mysql2'
|
Chris@1464
|
57 gem "mysql2", "~> 0.3.11", :platforms => [:mri, :mingw]
|
Chris@1464
|
58 gem "activerecord-jdbcmysql-adapter", :platforms => :jruby
|
Chris@1464
|
59 when 'mysql'
|
Chris@1464
|
60 gem "mysql", "~> 2.8.1", :platforms => [:mri, :mingw]
|
Chris@1464
|
61 gem "activerecord-jdbcmysql-adapter", :platforms => :jruby
|
Chris@1464
|
62 when /postgresql/
|
Chris@1464
|
63 gem "pg", ">= 0.11.0", :platforms => [:mri, :mingw]
|
Chris@1464
|
64 gem "activerecord-jdbcpostgresql-adapter", :platforms => :jruby
|
Chris@1464
|
65 when /sqlite3/
|
Chris@1464
|
66 gem "sqlite3", :platforms => [:mri, :mingw]
|
Chris@1464
|
67 gem "activerecord-jdbcsqlite3-adapter", :platforms => :jruby
|
Chris@1464
|
68 when /sqlserver/
|
Chris@1464
|
69 gem "tiny_tds", "~> 0.5.1", :platforms => [:mri, :mingw]
|
Chris@1464
|
70 gem "activerecord-sqlserver-adapter", :platforms => [:mri, :mingw]
|
Chris@1464
|
71 else
|
Chris@1464
|
72 warn("Unknown database adapter `#{adapter}` found in config/database.yml, use Gemfile.local to load your own database gems")
|
Chris@1464
|
73 end
|
Chris@1464
|
74 end
|
Chris@1464
|
75 else
|
Chris@1464
|
76 warn("No adapter found in config/database.yml, please configure it first")
|
Chris@1115
|
77 end
|
Chris@1464
|
78 else
|
Chris@1464
|
79 warn("Please configure your config/database.yml first")
|
Chris@1115
|
80 end
|
Chris@1115
|
81
|
Chris@1115
|
82 group :development do
|
Chris@1115
|
83 gem "rdoc", ">= 2.4.2"
|
Chris@1115
|
84 gem "yard"
|
Chris@1115
|
85 end
|
Chris@1115
|
86
|
Chris@1115
|
87 group :test do
|
Chris@1464
|
88 gem "shoulda", "~> 3.3.2"
|
Chris@1516
|
89 gem "mocha", "~> 1.0.0", :require => 'mocha/api'
|
Chris@1464
|
90 if RUBY_VERSION >= '1.9.3'
|
Chris@1464
|
91 gem "capybara", "~> 2.1.0"
|
Chris@1464
|
92 gem "selenium-webdriver"
|
Chris@1464
|
93 end
|
Chris@1115
|
94 end
|
Chris@1115
|
95
|
Chris@1115
|
96 local_gemfile = File.join(File.dirname(__FILE__), "Gemfile.local")
|
Chris@1115
|
97 if File.exists?(local_gemfile)
|
Chris@1115
|
98 puts "Loading Gemfile.local ..." if $DEBUG # `ruby -d` or `bundle -v`
|
Chris@1115
|
99 instance_eval File.read(local_gemfile)
|
Chris@1115
|
100 end
|
Chris@1115
|
101
|
Chris@1115
|
102 # Load plugins' Gemfiles
|
Chris@1115
|
103 Dir.glob File.expand_path("../plugins/*/Gemfile", __FILE__) do |file|
|
Chris@1115
|
104 puts "Loading #{file} ..." if $DEBUG # `ruby -d` or `bundle -v`
|
Chris@1464
|
105 #TODO: switch to "eval_gemfile file" when bundler >= 1.2.0 will be required (rails 4)
|
Chris@1464
|
106 instance_eval File.read(file), file
|
Chris@1115
|
107 end
|