Module: MgmtConsole::Configurable

Included in:
MgmtConsole, Client
Defined in:
lib/mgmt_console/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_token ⇒ Object

Returns the value of attribute access_token.



48
49
50
# File 'lib/mgmt_console/configurable.rb', line 48

def access_token
  @access_token
end

#api_endpoint ⇒ String

Returns Base URL for API requests. default: https://api.github.com/.

Returns:



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#auto_paginate ⇒ Boolean

Returns Auto fetch next page of results until rate limit reached.

Returns:

  • (Boolean) —

    Auto fetch next page of results until rate limit reached



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#client_id ⇒ String

Returns Configure OAuth app key.

Returns:

  • (String) —

    Configure OAuth app key

See Also:



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#client_secret=(value) ⇒ String (writeonly)

Returns Configure OAuth app secret.

Returns:

  • (String) —

    Configure OAuth app secret

See Also:



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#connection_options ⇒ Hash

Returns Configure connection options for Faraday.

Returns:

  • (Hash) —

    Configure connection options for Faraday

See Also:



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#default_media_type ⇒ String

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

Returns:

  • (String) —

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

See Also:



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#login ⇒ String

Returns GitHub username for Basic Authentication.

Returns:

  • (String) —

    GitHub username for Basic Authentication



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#middleware ⇒ Faraday::Builder or Faraday::RackBuilder

Returns Configure middleware for Faraday.

Returns:

  • (Faraday::Builder or Faraday::RackBuilder) —

    Configure middleware for Faraday

See Also:



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#netrc ⇒ Boolean

Returns Instruct MgmtConsole to get credentials from .netrc file.

Returns:

  • (Boolean) —

    Instruct MgmtConsole to get credentials from .netrc file



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#netrc_file ⇒ String

Returns Path to .netrc file. default: ~/.netrc.

Returns:

  • (String) —

    Path to .netrc file. default: ~/.netrc



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#password=(value) ⇒ String (writeonly)

Returns GitHub password for Basic Authentication.

Returns:

  • (String) —

    GitHub password for Basic Authentication



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#per_page ⇒ String

Returns Configure page size for paginated results. API default: 30.

Returns:

  • (String) —

    Configure page size for paginated results. API default: 30



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#proxy ⇒ String

Returns URI for proxy server.

Returns:

  • (String) —

    URI for proxy server

See Also:



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#ssl_verify ⇒ Boolean

Returns Configure SSL verification for Faraday.

Returns:

  • (Boolean) —

    Configure SSL verification for Faraday



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#user_agent ⇒ String

Returns Configure User-Agent header for requests.

Returns:

  • (String) —

    Configure User-Agent header for requests.



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

#web_endpoint ⇒ String

Base URL for generated web URLs

Returns:



48
49
50
51
# File 'lib/mgmt_console/configurable.rb', line 48

attr_accessor :access_token, :auto_paginate,
:default_media_type, :connection_options,
:middleware, :ssl_verify,
:per_page, :proxy, :user_agent

Class Method Details

.keys ⇒ Array

List of configurable keys for MgmtConsole::Client

Returns:

  • (Array) —

    of option keys



58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# File 'lib/mgmt_console/configurable.rb', line 58

def keys
  @keys ||= [
    :access_token,
    :api_endpoint,
    :auto_paginate,
    :connection_options,
    :default_media_type,
    :middleware,
    :per_page,
    :proxy,
    :ssl_verify,
    :user_agent,
    :web_endpoint
  ]
end

Instance Method Details

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

Set configuration options using a block

Yields:

  • (_self)

Yield Parameters:



76
77
78
# File 'lib/mgmt_console/configurable.rb', line 76

def configure
  yield self
end

#reset! ⇒ Object Also known as: setup

Reset configuration options to default values



81
82
83
84
85
86
# File 'lib/mgmt_console/configurable.rb', line 81

def reset!
  MgmtConsole::Configurable.keys.each do |key|
    instance_variable_set(:"@#{key}", MgmtConsole::Default.options[key])
  end
  self
end