Module: Sem::API::Base

Included in:
EnvVar, File, Org, Project, Secret, Team, User
Defined in:
lib/sem/api/base.rb

Class Method Summary collapse

Class Method Details

.api_loggerObject



16
17
18
19
20
21
22
23
24
# File 'lib/sem/api/base.rb', line 16

def api_logger
  return nil unless Sem.trace?
  return @api_logger if defined?(@api_logger)

  @api_logger = Logger.new(STDOUT)
  @api_logger.level = Logger::DEBUG

  @api_logger
end

.clientObject



4
5
6
7
8
# File 'lib/sem/api/base.rb', line 4

def client
  @client ||= create_new_api_client(
    Sem::Configuration.api_url,
    Sem::Configuration.auth_token)
end

.create_new_api_client(api_url, auth_token) ⇒ Object



10
11
12
13
14
# File 'lib/sem/api/base.rb', line 10

def create_new_api_client(api_url, auth_token)
  SemaphoreClient.new(auth_token, :api_url => api_url,
                                  :logger => api_logger,
                                  :auto_paginate => true)
end