Module: Radfish

Defined in:
lib/radfish.rb,
lib/radfish/cli.rb,
lib/radfish/client.rb,
lib/radfish/volume.rb,
lib/radfish/version.rb,
lib/radfish/bmc_info.rb,
lib/radfish/cli/base.rb,
lib/radfish/pci_info.rb,
lib/radfish/boot_info.rb,
lib/radfish/core/boot.rb,
lib/radfish/core/jobs.rb,
lib/radfish/controller.rb,
lib/radfish/core/power.rb,
lib/radfish/power_info.rb,
lib/radfish/core/system.rb,
lib/radfish/http_client.rb,
lib/radfish/system_info.rb,
lib/radfish/core/network.rb,
lib/radfish/core/session.rb,
lib/radfish/core/storage.rb,
lib/radfish/core/utility.rb,
lib/radfish/thermal_info.rb,
lib/radfish/vendor_detector.rb,
lib/radfish/core/base_client.rb,
lib/radfish/core/virtual_media.rb

Defined Under Namespace

Modules: CLI, Core, Debuggable Classes: AuthenticationError, BmcInfo, BootInfo, BootProgressTimeout, Client, ConnectionError, Controller, Error, HttpClient, NotFoundError, PciInfo, PowerInfo, SystemInfo, TaskError, TaskFailedError, TaskTimeoutError, ThermalInfo, TimeoutError, UnsupportedVendorError, VendorDetector, VirtualMediaBusyError, VirtualMediaConnectionError, VirtualMediaError, VirtualMediaLicenseError, VirtualMediaNotFoundError, Volume

Constant Summary collapse

VERSION =
"0.3.1"

Class Method Summary collapse

Class Method Details

.connect(**options, &block) ⇒ Object



57
58
59
# File 'lib/radfish.rb', line 57

def connect(**options, &block)
  Client.connect(**options, &block)
end

.detect_vendor(host:, username:, password:, verbosity: 0, **options) ⇒ Object



61
62
63
64
65
# File 'lib/radfish.rb', line 61

def detect_vendor(host:, username:, password:, verbosity: 0, **options)
  vendor_detector = VendorDetector.new(host: host, username: username, password: password, **options)
  vendor_detector.verbosity = verbosity
  vendor_detector.detect
end

.get_adapter(vendor) ⇒ Object



72
73
74
75
# File 'lib/radfish.rb', line 72

def get_adapter(vendor)
  @adapters ||= {}
  @adapters[vendor.to_s.downcase]
end

.new(options = {}) ⇒ Object



53
54
55
# File 'lib/radfish.rb', line 53

def new(options = {})
  Client.new(options)
end

.register_adapter(vendor, adapter_class) ⇒ Object



67
68
69
70
# File 'lib/radfish.rb', line 67

def register_adapter(vendor, adapter_class)
  @adapters ||= {}
  @adapters[vendor.to_s.downcase] = adapter_class
end

.supported_vendorsObject



77
78
79
# File 'lib/radfish.rb', line 77

def supported_vendors
  @adapters&.keys || []
end