diff --git a/changelogs/fragments/win_setup-bios.yml b/changelogs/fragments/win_setup-bios.yml new file mode 100644 index 00000000000..f3b1379de76 --- /dev/null +++ b/changelogs/fragments/win_setup-bios.yml @@ -0,0 +1,2 @@ +bugfixes: +- setup - Add a null check for ``Win32_Bios.ReleaseData`` to avoid a failure when that value is not set - https://github.com/ansible/ansible/issues/69736 diff --git a/lib/ansible/modules/windows/setup.ps1 b/lib/ansible/modules/windows/setup.ps1 index a8c615122e7..ccc2d3589b8 100644 --- a/lib/ansible/modules/windows/setup.ps1 +++ b/lib/ansible/modules/windows/setup.ps1 @@ -158,12 +158,16 @@ if($gather_subset.Contains('bios')) { $win32_bios = Get-LazyCimInstance Win32_Bios $win32_cs = Get-LazyCimInstance Win32_ComputerSystem $ansible_facts += @{ - ansible_bios_date = $win32_bios.ReleaseDate.ToString("MM/dd/yyyy") + ansible_bios_date = $null ansible_bios_version = $win32_bios.SMBIOSBIOSVersion ansible_product_name = $win32_cs.Model.Trim() ansible_product_serial = $win32_bios.SerialNumber # ansible_product_version = ([string] $win32_cs.SystemFamily) } + + if ($win32_bios.ReleaseDate) { + $ansible_facts.ansible_bios_date = $win32_bios.ReleaseDate.ToString("MM/dd/yyyy") + } } if($gather_subset.Contains('date_time')) {