class RedmineInstaller::Database
Public Class Methods
create_config(redmine)
click to toggle source
# File lib/redmine-installer/database.rb, line 5 def self.create_config(redmine) # Maybe: enum_select klass = prompt.select('What database do you want use?') do |menu| menu.choice 'MySQL', MySQL menu.choice 'PostgreSQL', PostgreSQL end # Get parameters and create configuration database = klass.new(redmine) database.get_parameters database.make_config database end
init(redmine)
click to toggle source
# File lib/redmine-installer/database.rb, line 19 def self.init(redmine) unless File.exist?(redmine.database_yml_path) error "Database configuration files does not exist on #{redmine.root}." end definitions = YAML.load_file(redmine.database_yml_path) definition = definitions['production'] unless definition.is_a?(Hash) error 'Unknow database definition' end case definition['adapter'] when 'mysql', 'mysql2' klass = MySQL when 'pg', 'postgresql' klass = PostgreSQL else error "Unknow database adapter #{definition['adapter']}." end database = klass.new(redmine) database.set_paramaters(definition) database end