class Kitchen::Provisioner::Finder::Winrm

WinRM implementation for returning active non-localhost IPs

Public Class Methods

new(connection) click to toggle source
# File lib/kitchen/provisioner/finder/winrm.rb, line 20
def initialize(connection)
  @connection = connection
end

Public Instance Methods

find_fqdn() click to toggle source
# File lib/kitchen/provisioner/finder/winrm.rb, line 35
        def find_fqdn
          out = @connection.node_execute <<-EOS
            [System.Net.Dns]::GetHostByName($env:computername) |
              FL HostName |
              Out-String |
              % { \"{0}\" -f $_.Split(':')[1].Trim() }
          EOS
          data = ''
          data = out.stdout.chomp unless out.stdout.nil?
          data
        end
find_ips() click to toggle source
# File lib/kitchen/provisioner/finder/winrm.rb, line 24
def find_ips
  out = @connection.node_execute(
    '(ipconfig) -match \'IPv[46] Address\''
  )
  data = []
  out.stdout.lines.each do |line|
    data << Regexp.last_match[1] if line.chomp =~ /:\s*(\S+)/
  end
  data
end