Sha256: 9d9ad8383ecfb716157c6b20c697237d50f2716bed6c0b90c1cb592d2086802d

Contents?: true

Size: 675 Bytes

Versions: 4

Compression:

Stored size: 675 Bytes

Contents

# frozen_string_literal: true

require 'singleton'
require 'yaml'

module HS
  class Config
    include Singleton

    DEFAULT_BASE_URL = 'http://hackerschool.ge'
    DEFAULT_PREVIEW_DIR = 'previews'

    def self.publish_url
      instance.publish_url
    end

    def self.preview_dir
      instance.preview_dir
    end

    def initialize
      @data = load_configuration
    end

    def publish_url
      @data['publish_url'] || DEFAULT_BASE_URL
    end

    def preview_dir
      @data['preview_dir'] || DEFAULT_PREVIEW_DIR
    end

    private

    def load_configuration
      return {} unless File.exist?('.hs.yml')
      YAML.load_file('.hs.yml')
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
hs-cli-0.2.2 lib/hs/config.rb
hs-cli-0.2.1 lib/hs/config.rb
hs-cli-0.2.0 lib/hs/config.rb
hs-cli-0.1.2 lib/hs/config.rb