##// END OF EJS Templates
Use Bundler for gem management (#5638)....
Jean-Philippe Lang -
r8784:9315039e0a95
parent child
Show More
@@ -0,0 +1,78
1 source :rubygems
2
3 gem "rails", "2.3.14"
4 gem "i18n", "~> 0.4.2"
5 gem "coderay", "~> 1.0.0"
6
7 # Optional gem for LDAP authentication
8 group :ldap do
9 gem "net-ldap", "~> 0.2.2"
10 end
11
12 # Optional gem for OpenID authentication
13 group :openid do
14 gem "ruby-openid", "~> 2.1.4", :require => "openid"
15 end
16
17 # Optional gem for exporting the gantt to a PNG file
18 group :rmagick do
19 # RMagick 2 supports ruby 1.9
20 # RMagick 1 would be fine for ruby 1.8 but Bundler does not support
21 # different requirements for the same gem on different platforms
22 gem "rmagick", ">= 2.0.0"
23 end
24
25 # Database gems
26 platforms :mri, :mingw do
27 group :postgresql do
28 gem "pg", "~> 0.9.0"
29 end
30
31 group :sqlite do
32 gem "sqlite3"
33 end
34 end
35
36 platforms :mri_18, :mingw_18 do
37 group :mysql do
38 gem "mysql"
39 end
40 end
41
42 platforms :mri_19, :mingw_19 do
43 group :mysql do
44 gem "mysql2", "~> 0.2.7"
45 end
46 end
47
48 platforms :jruby do
49 gem "jruby-openssl"
50
51 group :mysql do
52 gem "activerecord-jdbcmysql-adapter"
53 end
54
55 group :postgresql do
56 gem "activerecord-jdbcpostgresql-adapter"
57 end
58
59 group :sqlite do
60 gem "activerecord-jdbcsqlite3-adapter"
61 end
62 end
63
64 group :development do
65 gem "rdoc", ">= 2.4.2"
66 end
67
68 group :test do
69 gem "shoulda", "~> 2.10.3"
70 gem "edavis10-object_daddy", :require => "object_daddy"
71 gem "mocha"
72 end
73
74 # Load plugins' Gemfiles
75 Dir.glob File.expand_path("../vendor/plugins/*/Gemfile", __FILE__) do |file|
76 puts "Loading #{file} ..." if $DEBUG # `ruby -d` or `bundle -v`
77 instance_eval File.read(file)
78 end
@@ -0,0 +1,20
1 begin
2 require "rubygems"
3 require "bundler"
4 rescue LoadError
5 $stderr.puts "Redmine requires Bundler. Please install it with `gem install bundler`."
6 exit 1
7 end
8
9 if Gem::Version.new(Bundler::VERSION) < Gem::Version.new("1.0.21")
10 $stderr.puts "Redmine requires Bundler 1.0.21 (you're using #{Bundler::VERSION}).\nPlease install a newer version with `gem install bundler`."
11 exit 1
12 end
13
14 begin
15 ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile", __FILE__)
16 Bundler.setup
17 rescue Bundler::GemNotFound
18 $stderr.puts "Some gems may need to be installed or updated. Please run `bundle install`."
19 exit 1
20 end
@@ -5,9 +5,6
5 # Example:
5 # Example:
6 #
6 #
7 # config.log_level = :debug
7 # config.log_level = :debug
8 # config.gem "example_plugin", :lib => false
9 # config.gem "timesheet_plugin", :lib => false, :version => '0.5.0'
10 # config.gem "aws-s3", :lib => "aws/s3"
11 # ...
8 # ...
12 #
9 #
13
10
@@ -41,6 +41,11 module Rails
41 class Boot
41 class Boot
42 def run
42 def run
43 load_initializer
43 load_initializer
44 Rails::Initializer.class_eval do
45 def load_gems
46 @bundler_loaded ||= Bundler.require :default, Rails.env
47 end
48 end
44 Rails::Initializer.run(:set_load_path)
49 Rails::Initializer.run(:set_load_path)
45 end
50 end
46 end
51 end
@@ -4,9 +4,6
4 # you don't control web/app server and can't set it the proper way
4 # you don't control web/app server and can't set it the proper way
5 # ENV['RAILS_ENV'] ||= 'production'
5 # ENV['RAILS_ENV'] ||= 'production'
6
6
7 # Specifies gem version of Rails to use when vendor/rails is not present
8 RAILS_GEM_VERSION = '2.3.14' unless defined? RAILS_GEM_VERSION
9
10 # Bootstrap the Rails environment, frameworks, and default configuration
7 # Bootstrap the Rails environment, frameworks, and default configuration
11 require File.join(File.dirname(__FILE__), 'boot')
8 require File.join(File.dirname(__FILE__), 'boot')
12
9
@@ -54,9 +51,6 Rails::Initializer.run do |config|
54 # It will automatically turn deliveries on
51 # It will automatically turn deliveries on
55 config.action_mailer.perform_deliveries = false
52 config.action_mailer.perform_deliveries = false
56
53
57 config.gem 'coderay', :version => '~>1.0.0'
58 config.gem 'net-ldap', :version => '~>0.2.2'
59
60 # Load any local configuration that is kept out of source control
54 # Load any local configuration that is kept out of source control
61 # (e.g. gems, patches).
55 # (e.g. gems, patches).
62 if File.exists?(File.join(File.dirname(__FILE__), 'additional_environment.rb'))
56 if File.exists?(File.join(File.dirname(__FILE__), 'additional_environment.rb'))
@@ -23,7 +23,3 config.action_controller.session = {
23
23
24 # Skip protect_from_forgery in requests http://m.onkey.org/2007/9/28/csrf-protection-for-your-existing-rails-application
24 # Skip protect_from_forgery in requests http://m.onkey.org/2007/9/28/csrf-protection-for-your-existing-rails-application
25 config.action_controller.allow_forgery_protection = false
25 config.action_controller.allow_forgery_protection = false
26
27 config.gem "shoulda", :version => "~> 2.10.3"
28 config.gem "edavis10-object_daddy", :lib => "object_daddy"
29 config.gem "mocha"
@@ -1,24 +1,15
1 == Redmine installation
1 == Redmine installation
2
2
3 Redmine - project management software
3 Redmine - project management software
4 Copyright (C) 2006-2011 Jean-Philippe Lang
4 Copyright (C) 2006-2012 Jean-Philippe Lang
5 http://www.redmine.org/
5 http://www.redmine.org/
6
6
7
7
8 == Requirements
8 == Requirements
9
9
10 * Ruby 1.8.6 or 1.8.7
10 * Ruby 1.8.6 or 1.8.7
11
11 * RubyGems
12 * RubyGems 1.3.7
12 * Bundler >= 1.0.21
13
14 * Ruby on Rails 2.3.14 (official downloadable Redmine releases are packaged with
15 the appropriate Rails version)
16
17 * Rack 1.1.2 gem
18
19 * Rake 0.9.2 gem
20
21 * I18n 0.4.2 gem
22
13
23 * A database:
14 * A database:
24 * MySQL (tested with MySQL 5.1)
15 * MySQL (tested with MySQL 5.1)
@@ -26,44 +17,48 http://www.redmine.org/
26 * SQLite3 (tested with SQLite 3.6)
17 * SQLite3 (tested with SQLite 3.6)
27
18
28 Optional:
19 Optional:
29 * SCM binaries (e.g. svn), for repository browsing (must be available in PATH)
20 * SCM binaries (e.g. svn, git...), for repository browsing (must be available in PATH)
30 * RMagick (to enable Gantt export to png images)
21 * ImageMagick (to enable Gantt export to png images)
31 * Ruby OpenID Library >= version 2 (to enable OpenID support)
32
22
33 == Installation
23 == Installation
34
24
35 1. Uncompress the program archive
25 1. Uncompress the program archive
36
26
37 2. Create an empty database: "redmine" for example
27 2. Install the required gems by running:
28 bundle install --without development test
29
30 If ImageMagick is not installed on your system, you should skip the installation
31 of the rmagick gem using:
32 bundle install --without development test rmagick
33
34 3. Create an empty utf8 encoded database: "redmine" for example
38
35
39 3. Configure the database parameters in config/database.yml
36 4. Configure the database parameters in config/database.yml
40 for the "production" environment (default database is MySQL)
37 for the "production" environment (default database is MySQL)
41
38
42 4. Generate a session store secret
39 5. Generate a session store secret
43
40
44 Redmine stores session data in cookies by default, which requires
41 Redmine stores session data in cookies by default, which requires
45 a secret to be generated. Under the application main directory run:
42 a secret to be generated. Under the application main directory run:
46 rake generate_session_store
43 rake generate_session_store
47
44
48 5. Create the database structure
45 6. Create the database structure
49
46
50 Under the application main directory run:
47 Under the application main directory run:
51 rake db:migrate RAILS_ENV="production"
48 rake db:migrate RAILS_ENV="production"
52
49
53 It will create all the tables and an administrator account.
50 It will create all the tables and an administrator account.
54
51
55 6. Setting up permissions (Windows users have to skip this section)
52 7. Setting up permissions (Windows users have to skip this section)
56
53
57 The user who runs Redmine must have write permission on the following
54 The user who runs Redmine must have write permission on the following
58 subdirectories: files, log, tmp & public/plugin_assets (create the last
55 subdirectories: files, log, tmp & public/plugin_assets.
59 two if they are not yet present).
60
56
61 Assuming you run Redmine with a user named "redmine":
57 Assuming you run Redmine with a user named "redmine":
62 mkdir tmp public/plugin_assets
63 sudo chown -R redmine:redmine files log tmp public/plugin_assets
58 sudo chown -R redmine:redmine files log tmp public/plugin_assets
64 sudo chmod -R 755 files log tmp public/plugin_assets
59 sudo chmod -R 755 files log tmp public/plugin_assets
65
60
66 7. Test the installation by running the WEBrick web server
61 8. Test the installation by running the WEBrick web server
67
62
68 Under the main application directory run:
63 Under the main application directory run:
69 ruby script/server -e production
64 ruby script/server -e production
@@ -71,7 +66,7 Optional:
71 Once WEBrick has started, point your browser to http://localhost:3000/
66 Once WEBrick has started, point your browser to http://localhost:3000/
72 You should now see the application welcome page.
67 You should now see the application welcome page.
73
68
74 8. Use the default administrator account to log in:
69 9. Use the default administrator account to log in:
75 login: admin
70 login: admin
76 password: admin
71 password: admin
77
72
@@ -1,8 +1,9
1 Installing gems for testing
1 Installing gems for testing
2 ===========================
2 ===========================
3
3
4 Run `rake gems RAILS_ENV=test` to list the required gems. Run
4 Remove your .bundle/config if you've already installed Redmine without
5 `rake gems:install RAILS_ENV=test` to install any missing gems.
5 the test dependencies.
6 Then, run `bundle install`.
6
7
7 Running Tests
8 Running Tests
8 =============
9 =============
@@ -1,7 +1,7
1 == Redmine upgrade
1 == Redmine upgrade
2
2
3 Redmine - project management software
3 Redmine - project management software
4 Copyright (C) 2006-2011 Jean-Philippe Lang
4 Copyright (C) 2006-2012 Jean-Philippe Lang
5 http://www.redmine.org/
5 http://www.redmine.org/
6
6
7
7
@@ -20,7 +20,14 http://www.redmine.org/
20
20
21 4. Copy the folders of the installed plugins and themes into new installation
21 4. Copy the folders of the installed plugins and themes into new installation
22
22
23 5. Generate a session store secret
23 5. Install the required gems by running:
24 bundle install --without development test
25
26 If ImageMagick is not installed on your system, you should skip the installation
27 of the rmagick gem using:
28 bundle install --without development test rmagick
29
30 6. Generate a session store secret
24
31
25 Redmine stores session data in cookies by default, which requires
32 Redmine stores session data in cookies by default, which requires
26 a secret to be generated. Under the new application directory run:
33 a secret to be generated. Under the new application directory run:
@@ -28,7 +35,7 http://www.redmine.org/
28
35
29 DO NOT REPLACE OR EDIT ANY OTHER FILES.
36 DO NOT REPLACE OR EDIT ANY OTHER FILES.
30
37
31 6. Migrate your database
38 7. Migrate your database
32
39
33 If you are upgrading to Rails 2.3.14 as part of this migration, you
40 If you are upgrading to Rails 2.3.14 as part of this migration, you
34 need to upgrade the plugin migrations before running the plugin migrations
41 need to upgrade the plugin migrations before running the plugin migrations
@@ -43,20 +50,14 http://www.redmine.org/
43 migrations using:
50 migrations using:
44 rake db:migrate_plugins RAILS_ENV="production"
51 rake db:migrate_plugins RAILS_ENV="production"
45
52
46 7. Clean up
53 8. Clear the cache and the existing sessions by running:
47
48 Clear the cache and the existing sessions by running:
49 rake tmp:cache:clear
54 rake tmp:cache:clear
50 rake tmp:sessions:clear
55 rake tmp:sessions:clear
51
56
52 8. Restart the application server (e.g. mongrel, thin, passenger)
57 9. Restart the application server (e.g. mongrel, thin, passenger)
53
54 9. Finally go to "Administration -> Roles & permissions" to check/set permissions
55 for new features, if any
56
57 == Notes
58
58
59 * Rails 2.3.14 is required for versions 1.3.x.
59 10. Finally go to "Administration -> Roles & permissions" to check/set permissions
60 for new features, if any
60
61
61 == References
62 == References
62
63
General Comments 0
You need to be logged in to leave comments. Login now