@awhitman you might want to check out my companies github repo
Ive updated my original function to grab the latest ISO download link instead of a hard-coded copy. I think it relies on powershell 5 code so it no longer works on macOS and linux but it could probably be modified to do so if thats your thing. And as long as MSFT doesnt change the schema it will always grab the latest version available. In addition to that there’s also a function that does the ISO download, mounting and install for you all in one step.
Theres also function that uses the windows update assistant exe file to silently upgrade as well. This is our preferred method over the ISO install. The reboot to apply the update is shorter meaning less downtime for the user.
Finally, theres a function that installs the 1903>1909 enablement package. These are super fast to apply. If MSFT releases one for 2004, we will update the function, as this is the smoothest way to upgrade windows yet.