Sha256: 20675412003b20a7f9f26d0183bd3f84e7fbfb0e9281452daed53abf6dad15d9

Contents?: true

Size: 812 Bytes

Versions: 2

Compression:

Stored size: 812 Bytes

Contents

require 'octokit'
require 'octoauth'

module Targit
  ##
  # Helper module to load a GitHub API client object
  module Client
    private

    def client
      @client ||= _client
    end

    def _client
      auth = Octoauth.new octoauth_options
      Octokit::Client.new(
        access_token: auth.token,
        api_endpoint: @options[:api_endpoint],
        web_endpoint: @options[:api_endpoint],
        auto_paginate: true
      )
    end

    def octoauth_options
      {
        note: 'targit',
        files: authfiles,
        autosave: @options[:autosave] || true,
        api_endpoint: @options[:api_endpoint],
        scopes: ['public_repo']
      }
    end

    def authfiles
      return [:default] unless @options[:authfile]
      @authfile ||= @options[:authfile].split(',')
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
targit-2.2.0 lib/targit/client.rb
targit-2.1.0 lib/targit/client.rb