lib/idrac.rb
# frozen_string_literal: true require 'httparty' require 'nokogiri' require 'faraday' require 'faraday/multipart' require 'base64' require 'uri' require 'colorize' require 'recursive-open-struct' # If dev, required debug require 'debug' if ENV['RUBY_ENV'] == 'development' module IDRAC # Provides debugging functionality to IDRAC classes module Debuggable # Debug output helper - only outputs if verbosity level is high enough def debug(message, level = 1, color = :light_cyan) return unless respond_to?(:verbosity) && verbosity >= level color_method = color.is_a?(Symbol) && String.method_defined?(color) ? color : :to_s puts message.send(color_method) # For highest verbosity, also print stack trace if respond_to?(:verbosity) && verbosity >= 3 && caller.length > 1 puts " Called from:".light_yellow caller[1..3].each do |call| puts " #{call}".light_yellow end end end end class Error < StandardError; end def self.new(options = {}) Client.new(options) end end require 'idrac/version' require 'idrac/core_ext' require 'idrac/error' require 'idrac/web' require 'idrac/firmware_catalog' require 'idrac/firmware' require 'idrac/session' require 'idrac/power' require 'idrac/lifecycle' require 'idrac/jobs' require 'idrac/storage' require 'idrac/system' require 'idrac/virtual_media' require 'idrac/boot' require 'idrac/license' require 'idrac/client'