Merged
Conversation
d0cd56f to
e1bbf65
Compare
There was a problem hiding this comment.
Pull request overview
This PR implements configuration reload support for NRI (Node Resource Interface), allowing the NRI subsystem to be dynamically enabled/disabled and reconfigured without restarting the daemon.
Key changes:
- NRI configuration can now be reloaded via daemon config reload
- NRI adaptation layer restarts on reload, causing plugins to resync
- New integration test validates reload behavior with plugin configuration changes
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| daemon/reload.go | Adds NRI reload handler to daemon's configuration reload chain |
| daemon/internal/nri/nri.go | Implements PrepareReload method to validate and stage NRI configuration changes |
| integration/daemon/nri/nri_test.go | Adds comprehensive integration test for NRI reload functionality |
| integration/daemon/nri/testdata/test_plugin.go | Adds test plugin that reads configuration and injects environment variables |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
e1bbf65 to
5ad27ba
Compare
vvoland
approved these changes
Dec 15, 2025
austinvazquez
approved these changes
Dec 15, 2025
Contributor
austinvazquez
left a comment
There was a problem hiding this comment.
Nice, LGTM. Just a minor nit. Nothing worth blocking on though.
Signed-off-by: Rob Murray <rob.murray@docker.com>
5ad27ba to
ff553c5
Compare
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.
- What I did
Make NRI config reloadable.
- How I did it
With NRI enabled, a reload will always restart the NRI adaptation layer. That means daemon-started plugins will restart/resync, and so their config will be re-read. If any plugins started independently and connected via the daemon's socket, they'll be dropped and must reconnect/resync. Maybe that'll end up being too disruptive/slow, it depends on how long real plugins take to register and sync.
- How to verify it
New integration test.
- Human readable description for the release notes
- A picture of a cute animal (not mandatory but encouraged)