Module: Octokit::Configurable

Included in:
Octokit, Client, EnterpriseAdminClient, EnterpriseManagementConsoleClient, ManageGHESClient
Defined in:
lib/octokit/configurable.rb

Overview

Configuration options for Client, defaulting to values in Default

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#access_tokenObject

Returns the value of attribute access_token.



63
64
65
# File 'lib/octokit/configurable.rb', line 63

def access_token
  @access_token
end

#api_endpointString



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#auto_paginateBoolean



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#bearer_tokenObject

Returns the value of attribute bearer_token.



63
64
65
# File 'lib/octokit/configurable.rb', line 63

def bearer_token
  @bearer_token
end

#client_idString

Returns Configure OAuth app key.



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#client_secretObject

Returns the value of attribute client_secret.



63
64
65
# File 'lib/octokit/configurable.rb', line 63

def client_secret
  @client_secret
end

#connection_optionsHash

Returns Configure connection options for Faraday.



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#default_media_typeString

Returns Configure preferred media type (for API versioning, for example).



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#loginString



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#manage_ghes_endpointString



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#manage_ghes_passwordString



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#manage_ghes_usernameString



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#management_console_endpointString



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#management_console_passwordString



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#middlewareFaraday::Builder or Faraday::RackBuilder

Returns Configure middleware for Faraday.



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#netrcBoolean



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#netrc_fileString



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#password=(value) ⇒ String (writeonly)



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#per_pageString



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#proxyString

Returns URI for proxy server.



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#ssl_verify_modeString

Returns SSL verify mode for ssl connections.



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#user_agentString



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

#web_endpointString

Base URL for generated web URLs



63
64
65
66
# File 'lib/octokit/configurable.rb', line 63

attr_accessor :access_token, :auto_paginate, :bearer_token, :client_id,
:client_secret, :default_media_type, :connection_options,
:middleware, :netrc, :netrc_file,
:per_page, :proxy, :ssl_verify_mode, :user_agent

Class Method Details

.keysArray

List of configurable keys for Octokit::Client



76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# File 'lib/octokit/configurable.rb', line 76

def keys
  @keys ||= i[
    access_token
    api_endpoint
    auto_paginate
    bearer_token
    client_id
    client_secret
    connection_options
    default_media_type
    
    management_console_endpoint
    management_console_password
    manage_ghes_endpoint
    manage_ghes_username
    manage_ghes_password
    middleware
    netrc
    netrc_file
    per_page
    password
    proxy
    ssl_verify_mode
    user_agent
    web_endpoint
  ]
end

Instance Method Details

#configure {|_self| ... } ⇒ Object

Set configuration options using a block

Yields:

  • (_self)

Yield Parameters:



106
107
108
# File 'lib/octokit/configurable.rb', line 106

def configure
  yield self
end

#netrc?Boolean



156
157
158
# File 'lib/octokit/configurable.rb', line 156

def netrc?
  !!@netrc
end

#reset!Object Also known as: setup

Reset configuration options to default values



111
112
113
114
115
116
117
118
119
120
121
122
# File 'lib/octokit/configurable.rb', line 111

def reset!
  # rubocop:disable Style/HashEachMethods
  #
  # This may look like a `.keys.each` which should be replaced with `#each_key`, but
  # this doesn't actually work, since `#keys` is just a method we've defined ourselves.
  # The class doesn't fulfill the whole `Enumerable` contract.
  Octokit::Configurable.keys.each do |key|
    # rubocop:enable Style/HashEachMethods
    instance_variable_set(:"@#{key}", Octokit::Default.options[key])
  end
  self
end

#same_options?(opts) ⇒ Boolean

Compares client options to a Hash of requested options



129
130
131
# File 'lib/octokit/configurable.rb', line 129

def same_options?(opts)
  opts.hash == options.hash
end