This module is an alternative to Evergreen, and allows you to find the latest version and download URL for various Windows apps. Evergreen uses API queries to obtain its data whereas this module is more focussed on web scraping. This is more prone to breaking when websites are changed, hence the name.
I could a;so resolve the filename portion of the URL, and the modified date of the file and output that as an extra field.
This is not straightforward:
Some URLs do not resolve correctly with some user agents
Some URLs like Github releases and Oracle Java downloads end in what looks like a valid filename, until you resolve the redirects you end up with a query string. You then have to parse the Content-Disposition header to retrieve the filename.
When querying the header with Invoke-WebRequest -Method HEAD, some URLs refuse to respond, so fallback methods required.
I have old scripts that do this already, they just need polishing and integration.
Add a function inside Get-NevergreenApp to automatically resolve the URL provided by each application script, for example to turn:
https://aka.ms/installazurecliwindows
Into:
https://azcliprod.blob.core.windows.net/msi/azure-cli-2.23.0.msi
I could a;so resolve the filename portion of the URL, and the modified date of the file and output that as an extra field.
This is not straightforward:
I have old scripts that do this already, they just need polishing and integration.