Sha256: 1b3cbd62fa1a49ae40a9a075ad0603c982e3c7f4e763ec45e6ef29c8b5f99522

Contents?: true

Size: 1.18 KB

Versions: 6

Compression:

Stored size: 1.18 KB

Contents

Param(
    [Parameter(Mandatory=$true)]
    [string]$VmId
 )

# Include the following modules
$Dir = Split-Path $script:MyInvocation.MyCommand.Path
. ([System.IO.Path]::Combine($Dir, "utils\write_messages.ps1"))

$vm = Hyper-V\Get-VM -Id $VmId -ErrorAction "Stop"
$networks = Hyper-V\Get-VMNetworkAdapter -VM $vm
foreach ($network in $networks) {
  if ($network.IpAddresses.Length -gt 0) {
    foreach ($ip_address in $network.IpAddresses) {
      if ($ip_address.Contains(".")) {
        $ip4_address = $ip_address
      } elseif ($ip_address.Contains(":")) {
        $ip6_address = $ip_address
      }
      if (-Not ([string]::IsNullOrEmpty($ip4_address)) -Or -Not ([string]::IsNullOrEmpty($ip6_address))) {
        # We found our IP address!
        break
      }
    }
  }
}

if (-Not ([string]::IsNullOrEmpty($ip4_address))) {
  $guest_ipaddress = $ip4_address
} elseif (-Not ([string]::IsNullOrEmpty($ip6_address))) {
  $guest_ipaddress = $ip6_address
}

if (-Not ([string]::IsNullOrEmpty($guest_ipaddress))) {
  $resultHash = @{
      ip = $guest_ipaddress
  }
  $result = ConvertTo-Json $resultHash
  Write-Output-Message $result
} else {
  Write-Error-Message "Failed to determine IP address"
}

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
vagrant-unbundled-2.0.4.0 plugins/providers/hyperv/scripts/get_network_config.ps1
vagrant-unbundled-2.0.3.0 plugins/providers/hyperv/scripts/get_network_config.ps1
vagrant-aws-detiber-0.7.2.pre.4 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-419afb4dcffe/plugins/providers/hyperv/scripts/get_network_config.ps1
vagrant-aws-detiber-0.7.2.pre.3 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-419afb4dcffe/plugins/providers/hyperv/scripts/get_network_config.ps1
vagrant-aws-detiber-0.7.2.pre.2 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-419afb4dcffe/plugins/providers/hyperv/scripts/get_network_config.ps1
vagrant-unbundled-2.0.2.0 plugins/providers/hyperv/scripts/get_network_config.ps1