Add FrontDoorCache actions and connections for Automate#11
Open
stevetemple wants to merge 2 commits into
Open
Conversation
There was a problem hiding this comment.
Pull request overview
Adds a new Umbraco.Community.FrontDoorCache.Automate package that integrates with Umbraco Automate by providing an “Azure Front Door” connection plus actions to purge Front Door cache on demand (and an auxiliary action to resolve content/media URLs), while marking the classic package as deprecated in its NuGet description.
Changes:
- Deprecates the classic
Umbraco.Community.FrontDoorCachepackage via package description text and introduces a new Automate-focused package/project. - Implements an Automate Connection Type for Azure Front Door endpoint configuration + validation (using Entra ID credentials from config).
- Implements Automate Actions to purge specific paths, purge all, and resolve content/media URLs for use as purge inputs.
Reviewed changes
Copilot reviewed 19 out of 19 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/Umbraco.Community.FrontDoorCache/Umbraco.Community.FrontDoorCache.csproj | Marks the classic package description as deprecated in favor of the Automate package. |
| src/Umbraco.Community.FrontDoorCache.sln | Adds the new Automate project to the solution and build configurations. |
| src/Umbraco.Community.FrontDoorCache.Automate/Umbraco.Community.FrontDoorCache.Automate.csproj | New NuGet package/project for Automate integration, incl. dependencies and packing metadata. |
| src/Umbraco.Community.FrontDoorCache.Automate/Settings/FrontDoorCredentialsOptions.cs | New options model for Entra ID credentials bound from configuration. |
| src/Umbraco.Community.FrontDoorCache.Automate/README.md | Package documentation for install/setup and intended usage in Automate. |
| src/Umbraco.Community.FrontDoorCache.Automate/Internal/FrontDoorClientFactory.cs | Shared helper for creating ARM endpoint resources and issuing purge requests. |
| src/Umbraco.Community.FrontDoorCache.Automate/Connections/FrontDoorConnectionType.cs | Automate connection type + validation logic for Front Door endpoint access. |
| src/Umbraco.Community.FrontDoorCache.Automate/Connections/FrontDoorConnectionSettings.cs | Connection settings model surfaced in the Automate UI. |
| src/Umbraco.Community.FrontDoorCache.Automate/Configuration/FrontDoorAutomateComposer.cs | Binds FrontDoor:Cache:Credentials options into DI for runtime use. |
| src/Umbraco.Community.FrontDoorCache.Automate/Actions/PurgeFrontDoorPathsSettings.cs | Settings model for purging specific paths (supports bindings). |
| src/Umbraco.Community.FrontDoorCache.Automate/Actions/PurgeFrontDoorPathsOutput.cs | Output model for purge-paths action. |
| src/Umbraco.Community.FrontDoorCache.Automate/Actions/PurgeFrontDoorPathsAction.cs | Action implementation for purging one-or-more paths via Front Door API. |
| src/Umbraco.Community.FrontDoorCache.Automate/Actions/PurgeFrontDoorAllSettings.cs | Marker settings model for purge-all action. |
| src/Umbraco.Community.FrontDoorCache.Automate/Actions/PurgeFrontDoorAllOutput.cs | Output model for purge-all action. |
| src/Umbraco.Community.FrontDoorCache.Automate/Actions/PurgeFrontDoorAllAction.cs | Action implementation for purging the entire endpoint (/*). |
| src/Umbraco.Community.FrontDoorCache.Automate/Actions/GetContentOrMediaUrlSettings.cs | Settings model for resolving a content/media URL by key (supports bindings). |
| src/Umbraco.Community.FrontDoorCache.Automate/Actions/GetContentOrMediaUrlOutput.cs | Output model for resolved absolute URL + path. |
| src/Umbraco.Community.FrontDoorCache.Automate/Actions/GetContentOrMediaUrlAction.cs | Action implementation to resolve URLs/paths using Umbraco routing APIs. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+33
to
+37
| | Setting | Description | | ||
| | ------------ | ------------------------------------------------------------------------ | | ||
| | TenantId | The value in Directory (tenant) ID on the app registration Overview | | ||
| | ClientId | The value in Application (Client) ID on the app registration Overview | | ||
| | ClientSecret | The client secret created for the app registration | |
Comment on lines
+73
to
+74
| private static string[] ParsePaths(string raw) => | ||
| raw.Split(['\r', '\n', ','], StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Add a connection and actions for Automate to allow purging of the cache for published content and media
Checklist
Please confirm each item before assigning people to this PR.