diff --git a/docs/endpoints.md b/docs/endpoints.md index 86359a15..1d5c3b53 100644 --- a/docs/endpoints.md +++ b/docs/endpoints.md @@ -4,7 +4,7 @@ The Evergreen API can return the endpoint URLs used by Evergreen to retrieve app The list of endpoints can be imported into firewall or proxy server systems where an allowed list of endpoints is required before using Evergreen to download application installers. All endpoints are accessed on TCP 80 or 443. -## Usage +## API Usage The API provides two lists of endpoints - URLs used by Evergreen to determine application versions and downloads, and URLs used to download application installers. @@ -28,7 +28,7 @@ Here is an example using `Invoke-RestMethod` to return the list of URLs used by PS C:\> Invoke-RestMethod -Uri "https://evergreen-api.stealthpuppy.com/endpoints/downloads" ``` -## Output +### Output Output returns from both of these endpoints is in JSON format - the name of the application (a string) and the endpoints (an array) for that application are both returned. Here's sample output filtered for Microsoft Edge: @@ -52,3 +52,43 @@ Application Endpoints ----------- --------- MicrosoftEdge {edgeupdates.microsoft.com, www.microsoft.com} ``` + +## Using Get-EvergreenEndpoint + +`Get-EvergreenEndpoint` can be used to simplify usage of the API, by returning all endpoints used by Evergreen in a single object. Running `Get-EvergreenEndpoint` with no parameters, will return a complete list of endpoints and ports used for all applications. + +```powershell +PS C:\> Get-EvergreenEndpoint + +Application Endpoints Ports +----------- --------- ----- +1Password {1password.com, app-updates.agilebits.com, downloads.1password.com, cdn.agilebits.com} {443} +1Password7 {1password.com, c.1password.com, download.app.com"} {443} +1PasswordCLI {app-updates.agilebits.com, cache.agilebits.com, developer.1password.com} {443} +7zip {nchc.dl.sourceforge.net, sourceforge.net, www.7-zip.org, versaweb.dl.sourceforge.net} {443} +7ZipZS {api.github.com, mcmilk.de, github.com} {443} +AdobeAcrobat {ardownload2.adobe.com, armmf.adobe.com, helpx.adobe.com} {443} +AdobeAcrobatDC {ardownload2.adobe.com, rdc.adobe.io, www.adobe.com} {443} +AdobeAcrobatProStdDC {helpx.adobe.com, rdc.adobe.io, trials.adobe.com} {443} +AdobeAcrobatReaderDC {acrobat.adobe.com, rdc.adobe.io, ardownload2.adobe.com} {443} +AdobeBrackets {brackets.io, api.github.com, github.com} {80, 443} +``` + +`Get-EvergreenEndpoint` can return endpoints for a single application or an array of with the `-Name` parameter. In the example below `Get-EvergreenEndpoint` is used to return the endpoints and ports for the Microsoft Teams and Microsoft Edge endpoints. + +```powershell +PS C:\> Get-EvergreenEndpoint -Name "MicrosoftTeams", "MicrosoftEdge" + +Application Endpoints Ports +----------- --------- ----- +MicrosoftEdge {edgeupdates.microsoft.com, www.microsoft.com, msedge.sf.dl.delivery.mp.microsoft.com} {443} +MicrosoftTeams {config.teams.microsoft.com, www.microsoft.com, statics.teams.cdn.office.net} {443} +``` + +### Return a simple list of all endpoints + +The output of `Get-EvergreenEndpoint` can be filtered to create a simple list of all unique endpoint URLs. The command below will generate an array of URLs that can then be used for an allow list of all endpoints required by Evergreen. + +```powershell +PS C:\> Get-EvergreenEndpoint | Select-Object -ExpandProperty "Endpoints" -Unique +``` diff --git a/docs/issues.md b/docs/issues.md index 1cfe227a..d38cf15c 100644 --- a/docs/issues.md +++ b/docs/issues.md @@ -24,10 +24,6 @@ Updating `Get-GitHubRepoRelease` to support authenticated requests is planned fo ## Application Functions -### 7zip - -The 32-bit installers returned by `7Zip` link to a SourceForge download page instead of the file directly. These installers can be downloaded by `Invoke-WebRequest` by setting the UserAgent to the [Googlebot](https://github.com/aaronparker/Evergreen/issues/124#issuecomment-839447242). - ### AdobeAcrobat Where Adobe releases an update for Acrobat/Reader DC for Windows ahead of macOS, the current patch release may not be returned. In most cases, Adobe keeps both platforms in sync, so this should be a rare occurrence. @@ -45,19 +41,6 @@ Alternative application - `AdobeAcrobatDC` and `AdobeAcrobatReaderDC` use a web Validate whether `AdobeAcrobat` returns the latest update version. -### CiscoWebEx - -The versions returned for Cisco WebEx may be out of date. Refer to [Cisco WebEx - new app available, Evergreen returning legacy version only](https://github.com/aaronparker/evergreen/issues/197) until a fix is found. - -### CitrixWorkspaceApp - -#### HDX RealTime Media Engine - -The version of the HDX RealTime Media Engine for Microsoft Skype for Business for Windows returned by `CitrixWorkspaceApp` is out of date. This is the version of the HDX RTME that is returned by the Workspace App update feed ([https://downloadplugins.citrix.com/ReceiverUpdates/Prod/catalog_win.xml](https://downloadplugins.citrix.com/ReceiverUpdates/Prod/catalog_win.xml)). Use `CitrixWorkspaceAppFeed` to find the latest version of the HDX RTME. - -!!! info "Note" - `CitrixWorkspaceAppFeed` returns a link to the download page and not the installer directly. See [Get-CitrixWorkspaceApp does not return the latest Citrix HDX RealTime Media Engine](https://github.com/aaronparker/Evergreen/issues/59). - #### 404 Error Occasionally `Get-EvergreenApp -Name "CitrixWorkspaceApp"` may fail with the following error: @@ -74,9 +57,13 @@ This typically occurs right after the release of a new version of the Workspace Occasionally `Get-EvergreenApp -Name "CitrixWorkspaceApp"` may not return the latest version of the Citrix Workspace app. This is due to Citrix making changes to the update feed at `https://downloadplugins.citrix.com/ReceiverUpdates/Prod/catalog_win.xml` to throttle or prevent automatic rollout of the latest Workspace app. The only recourse is to wait until Citrix corrects the update feed to include the latest version of the Workspace app again. +### FileZilla + +`FileZilla` does not return application version data on PowerShell Core. This function does work on Windows PowerShell. + ### GhislerTotalCommander -Supports Windows platforms only - this application relies on `Resolve-DnsName` which is not available under PowerShell 6+ on macOS or Linux. +This application function works OK without additional requirements on Windows, but requires the `DnsClient-PS` on macOS or Linux. ### LibreOffice @@ -95,11 +82,7 @@ Channel properties are listed in the following articles: [Configuration options Full channel names are listed here: [Update history for Microsoft 365 Apps](https://docs.microsoft.com/en-us/officeupdates/update-history-microsoft365-apps-by-date). -### MicrosoftFSLogixApps - -Depending on release schedules, the preview version of the FSLogix Apps download may not be available. The preview version is found here: `https://aka.ms/fslogix/downloadpreview` - if no preview version is behind this URL, `Get-EvergreenApp -Name MicrosoftFSLogixApps` will return an error when attempting to resolve the preview URL, but will continue to return the release version. - -### MicrosoftTeams +### MicrosoftTeamsClassic The version number returned by the Microsoft Teams update API may be slightly different to the version number displayed in the `ProductVersion` property in the MSI or in Programs and Features. For example, `Get-EvergreenApp -Name MicrosoftTeams` may report a version number of `1.4.00.8872`, but the Windows Installer may report `1.4.0.8872`. Also see [Get-MicrosoftTeams displays slightly wrong formatted version number](https://github.com/aaronparker/Evergreen/issues/58). @@ -163,7 +146,3 @@ The source code for the update site can be found here: [VideoLAN organization > !!! info "Note" `VMwareHorizonClient` returns the Horizon Client in .tar format. This the same URL used when the Horizon Client updates itself - you will need to unpack the .tar file to retrieve the executable installer. - -### Zoom - -`Zoom` returns versions as `Latest` for some downloads - the source used by this function does not provide a method for determining the version number. Also see [Zoom currently failing](https://github.com/aaronparker/Evergreen/issues/200) diff --git a/mkdocs.yml b/mkdocs.yml index 7e5de5bb..1f461fd2 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -164,5 +164,6 @@ nav: - Get-EvergreenLibraryApp: help/en-US/Get-EvergreenLibraryApp.md - Export-EvergreenApp: help/en-US/Export-EvergreenApp.md - Export-EvergreenManifest: help/en-US/Export-EvergreenManifest.md + - Get-EvergreenEndpoint: help/en-US/Get-EvergreenEndpoint.md - App Tracker: https://stealthpuppy.com/apptracker/ - PSPackageFactory: https://stealthpuppy.com/packagefactory/