Class: Kitchen::Driver::Proxy
- Inherits:
-
Base
- Object
- Plugin::Base
- Base
- Kitchen::Driver::Proxy
- Defined in:
- lib/kitchen/driver/proxy.rb
Overview
Simple driver that proxies commands through to a test instance whose lifecycle is not managed by Test Kitchen. This driver is useful for long- lived non-ephemeral test instances that are simply “reset” between test runs. Think executing against devices like network switches–this is why the driver was created.
Instance Attribute Summary
Attributes included from Configurable
Instance Method Summary collapse
-
#create(state) ⇒ Object
Creates an instance.
-
#destroy(state) ⇒ Object
Destroys an instance.
Methods inherited from Base
#cache_directory, #doctor, #initialize, kitchen_driver_api_version, #package
Methods included from ShellOut
Methods included from Logging
#banner, #debug, #error, #fatal, #info, #warn
Methods included from Configurable
#[], #bourne_shell?, #calculate_path, #config_keys, #diagnose, #diagnose_plugin, #finalize_config!, included, #name, #powershell_shell?, #remote_path_join, #unix_os?, #verify_dependencies, #windows_os?
Methods inherited from Plugin::Base
Constructor Details
This class inherits a constructor from Kitchen::Driver::Base
Instance Method Details
#create(state) ⇒ Object
Creates an instance.
35 36 37 38 39 40 41 42 |
# File 'lib/kitchen/driver/proxy.rb', line 35 def create(state) super state[:hostname] = config[:host] state[:port] = config[:port] if config[:port] state[:username] = config[:username] if config[:username] state[:password] = config[:password] if config[:password] reset_instance(state) end |
#destroy(state) ⇒ Object
Destroys an instance.
45 46 47 48 49 50 |
# File 'lib/kitchen/driver/proxy.rb', line 45 def destroy(state) return if state[:hostname].nil? reset_instance(state) state.delete(:hostname) end |