I don’t see this functionality in the win_updates module, but I wanted to ask. I have a prerequisite on Windows 7 to install KB2999226 and KB2842230. I’d prefer to not install every available update to preserve consistency, portability, reproducibility, etc. Is there an easy way to do this?
P.S. I need those KBs so Ansible itself can install/upgrade Chocolatey properly. I’ve installed them manually on a test box to verify they fix my Ansible/Chocolatey issues.
This functionality isn’t currently implemented on win_updates. I’ve had a few people ask for it, and I might have time to implement it for 2.3, as it’s not terribly difficult so long as we stick to “limit the update search/install to these KBs” and not “force install exactly these KBs”.
Unfortunately I believe KB2842230 is a hotfix, and thus not available on Windows Update- we don’t yet have a supported method to install hotfixes under WinRM. wusa.exe is the only supported method, and it fails under WinRM (likely for the same reason that makes the win_updates module so complex). If you have to touch the box anyway, you might do better to just upgrade to Powershell 4 or 5.
you have to unpack the update file and then use dism.exe to install the cab
name: unpack the hotfix if needed
raw: ‘wusa C:\deployment\current\Windows8.1-KB2999226-x64.msu /extract:C:\deployment\archive’
when: “hotfix_status.rc == 1”
name: use dism to install the cab containing the hotfix
raw: ‘dism.exe /online /add-package /PackagePath:C:\deployment\archive\Windows8.1-KB2999226-x64.cab’
when: “hotfix_status.rc == 1”