class RedmineInstaller::Configuration::Base

Public Class Methods

new(redmine) click to toggle source
# File lib/redmine-installer/configuration.rb, line 31
def initialize(redmine)
  @redmine = redmine
end

Public Instance Methods

build() click to toggle source
# File lib/redmine-installer/configuration.rb, line 46
def build
  {
    'default' => {
      'email_delivery' => {
        'delivery_method' => delivery_method,
        "#{delivery_method}_settings" => delivery_settings
      }
    }
  }
end
delivery_method() click to toggle source
# File lib/redmine-installer/configuration.rb, line 57
def delivery_method
  :smtp
end
delivery_settings() click to toggle source
# File lib/redmine-installer/configuration.rb, line 61
def delivery_settings
  settings = {}

  # Required
  settings['address'] = @address
  settings['port']    = @port

  # Optional
  settings['authentication']       = @authentication.to_sym  unless @authentication.to_s.empty?
  settings['domain']               = @domain          unless @domain.to_s.empty?
  settings['user_name']            = @user_name       unless @user_name.to_s.empty?
  settings['password']             = @password        unless @password.to_s.empty?
  settings['tls']                  = @enable_tls      unless @enable_tls.to_s.empty?
  settings['enable_starttls_auto'] = @enable_starttls unless @enable_starttls.to_s.empty?
  settings['openssl_verify_mode']  = @openssl_verify  unless @openssl_verify.to_s.empty?

  settings
end
get_parameters() click to toggle source
# File lib/redmine-installer/configuration.rb, line 35
def get_parameters
  @user_name = prompt.ask('Username:', required: true)
  @password = prompt.mask('Password:', required: true)
end
make_config() click to toggle source
# File lib/redmine-installer/configuration.rb, line 40
def make_config
  File.open(@redmine.configuration_yml_path, 'w') do |f|
    f.puts(YAML.dump(build))
  end
end
to_s() click to toggle source
# File lib/redmine-installer/configuration.rb, line 80
def to_s
  "<#{class_name} #{@user_name}@#{@address}:#{@port}>"
end