Sha256: dac82b61172c35946c9d131756ad9734ef0156d008c08b7d1a3f9041023bc803

Contents?: true

Size: 1.05 KB

Versions: 6

Compression:

Stored size: 1.05 KB

Contents

require 'faraday'
require 'json'
require 'base64'

module Alegra
  class Setup
    attr_accessor :host, :path, :apikey, :username, :debug, :token

    def initialize(username=nil, apikey=nil, debug=false)
      @host = 'https://app.alegra.com/'
      @path = 'api/v1/'

      @debug = debug

      if not apikey
        if ENV['ALEGRA_APIKEY']
          @apikey = ENV['ALEGRA_APIKEY']
        else
          raise 'set up the ALEGRA_APIKEY environment variable'
          # apikey = read_configs
        end
      end

      if not username
        if ENV['ALEGRA_USERNAME']
          @username = ENV['ALEGRA_USERNAME']
        else
          raise 'set up the ALEGRA_USERNAME environment variable'
          # apikey = read_configs
        end
      end

      raise Error, 'You must provide a ALEGRA API key' if not apikey
      raise Error, 'You must provide a ALEGRA USERNAME' if not username
      @apikey = apikey
      @username = username
      create_token!
    end

    def create_token!
      @token = ::Base64.encode64("#{@username}:#{@apikey}")
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
alegra-0.1.2.3 lib/alegra/setup.rb
alegra-0.1.2.2 lib/alegra/setup.rb
alegra-0.1.2.1 lib/alegra/setup.rb
alegra-0.1.2 lib/alegra/setup.rb
alegra-0.1.1 lib/alegra/setup.rb
alegra-0.1.0 lib/alegra/setup.rb