Sha256: 668e7c3249554826d13bd29f748ac8461d9517b7fffad3e2e8a897fe0058941b

Contents?: true

Size: 848 Bytes

Versions: 1

Compression:

Stored size: 848 Bytes

Contents

require 'thor'

module SiteHook
  def self.log_levels
    default = {
      'hook' => 'info',
      'build' => 'info',
      'git' => 'info',
      'app' => 'info'
    }
    begin
      log_level = YAML.load_file(Pathname(Dir.home).join('.jph-rc')).fetch('log_levels')
      if log_level
        log_level
      end
    rescue KeyError
      default
    rescue Errno::ENOENT
      default
    end
  end

  class CLI < Thor
    map %w[--version -v] => :__print_version
    desc '--version, -v', 'Print the version'

    # Prints version string
    # @return [NilClass] nil
    def __print_version
      puts SiteHook::VERSION
    end

    method_option(:log_levels, type: :hash, banner: 'LEVELS', default: SiteHook.log_levels)

    desc 'start', 'Start SiteHook'

    def start
      SiteHook.mklogdir
      SiteHook::Webhook.run!
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
site_hook-0.2.0 lib/site_hook/cli.rb