mirror of
https://github.com/TracksApp/tracks.git
synced 2025-12-31 06:18:49 +01:00
Vendoring Rails 2.3.5
This commit is contained in:
parent
3e83d19299
commit
f8779795ce
943 changed files with 56503 additions and 61351 deletions
40
vendor/rails/railties/lib/tasks/databases.rake
vendored
40
vendor/rails/railties/lib/tasks/databases.rake
vendored
|
|
@ -1,7 +1,12 @@
|
|||
namespace :db do
|
||||
task :load_config => :rails_env do
|
||||
require 'active_record'
|
||||
ActiveRecord::Base.configurations = Rails::Configuration.new.database_configuration
|
||||
end
|
||||
|
||||
namespace :create do
|
||||
desc 'Create all the local databases defined in config/database.yml'
|
||||
task :all => :environment do
|
||||
task :all => :load_config do
|
||||
ActiveRecord::Base.configurations.each_value do |config|
|
||||
# Skip entries that don't have a database key, such as the first entry here:
|
||||
#
|
||||
|
|
@ -22,7 +27,7 @@ namespace :db do
|
|||
end
|
||||
|
||||
desc 'Create the database defined in config/database.yml for the current RAILS_ENV'
|
||||
task :create => :environment do
|
||||
task :create => :load_config do
|
||||
create_database(ActiveRecord::Base.configurations[RAILS_ENV])
|
||||
end
|
||||
|
||||
|
|
@ -50,7 +55,7 @@ namespace :db do
|
|||
case config['adapter']
|
||||
when 'mysql'
|
||||
@charset = ENV['CHARSET'] || 'utf8'
|
||||
@collation = ENV['COLLATION'] || 'utf8_general_ci'
|
||||
@collation = ENV['COLLATION'] || 'utf8_unicode_ci'
|
||||
begin
|
||||
ActiveRecord::Base.establish_connection(config.merge('database' => nil))
|
||||
ActiveRecord::Base.connection.create_database(config['database'], :charset => (config['charset'] || @charset), :collation => (config['collation'] || @collation))
|
||||
|
|
@ -76,7 +81,7 @@ namespace :db do
|
|||
|
||||
namespace :drop do
|
||||
desc 'Drops all the local databases defined in config/database.yml'
|
||||
task :all => :environment do
|
||||
task :all => :load_config do
|
||||
ActiveRecord::Base.configurations.each_value do |config|
|
||||
# Skip entries that don't have a database key
|
||||
next unless config['database']
|
||||
|
|
@ -87,7 +92,7 @@ namespace :db do
|
|||
end
|
||||
|
||||
desc 'Drops the database for the current RAILS_ENV'
|
||||
task :drop => :environment do
|
||||
task :drop => :load_config do
|
||||
config = ActiveRecord::Base.configurations[RAILS_ENV || 'development']
|
||||
begin
|
||||
drop_database(config)
|
||||
|
|
@ -105,7 +110,7 @@ namespace :db do
|
|||
end
|
||||
|
||||
|
||||
desc "Migrate the database through scripts in db/migrate. Target specific version with VERSION=x. Turn off output with VERBOSE=false."
|
||||
desc "Migrate the database through scripts in db/migrate and update db/schema.rb by invoking db:schema:dump. Target specific version with VERSION=x. Turn off output with VERBOSE=false."
|
||||
task :migrate => :environment do
|
||||
ActiveRecord::Migration.verbose = ENV["VERBOSE"] ? ENV["VERBOSE"] == "true" : true
|
||||
ActiveRecord::Migrator.migrate("db/migrate/", ENV["VERSION"] ? ENV["VERSION"].to_i : nil)
|
||||
|
|
@ -151,8 +156,8 @@ namespace :db do
|
|||
Rake::Task["db:schema:dump"].invoke if ActiveRecord::Base.schema_format == :ruby
|
||||
end
|
||||
|
||||
desc 'Drops and recreates the database from db/schema.rb for the current environment.'
|
||||
task :reset => ['db:drop', 'db:create', 'db:schema:load']
|
||||
desc 'Drops and recreates the database from db/schema.rb for the current environment and loads the seeds.'
|
||||
task :reset => [ 'db:drop', 'db:setup' ]
|
||||
|
||||
desc "Retrieves the charset for the current environment's database"
|
||||
task :charset => :environment do
|
||||
|
|
@ -201,6 +206,15 @@ namespace :db do
|
|||
end
|
||||
end
|
||||
|
||||
desc 'Create the database, load the schema, and initialize with the seed data'
|
||||
task :setup => [ 'db:create', 'db:schema:load', 'db:seed' ]
|
||||
|
||||
desc 'Load the seed data from db/seeds.rb'
|
||||
task :seed => :environment do
|
||||
seed_file = File.join(Rails.root, 'db', 'seeds.rb')
|
||||
load(seed_file) if File.exist?(seed_file)
|
||||
end
|
||||
|
||||
namespace :fixtures do
|
||||
desc "Load fixtures into the current environment's database. Load specific fixtures using FIXTURES=x,y. Load from subdirectory in test/fixtures using FIXTURES_DIR=z. Specify an alternative path (eg. spec/fixtures) using FIXTURES_PATH=spec/fixtures."
|
||||
task :load => :environment do
|
||||
|
|
@ -245,12 +259,17 @@ namespace :db do
|
|||
File.open(ENV['SCHEMA'] || "#{RAILS_ROOT}/db/schema.rb", "w") do |file|
|
||||
ActiveRecord::SchemaDumper.dump(ActiveRecord::Base.connection, file)
|
||||
end
|
||||
Rake::Task["db:schema:dump"].reenable
|
||||
end
|
||||
|
||||
desc "Load a schema.rb file into the database"
|
||||
task :load => :environment do
|
||||
file = ENV['SCHEMA'] || "#{RAILS_ROOT}/db/schema.rb"
|
||||
load(file)
|
||||
if File.exists?(file)
|
||||
load(file)
|
||||
else
|
||||
abort %{#{file} doesn't exist yet. Run "rake db:migrate" to create it then try again. If you do not intend to use a database, you should instead alter #{RAILS_ROOT}/config/environment.rb to prevent active_record from loading: config.frameworks -= [ :active_record ]}
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
@ -375,7 +394,7 @@ namespace :db do
|
|||
end
|
||||
|
||||
namespace :sessions do
|
||||
desc "Creates a sessions migration for use with CGI::Session::ActiveRecordStore"
|
||||
desc "Creates a sessions migration for use with ActiveRecord::SessionStore"
|
||||
task :create => :environment do
|
||||
raise "Task unavailable to this database (no migration support)" unless ActiveRecord::Base.connection.supports_migrations?
|
||||
require 'rails_generator'
|
||||
|
|
@ -393,6 +412,7 @@ end
|
|||
def drop_database(config)
|
||||
case config['adapter']
|
||||
when 'mysql'
|
||||
ActiveRecord::Base.establish_connection(config)
|
||||
ActiveRecord::Base.connection.drop_database config['database']
|
||||
when /^sqlite/
|
||||
FileUtils.rm(File.join(RAILS_ROOT, config['database']))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue