Sha256: 5dd2830201845aa29866a9ba8073225194aa634083bfad3e1885d7fe7498fc7b

Contents?: true

Size: 1.19 KB

Versions: 2

Compression:

Stored size: 1.19 KB

Contents

module Hackpad
  module Config
    extend self

    def load(options)
      configdir = options[:configdir]
      configfile = File.join(configdir, "#{options[:workspace]}.yml")
      # temporary migration path
      if !File.exists?(configfile) && File.exists?(File.join(configdir, "config.yml"))
        FileUtils.mv File.join(configdir, "config.yml"), configfile
      end
      if !Dir.exists?(configdir) || !File.exists?(configfile)
        setup configfile
      end
      YAML::load_file configfile
    end

  private

    def setup(configfile)
      config = {}
      FileUtils.mkdir_p File.dirname(configfile)
      puts "We need first to initialize your hackpad-cli configuration.".colorize(:blue)
      puts "Please gather your information from https://<subdomain>.hackpad.com/ep/account/settings/"
      print "What is your Client ID?  "
      STDOUT.flush
      config['client_id'] = STDIN.gets.chomp
      print "What is your Secret Key? "
      STDOUT.flush
      config['secret'] = STDIN.gets.chomp
      print "What is the URI of your pad? "
      STDOUT.flush
      config['site'] = STDIN.gets.chomp
      File.open(configfile, "w") do |f|
        f.write YAML::dump(config)
      end
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
hackpad-cli-0.0.4 lib/hackpad/config.rb
hackpad-cli-0.0.3 lib/hackpad/config.rb