[MacOS] Build VM packer spec changed (#2359)

* scheduling condition added and changed VMs specs for macos

* typo

* changed conditions order

* fixed an error

* added spec parameters that use pipeline variables values

Co-authored-by: Leonid Lapshin <originalnoe-nazvanie@yandex.ru>
This commit is contained in:
Leonid Lapshin
2020-12-30 17:46:17 +03:00
committed by GitHub
parent f3394fb979
commit 86adee10d0
6 changed files with 30 additions and 11 deletions

View File

@@ -132,6 +132,9 @@ jobs:
-VIServer "$(vcenter-server-v2)" `
-VIUserName "$(vcenter-username-v2)" `
-VIPassword "$(vcenter-password-v2)"
-CpuCount "$(cpu-count)" `
-CoresPerSocketCount "$(cores-per-socket-count)" `
-Memory "$(memory)"
- task: PowerShell@2
displayName: 'Destroy VM (if build canceled only)'

View File

@@ -39,7 +39,13 @@ param(
[Parameter(Mandatory)]
[ValidateNotNullOrEmpty()]
[string]$VIPassword
[string]$VIPassword,
[int32]$CpuCount,
[int32]$CoresPerSocketCount,
[int64]$Memory
)
# Import helpers module
@@ -57,6 +63,11 @@ try {
$vm = Get-VM $VMName
if ($VMName -notmatch "10.13") {
Write-Host "Change cpu count $cpu, cores count to $cores, amount of RAM to $memoryMb"
$vm | Set-VM -NumCPU $CpuCount -CoresPerSocket $CoresPerSocketCount -MemoryMB $Memory -Confirm:$false
}
if ($env:AGENT_JOBSTATUS -eq 'Failed') {
try {
if($vm.PowerState -ne "PoweredOff") {

View File

@@ -54,14 +54,19 @@ function Select-DataStore {
# 1. Name starts with ds-local-Datastore
# 2. FreespaceGB > 400 Gb
# 3. VM count on a datastore < 2
# 3. Choose a datastore with the minimal VM count < 2
Write-Host "Start Datastore selection process..."
$allDatastores = Get-Datastore -Name $templateDatastore | Where-Object { $_.State -eq "Available" }
$buildDatastore = $allDatastores | Where-Object { $_.FreeSpaceGB -ge $thresholdInGb } | Where-Object {
$buildDatastore = $allDatastores `
| Where-Object { $_.FreeSpaceGB -ge $thresholdInGb } `
| Where-Object {
$vmOnDatastore = @((Get-ChildItem -Path $_.DatastoreBrowserPath).Name -notmatch "^\.").Count
$vmOnDatastore -lt $vmCount
} | Get-Random | Select-Object -ExpandProperty Name
$vmOnDatastore -lt $vmCount } `
| Group-Object -Property { $vmOnDatastore } `
| Select-Object -First 1 -ExpandProperty Group `
| Get-Random `
| Select-Object -ExpandProperty Name
$tag = Get-Tag -Category $TagCategory -Name $VMName -ErrorAction Ignore
if (-not $tag)