Sha256: 6616bb84ddf25a302f7a35e62cf1e34a3a94cc7d48c8233012b1a79968701dc6

Contents?: true

Size: 1.02 KB

Versions: 1

Compression:

Stored size: 1.02 KB

Contents

require 'thor'
require 'customer_miner/version'
require 'customer_miner/query'

module CustomerMiner
  class CLI< Thor
    map '--version' => :version

    desc 'version', 'Prints the cm version'
    def version
      puts "#{File.basename($0)} #{VERSION}"
    end

    desc 'set_key', 'Set secret API key. You can get it from https://dashboard.clearbit.com/api'
    option :key, required: true, banner: "your_secret_api_key"
    def set_key
      key = options[:key]
      file = "#{Dir.home}/.customer_miner"
      File.open(file, 'w') do |file|
        file.write(key)
      end
      File.chmod(0600, file)
      puts "Set secret API key successfully"
    end

    desc 'query', 'query customer data and generate csv file'
    def query(args)
      unless args
        puts "plese speciy file name"
        return
      end

      file_name = "#{Dir.home}/.customer_miner"
      key = File.read(file_name)
      Query.new(file: args, secret_key:key).perform
    end

    def method_missing(file)
      query(file.to_s)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
customer_miner-0.0.3 lib/customer_miner/cli.rb