Sha256: c4075b19bdef84e57cb4c349dc48c5195f99b3e070c6086fa12e7f1bcc750fec

Contents?: true

Size: 1.15 KB

Versions: 1

Compression:

Stored size: 1.15 KB

Contents

require 'rubyipmi/ipmitool/errorcodes'
require 'rubyipmi/observablehash'
require 'rubyipmi/commands/basecommand'
require 'rubyipmi/ipmitool/commands/basecommand'

Dir[File.dirname(__FILE__) + '/commands/*.rb'].each do |file|
  require "#{file.split(".rb").first}"
end

module Rubyipmi
  module Ipmitool

    class Connection

      attr_accessor :options


      def initialize(user, pass, host)
        @options = Rubyipmi::ObservableHash.new
        raise("Must provide a host to connect to") unless host
        @options["H"] = host
        # Credentials can also be stored in the freeipmi configuration file
        # So they are not required
        @options["U"] = user if user
        @options["P"] = pass if pass
        # default to IPMI 2.0 communication
        #@options["I"] = "lanplus"

        #getWorkArounds
      end

      def provider
        return "ipmitool"
      end

      def bmc
        @bmc ||= Rubyipmi::Ipmitool::Bmc.new(@options)
      end

      def sensors
        @sensors ||= Rubyipmi::Ipmitool::Sensors.new(@options)
      end

      def chassis
        @chassis ||= Rubyipmi::Ipmitool::Chassis.new(@options)
      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rubyipmi-0.4.0 lib/rubyipmi/ipmitool/connection.rb