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