File: set_vm_integration_services.ps1

package info (click to toggle)
vagrant 2.2.14%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 9,800 kB
  • sloc: ruby: 97,301; sh: 375; makefile: 16; lisp: 1
file content (27 lines) | stat: -rw-r--r-- 615 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#Requires -Modules VagrantVM, VagrantMessages

param (
    [parameter (Mandatory=$true)]
    [string] $VMID,
    [parameter (Mandatory=$true)]
    [string] $Id,
    [parameter (Mandatory=$false)]
    [switch] $Enable
)

$ErrorActionPreference = "Stop"

try {
    $VM = Hyper-V\Get-VM -Id $VMID
} catch {
    Write-ErrorMessage "Failed to locate VM: ${PSItem}"
    exit 1
}

try {
    Set-VagrantVMService -VM $VM -Id $Id -Enable $Enable
} catch {
    if($Enable){ $action = "enable" } else { $action = "disable" }
    Write-ErrorMessage "Failed to ${action} VM integration service id ${Id}: ${PSItem}"
    exit 1
}