class Kitchen::Driver::Static::Queueing::Base

Attributes

banner[R]
env_vars[R]
options[R]
release_options[R]
request_options[R]

Public Class Methods

descendants() click to toggle source
# File lib/kitchen/driver/queueing/base.rb, line 45
def self.descendants
  ObjectSpace.each_object(Class).select { |klass| klass < self }
end
new(options) click to toggle source
# File lib/kitchen/driver/queueing/base.rb, line 16
def initialize(options)
  @options = {
    queueing_timeout: 3600,
  }

  @request_options = {}
  @release_options = {}

  setup(options)

  process_kitchen_options(options)
end

Public Instance Methods

banner?() click to toggle source
release(state) click to toggle source
# File lib/kitchen/driver/queueing/base.rb, line 33
def release(state)
  @env_vars = {
    STATIC_HOSTNAME: state[:hostname],
  }

  handle_release(state)
end
request(state) click to toggle source
# File lib/kitchen/driver/queueing/base.rb, line 29
def request(state)
  handle_request(state)
end

Private Instance Methods

default_release_options(options = {}) click to toggle source
# File lib/kitchen/driver/queueing/base.rb, line 67
def default_release_options(options = {})
  @release_options.merge!(options)
end
default_request_options(options = {}) click to toggle source
# File lib/kitchen/driver/queueing/base.rb, line 63
def default_request_options(options = {})
  @request_options.merge!(options)
end
handle_release(_state) click to toggle source
# File lib/kitchen/driver/queueing/base.rb, line 59
def handle_release(_state)
  raise "Implement release handler"
end
handle_request(_state) click to toggle source
# File lib/kitchen/driver/queueing/base.rb, line 55
def handle_request(_state)
  raise "Implement request handler"
end
process_kitchen_options(kitchen_options) click to toggle source
# File lib/kitchen/driver/queueing/base.rb, line 71
def process_kitchen_options(kitchen_options)
  @options = kitchen_options

  @request_options.merge!(options[:request])
  @options.delete(:request)

  @release_options.merge!(options[:release])
  @options.delete(:release)
end
setup(_options) click to toggle source
# File lib/kitchen/driver/queueing/base.rb, line 51
def setup(_options)
  # Add setup and defaults in specific handler
end
timeout() click to toggle source
# File lib/kitchen/driver/queueing/base.rb, line 81
def timeout
  options[:queueing_timeout]
end