HotReload: Configuration, Resiliency, and HTTPEndpoints#5067
HotReload: Configuration, Resiliency, and HTTPEndpoints#5067JoshVanL wants to merge 1 commit intodapr:v1.18from
Conversation
Based on dapr/dapr#9582 Signed-off-by: joshvanl <me@joshvanl.dev>
There was a problem hiding this comment.
Pull request overview
Updates Dapr docs to describe expanded HotReload behavior beyond components/subscriptions, including configuration/resiliency/HTTPEndpoint changes that trigger a graceful sidecar restart.
Changes:
- Adds preview-feature documentation for configuration/resiliency/HTTPEndpoint hot reloading (graceful restart via SIGHUP).
- Adds “Hot Reloading” sections to Configuration and Resiliency overviews.
- Renames “Updating components” doc to “Updating resources” and expands it to cover additional resource types.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| daprdocs/content/en/operations/support/support-preview-features.md | Adds a preview-feature table entry for configuration/resiliency/HTTPEndpoint hot reloading. |
| daprdocs/content/en/operations/resiliency/resiliency-overview.md | Documents HotReload-triggered resiliency updates requiring graceful restart. |
| daprdocs/content/en/operations/configuration/configuration-overview.md | Documents HotReload-triggered configuration updates requiring graceful restart. |
| daprdocs/content/en/operations/components/component-updates.md | Renames/repurposes the page to “Updating resources” and adds details for config/resiliency/HTTPEndpoint behavior. |
| daprdocs/content/en/concepts/components-concept.md | Mentions hot reload coverage for additional resource types. |
Comments suppressed due to low confidence (1)
daprdocs/content/en/operations/components/component-updates.md:11
- The page is now titled/described as “Updating resources”, but the intro still talks only about updating components and says the sidecar must be restarted to pick up “the latest version of the component”. This is misleading given the later section describing hot reload / SIGHUP restarts for other resource types; consider rewriting the intro to cover resources broadly (and call out the different behaviors for components vs configuration/resiliency/HTTPEndpoints).
When making an update to an existing deployed component used by an application, Dapr does not update the component automatically unless the [`HotReload`](#hot-reloading-preview-feature) feature gate is enabled.
The Dapr sidecar needs to be restarted in order to pick up the latest version of the component.
How this is done depends on the hosting environment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
| @@ -26,8 +26,11 @@ Unless the [`HotReload` feature gate is enabled](#hot-reloading-preview-feature) | |||
| > This feature is currently in [preview]({{% ref "preview-features.md" %}}). | |||
| > Hot reloading is enabled by via the [`HotReload` feature gate]({{% ref "support-preview-features.md" %}}). | |||
There was a problem hiding this comment.
Grammar: “enabled by via” is redundant; it should be “enabled via …”.
| > Hot reloading is enabled by via the [`HotReload` feature gate]({{% ref "support-preview-features.md" %}}). | |
| > Hot reloading is enabled via the [`HotReload` feature gate]({{% ref "support-preview-features.md" %}}). |
|
|
||
| ### Configurations, Resiliency, and HTTPEndpoints | ||
|
|
||
| With the `HotReload` feature gate enabled, the Dapr sidecar also supports reloading [Configuration]({{% ref "configuration-overview.md" %}}), [Resiliency]({{% ref "resiliency-overview.md" %}}), and [HTTPEndpoint]({{% ref "service-invocation-overview.md" %}}) resources. |
There was a problem hiding this comment.
The link for “HTTPEndpoint” points to service-invocation-overview.md, which doesn’t mention HTTPEndpoints. Consider linking to the HTTPEndpoint-specific docs (for example the HTTPEndpoint spec/reference page) so readers land on relevant content.
| With the `HotReload` feature gate enabled, the Dapr sidecar also supports reloading [Configuration]({{% ref "configuration-overview.md" %}}), [Resiliency]({{% ref "resiliency-overview.md" %}}), and [HTTPEndpoint]({{% ref "service-invocation-overview.md" %}}) resources. | |
| With the `HotReload` feature gate enabled, the Dapr sidecar also supports reloading [Configuration]({{% ref "configuration-overview.md" %}}), [Resiliency]({{% ref "resiliency-overview.md" %}}), and [service invocation]({{% ref "service-invocation-overview.md" %}}) (HTTPEndpoint) resources. |
| When a component is updated, the component is first closed, and then reinitialized using the new configuration. | ||
| The component is unavailable for a short period of time during reload and reinitialization. | ||
|
|
||
| Hot reloading also extends to [Configuration]({{% ref "configuration-overview.md" %}}), [Resiliency]({{% ref "resiliency-overview.md" %}}), and HTTPEndpoint resources. |
There was a problem hiding this comment.
In the list of resource types, Configuration and Resiliency are linked but HTTPEndpoint is not. For consistency (and to help navigation), consider linking “HTTPEndpoint” to its reference/how-to page as well.
| Hot reloading also extends to [Configuration]({{% ref "configuration-overview.md" %}}), [Resiliency]({{% ref "resiliency-overview.md" %}}), and HTTPEndpoint resources. | |
| Hot reloading also extends to [Configuration]({{% ref "configuration-overview.md" %}}), [Resiliency]({{% ref "resiliency-overview.md" %}}), and [HTTPEndpoint]({{% ref "httpendpoint-overview.md" %}}) resources. |
Based on dapr/dapr#9582