class Inspec::Resources::Bridge

Public Class Methods

new(bridge_name) click to toggle source
# File lib/inspec/resources/bridge.rb, line 21
def initialize(bridge_name)
  @bridge_name = bridge_name

  @bridge_provider = nil
  if inspec.os.linux?
    @bridge_provider = LinuxBridge.new(inspec)
  elsif inspec.os.windows?
    @bridge_provider = WindowsBridge.new(inspec)
  else
    skip_resource "The `bridge` resource is not supported on your OS yet."
  end
end

Public Instance Methods

exists?() click to toggle source
# File lib/inspec/resources/bridge.rb, line 34
def exists?
  !bridge_info.nil? && !bridge_info[:name].nil?
end
has_interface?(interface) click to toggle source
# File lib/inspec/resources/bridge.rb, line 38
def has_interface?(interface)
  return skip_resource "The `bridge` resource does not provide interface detection for Windows yet" if inspec.os.windows?

  bridge_info.nil? ? false : bridge_info[:interfaces].include?(interface)
end
interfaces() click to toggle source
# File lib/inspec/resources/bridge.rb, line 44
def interfaces
  bridge_info.nil? ? nil : bridge_info[:interfaces]
end
to_s() click to toggle source
# File lib/inspec/resources/bridge.rb, line 48
def to_s
  "Bridge #{@bridge_name}"
end

Private Instance Methods

bridge_info() click to toggle source
# File lib/inspec/resources/bridge.rb, line 54
def bridge_info
  return @cache if defined?(@cache)

  @cache = @bridge_provider.bridge_info(@bridge_name) unless @bridge_provider.nil?
end