Class: Redmine::Installer::Step::Validation

Inherits:
Base
  • Object
show all
Defined in:
lib/redmine-installer/steps/validation.rb

Constant Summary collapse

REDMINE_SHOULD_CONTAINS =
[
  'app', 'lib', 'config', 'public', 'db',
  'Gemfile', 'Rakefile', 'config.ru',
  File.join('lib', 'redmine'),
  File.join('lib', 'redmine', 'core_ext'),
  File.join('lib', 'redmine', 'helpers'),
  File.join('lib', 'redmine', 'views'),
  File.join('lib', 'redmine.rb'),
].sort

Instance Attribute Summary

Attributes inherited from Base

#base, #index, #ran

Instance Method Summary collapse

Methods inherited from Base

#down, #final, #initialize, #load, #prepare, #print_header, #print_title, #redmine_plugins, #save

Methods included from Utils

included

Constructor Details

This class inherits a constructor from Redmine::Installer::Step::Base

Instance Method Details



33
34
35
# File 'lib/redmine-installer/steps/validation.rb', line 33

def print_footer
  say '<green>... OK</green>', 1
end

#upObject



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/redmine-installer/steps/validation.rb', line 17

def up
  Dir.chdir(base.redmine_root) do
    @records = Dir.glob(File.join('**', '*')).sort
  end

  # Is this redmine
  unless (@records & REDMINE_SHOULD_CONTAINS) == REDMINE_SHOULD_CONTAINS
    error :error_redmine_not_contains_all, records: REDMINE_SHOULD_CONTAINS.join(', ')
  end

  # Plugins are in righ dir
  if @records.select{|x| x.start_with?('vendor/plugins')}.size > 1
    error :error_plugins_should_be_on_plugins
  end
end