Releases: AsBuiltReport/AsBuiltReport.VMware.vSphere
Releases · AsBuiltReport/AsBuiltReport.VMware.vSphere
v2.0.0-beta1
Warning
This is a pre-release beta intended for testing and feedback only. Do not use in production.
Please report issues at https://github.com/AsBuiltReport/AsBuiltReport.VMware.vSphere/issues
v2.0.0 is a complete rewrite of the module. The original monolithic ~5,000 line script has been replaced with a modular, internationalised, and testable architecture targeting vSphere 8.0.
This beta is available for community testing ahead of the stable release.
⚠️ Breaking Changes
Important
Review all breaking changes before upgrading.
| Change | Action Required |
|---|---|
| PowerShell 7.4+ required — Windows PowerShell 5.1 is no longer supported | Upgrade to PowerShell 7.4+ |
| New JSON configuration schema — the report configuration file has changed significantly | Re-generate with New-AsBuiltReportConfig -Report VMware.vSphere |
| vSphere 8.0 targeted — versions 5.5–7.0 are no longer tested or supported | |
AsBuiltReport.Core >= 1.6.2 required |
Update-Module AsBuiltReport.Core |
| VCF.PowerCLI 9.0+ required | Reinstall per the PowerCLI Installation Guide |
🆕 New Features
vCenter Server
- Resource & inventory summary tables at InfoLevel 1+; resource table shows CPU (GHz), Memory, and Storage with free/used/total columns auto-scaled to the most relevant unit; separate Virtual Machine and Host state count tables (#30)
- Backup Settings section (InfoLevel 3+) — schedule configuration, job history, and
Backuphealthcheck via vCenter REST API - Content Libraries section (InfoLevel 3+) — summary table at InfoLevel 3; per-library detail and flat items table (name, content type, size, description, creation time, last modified) at InfoLevel 4+;
ContentLibraryhealthcheck Certificatehealthcheck — Critical: expired/expiring; Warning: expiring soonShowRolesandShowAlarmsoptions to suppress the Roles and Alarm Definitions sections (#122)ShowTagsoption to gate all tag reporting across the entire report
Cluster
- vSphere Lifecycle Manager (vLCM) reporting — image composition (base image, vendor add-on), component list (InfoLevel 4+), hardware support manager, and per-host image compliance;
LCMCompliancehealthcheck - Proactive HA Providers subsection
VMHost
- TPM attestation state and host encryption settings; recovery key reporting gated behind
ShowEncryptionKeysoption;TpmAttestationhealthcheck (#101) - I/O Device Identifiers subsection displaying VID/DID/SVID/SSID in lowercase hex for HCL validation (#126)
- ESXi host certificate reporting — subject, issuer, validity period, and SHA-256 thumbprint
- VM Swap File Location subsection — placement policy and local swap datastore
- Syslog log directory, rotation count, and log size; section now always renders regardless of whether a remote syslog server is configured
Network
- Distributed Switch LACP reporting — enabled state and mode (InfoLevel 3+)
- Distributed Switch NetFlow reporting — collector IP/port, flow timeouts, sampling rate (InfoLevel 3+)
- Network I/O Control resource pool reporting — shares level, shares, and limit (InfoLevel 4+)
Datastore Cluster
- SDRS affinity and anti-affinity rules — rule name, enabled state, type, and member VMs
- Space Load Balance Configuration and I/O Load Balance Configuration subsections
vSAN
- Services section for both OSA and ESA clusters — enabled/disabled state of Performance Service, File Service, iSCSI Target Service, Deduplication, Encryption, Historical Health Service, and Health Check
Update Manager / Lifecycle Manager
- Software Depots section — online depots (description, URL, system-defined flag, enabled state) and offline depots (description, location)
- Per-VM VUM baseline compliance reporting with
VUMCompliancehealthcheck
Tags
- Tag reporting in Datastore, Datastore Cluster, Distributed Switch, Resource Pool, Virtual Machine, and VMHost sections; all tag output is gated by the
ShowTagsoption
🐛 Bug Fixes
- Fix PCI Drivers & Firmware section not reporting on vSphere 8;
VMkernelNameis no longer populated inesxcli hardware.pci.liston ESXi 8.x — a PCI address to VMkernel name map is now built via the PowerCLI API as a fallback (#111, #127) - Fix vCenter Server Certificate section reporting VMCA template defaults instead of the deployed TLS certificate; now reads the live certificate directly from port 443 (#88)
- Fix null disk group crash in OSA vSAN clusters where disk groups have not yet been claimed (#113)
- Fix "Index operation failed; the array index evaluated to null" crash and
Global.Licensesprivilege errors when querying licensing on vCenter 8.0.2 (#123)
🔧 Infrastructure
- Modular architecture — each report section is a dedicated
Get-AbrVSphere*private function replacing the original monolithic script - Internationalisation (i18n) — all user-visible strings, section headings, and table column headers are sourced from
Language/.psd1data files (en-US,en-GB,es-ES,fr-FR,de-DE) - Pester test suite — module structure validation, PSScriptAnalyzer linting, and locale key consistency checks across all 5 language files
- GitHub Actions Pester workflow — tests run on Windows, Ubuntu, and macOS on every push and pull request
⚠️ Known Issues
An item with the same key has already been added. Key: LinkedViewerror may occur when generating Text format reports in some environments (#130) — under investigation; HTML and Word output are unaffected
📦 Installation
Install-Module AsBuiltReport.VMware.vSphere -AllowPrerelease
After installing, regenerate your report configuration file:
New-AsBuiltReportConfig -Report VMware.vSphere -FolderPath <path>💬 Feedback
Please report bugs and feedback via https://github.com/AsBuiltReport/AsBuiltReport.VMware.vSphere/issues. When reporting, please include your PowerShell version, PowerCLI version, vCenter version, and the InfoLevel settings used.
v1.3.6
1.3.6 - 2025-08-24
Fixed
- Fix divide by zero error (@rebelinux) (Fix #129)
- Fix PowerCLI module dependency (#134)
- Update colour placeholders in
README.md
Changed
- Improve vSAN Capacity reporting and healthchecks
- Add
VCF.PowerCLItoExternalModuleDependenciesin the module manifest.
Removed
- Remove
Get-RequiredModulefunction to check for PowerCLI versions. - Remove VMware document style script
v1.3.4.1
v1.3.4
Changed
- Update VMware PowerCLI requirements to version 13.2 (Fix #107)
- Improve bug and feature request templates (@rebelinux)
- Improve TOC structure
- Update VMware style script for improved TOC structure
Fixed
- Update VMHost PCI Devices reporting to fix issues with ESXi 8.x hosts (@orb71) (Fix #105) & (Fix #111)
- Add Try/Catch stated PCI Drivers and Firmware section to provide a workaround for ESXi 8.x hosts (Fix #116)
- Update vCenter Server alarms reporting (Fix #106)
- Fix issue with Platform Services Controller reporting (Fix #103)
- Fix NSX-T virtual switch network labels (Fix #118)
- Fix #103
v1.3.4-RC1
[1.3.4-RC1] - 2023-12-01
Changed
- Updated VMware PowerCLI requirements to version 13.2 (Fix #107)
- Improved bug and feature request templates (@rebelinux)
- Improved TOC structure
- Updated VMware style script for improved TOC structure
Fixed
- Updated VMHost PCI Devices reporting to fix issues with ESXi 8.x hosts (@orb71) (Fix #105) & (Fix #111)
- Added Try/Catch stated PCI Drivers and Firmware section to provide a workaround for ESXi 8.x hosts (Fix #116)
- Updated vCenter Server alarms reporting (Fix #106)
- Fixed issue with Platform Services Controller reporting (Fix #103)
Removed
- Removed reporting of vCenter Server OS type
v1.3.3.1
v1.3.1
Added
- PowerShell 7 compatibility
- VMHost network adapter LLDP reporting
- PSScriptAnalyzer & PublishPSModule GitHub Action workflows
- Advanced detailed reporting for VI roles
- Advanced detailed reporting for vSAN disks
- Support for VMware Cloud environments (VCF, VMC, AVS, GVE) (Fix #87)
- Include release and issue links in README.md
Fixed
- Incorrect section reporting with certain InfoLevels
- Datastore table now sorts by Datastore Name
- vSAN advanced detailed reporting
- VMkernel Adpater reporting
- Distributed vSwitch advanced detailed reporting
- Display issues with highlights in README.md