# File lib/ohai/runner.rb, line 35
    def run_plugin(plugin)
      unless plugin.kind_of?(Ohai::DSL::Plugin)
        raise Ohai::Exceptions::InvalidPlugin, "Invalid plugin #{plugin} (must be an Ohai::DSL::Plugin or subclass)"
      end

      begin
        case plugin.version
        when :version7
          run_v7_plugin(plugin)
        when :version6
          run_v6_plugin(plugin)
        else
          raise Ohai::Exceptions::InvalidPlugin, "Invalid plugin version #{plugin.version} for plugin #{plugin}"
        end
      rescue Ohai::Exceptions::Error
        raise
      rescue Exception,Errno::ENOENT => e
        Ohai::Log.debug("Plugin #{plugin.name} threw exception #{e.inspect} #{e.backtrace.join("\n")}")
      end
    end