./lib/helios/commands/server.rb in helios-0.2.1 vs ./lib/helios/commands/server.rb in helios-0.2.2

- old
+ new

@@ -26,18 +26,21 @@ def validate_database_settings! Dotenv.load say_error "DATABASE_URL environment variable not set in .env or in Rails config/database.yml" and abort if ENV['DATABASE_URL'].nil? + uri = URI(ENV['DATABASE_URL']) + + say_error "DATABASE_URL environment variable not set to PostgreSQL database" and abort unless ["postgres", "postgresql"].include?(uri.scheme) + begin db = Sequel.connect(ENV['DATABASE_URL']) db.test_connection rescue Sequel::DatabaseConnectionError => error say_warning %{Error connecting to database: "#{error.message.strip}"} case error.message when /database "(.+)" does not exist/ if agree "Would you like to create this database now? (y/n)" - uri = URI(db.uri) host, database = uri.host, uri.path.delete("/") log 'createdb', database system "createdb -h #{host} #{database}" end