class EasyAppHelper::Scripts::Master

Attributes

script_name[R]

Public Class Methods

new(app_name, app_version, app_description, config_file_base_name=nil) click to toggle source
# File lib/easy_app_helper/scripts/master.rb, line 12
def initialize(app_name, app_version, app_description, config_file_base_name=nil)
  @script_name = File.basename $0
  config.config_file_base_name = config_file_base_name.nil? ? script_name : config_file_base_name
  config.describes_application app_name: app_name,
                               app_version: app_version,
                               app_description: app_description
end

Public Instance Methods

display_help() click to toggle source
# File lib/easy_app_helper/scripts/master.rb, line 49
def display_help
  config.command_line_help
end
do_process() click to toggle source
# File lib/easy_app_helper/scripts/master.rb, line 53
def do_process
  raise 'Please implement do_process in your action !'
end
run() click to toggle source
# File lib/easy_app_helper/scripts/master.rb, line 20
def run
  safe_execution do
    if sub_command_mode?
      if ARGV.length == 1
        %w(--help -h --version).each do |option|
          if ARGV.include? option
            if option == '--version'
              puts DeploymentManager::VERSION
            else
              puts display_help
            end
            exit 0
          end
        end
      end
      if ARGV.empty?
        puts display_help
        exit 0
      end
      delegate_to_sub_command
    else
      pre_process
      do_process
    end
    logger.info 'Application terminates successfully...'
    exit 0
  end
end

Private Instance Methods

sub_command_mode?() click to toggle source
# File lib/easy_app_helper/scripts/master.rb, line 59
def sub_command_mode?
  self.class.included_modules.include? EasyAppHelper::Scripts::SubCommandManager
end