diff --git a/config.ru b/config.ru new file mode 100644 index 00000000000..a21389c22a4 --- /dev/null +++ b/config.ru @@ -0,0 +1,20 @@ +if ENV['MAINTENANCE_MODE'] + require 'sinatra' + require 'app/metal/hostess' + require 'rack/maintenance' + require 'aws/s3' + require 'lib/vault_object' + + get '/' do + send_file("public/maintenance/index.html") + end + + use Rack::Static, :urls => ["/index.html", "/favicon.ico", "/images", "/stylesheets"], :root => "public/maintenance" + use Hostess + run Sinatra::Application +else + require 'thin' + require 'rack/adapter/rails' + run Rack::Adapter::Rails.new(:environment => ENV['RAILS_ENV']) +end + diff --git a/config/environments/production.rb b/config/environments/production.rb index 3da71c72de1..91fe78539d4 100644 --- a/config/environments/production.rb +++ b/config/environments/production.rb @@ -31,14 +31,7 @@ config.after_initialize do require 'aws/s3' - AWS::S3::Base.establish_connection!( - :access_key_id => ENV['S3_KEY'], - :secret_access_key => ENV['S3_SECRET'] - ) - - class ::VaultObject < AWS::S3::S3Object - set_current_bucket_to "gemcutter_production" - end + require 'lib/vault_object' end if ENV['MEMCACHE_SERVERS'] diff --git a/config/environments/staging.rb b/config/environments/staging.rb index 89035cacf5b..d2139bca2dd 100644 --- a/config/environments/staging.rb +++ b/config/environments/staging.rb @@ -31,12 +31,5 @@ config.after_initialize do require 'aws/s3' - AWS::S3::Base.establish_connection!( - :access_key_id => ENV['S3_KEY'], - :secret_access_key => ENV['S3_SECRET'] - ) - - class ::VaultObject < AWS::S3::S3Object - set_current_bucket_to "gemcutter_staging" - end + require 'lib/vault_object' end diff --git a/db/schema.rb b/db/schema.rb index 8abb1b54bd2..0300708f8ea 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -78,11 +78,6 @@ add_index "requirements", ["dependency_id"], :name => "index_requirements_on_dependency_id" add_index "requirements", ["version_id"], :name => "index_requirements_on_version_id" - create_table "rubyforgers", :force => true do |t| - t.string "email" - t.string "encrypted_password", :limit => 40 - end - create_table "rubygems", :force => true do |t| t.string "name" t.datetime "created_at" diff --git a/lib/vault_object.rb b/lib/vault_object.rb new file mode 100644 index 00000000000..f153f807877 --- /dev/null +++ b/lib/vault_object.rb @@ -0,0 +1,8 @@ +AWS::S3::Base.establish_connection!( + :access_key_id => ENV['S3_KEY'], + :secret_access_key => ENV['S3_SECRET'] +) + +class ::VaultObject < AWS::S3::S3Object + set_current_bucket_to "gemcutter_#{(ENV['RACK_ENV'] || RAILS_ENV).downcase}" +end