Class: Runbox::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/runbox/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



7
8
9
10
11
12
# File 'lib/runbox/configuration.rb', line 7

def initialize
  @url = ENV.fetch("RUNBOX_URL", "http://localhost:8080")
  @api_key = ENV.fetch("RUNBOX_API_KEY", nil)
  @timeout = 120 # HTTP timeout (longer than execution timeout)
  @open_timeout = 10
end

Instance Attribute Details

#api_keyObject

Returns the value of attribute api_key.



5
6
7
# File 'lib/runbox/configuration.rb', line 5

def api_key
  @api_key
end

#open_timeoutObject

Returns the value of attribute open_timeout.



5
6
7
# File 'lib/runbox/configuration.rb', line 5

def open_timeout
  @open_timeout
end

#timeoutObject

Returns the value of attribute timeout.



5
6
7
# File 'lib/runbox/configuration.rb', line 5

def timeout
  @timeout
end

#urlObject

Returns the value of attribute url.



5
6
7
# File 'lib/runbox/configuration.rb', line 5

def url
  @url
end

Instance Method Details

#validate!Object

Raises:



14
15
16
17
# File 'lib/runbox/configuration.rb', line 14

def validate!
  raise ConfigurationError, "API key is required" if api_key.nil? || api_key.empty?
  raise ConfigurationError, "URL is required" if url.nil? || url.empty?
end