update
This commit is contained in:
+36
@@ -222,6 +222,42 @@ $Results = foreach ($VM in $AllVMs) {
|
||||
}
|
||||
}
|
||||
|
||||
#region --- Back-fill SRM placeholder fields from real VM ----------------------
|
||||
# SRM placeholder VMs share the same name as their real counterpart but lack
|
||||
# guest-level data. For the fields below, substitute the real VM's values so
|
||||
# placeholders carry useful metadata for reporting.
|
||||
|
||||
$RealVMLookup = @{}
|
||||
foreach ($R in $Results) {
|
||||
if (-not $R.IsSRMPlaceholder) { $RealVMLookup[$R.VMName] = $R }
|
||||
}
|
||||
|
||||
$PlaceholderFieldsToFix = @(
|
||||
'GuestOS'
|
||||
'ProvisionedSpaceGB'
|
||||
'UsedSpaceGB'
|
||||
'GuestDiskCapacityGB'
|
||||
'GuestDiskUsedGB'
|
||||
'ToolsVersionStatus'
|
||||
'Tag_DRProtection'
|
||||
'Tag_AppName'
|
||||
'Tag_VRDatastores'
|
||||
'Tag_VRRPO'
|
||||
'Tag_DTAP'
|
||||
'Tag_StartupPriority'
|
||||
'Tag_SRMRecoveryType'
|
||||
'Tag_LicensingRestrictions'
|
||||
)
|
||||
|
||||
foreach ($R in $Results) {
|
||||
if ($R.IsSRMPlaceholder -and $RealVMLookup.ContainsKey($R.VMName)) {
|
||||
$Real = $RealVMLookup[$R.VMName]
|
||||
foreach ($Field in $PlaceholderFieldsToFix) { $R.$Field = $Real.$Field }
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#endregion
|
||||
|
||||
<#region --- Export CSV ---------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user