Commit a0ffd3d
authored
Introduce
This is groundwork for #10167, and introduces the skeleton of network
config reconcilers for use within sled-agent. None of this is wired up
yet and all the service-specific reconcilers are placeholders, but it
does have the real setup for how these tasks get started and how they
report status.
The PR is pretty big but hopefully not too bad to review; more than half
the code falls into either "tests", "status type definitions", or
"placeholder/dummy reconcilers". A tentative suggestion for review order
is:
1. The crate-level docs in `lib.rs`; these are written assuming #10167
is complete, not based on the current state of the crate.
2. `handle.rs`, particularly `ScrimletReconcilers` - this is the entry
point for sled-agent. It will hold a `ScrimletReconcilers` in its set of
long-running tasks.
3. `reconciler_task.rs` - this implements the common control flow for
all of the service-specific reconcilers in the crate; handling periodic
reactivation, activation when the config changes, transitioning to inert
if we stop being a scrimlet because the sidecar goes away at runtime,
and transitioning out of inert if it comes back.
~~The only production-affecting change here is that the
`ThisSledSwitchZoneUnderlayIpAddr` type moved out of sled-agent and into
this crate, so sled-agent depends on this crate just for that type.~~
Edit: As of #10340, `ThisSledSwitchZoneUnderlayIpAddr` has moved to
`sled-agent-types`, so now this PR uses it from there and makes no
changes to sled-agent proper.sled-agent-scrimlet-reconcilers crate (#10313)1 parent a9bfb1f commit a0ffd3d
14 files changed
Lines changed: 2510 additions & 33 deletions
File tree
- sled-agent/scrimlet-reconcilers
- src
- handle
- reconciler_task
- workspace-hack
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
147 | 147 | | |
148 | 148 | | |
149 | 149 | | |
| 150 | + | |
150 | 151 | | |
151 | 152 | | |
152 | 153 | | |
| |||
333 | 334 | | |
334 | 335 | | |
335 | 336 | | |
| 337 | + | |
336 | 338 | | |
337 | 339 | | |
338 | 340 | | |
| |||
727 | 729 | | |
728 | 730 | | |
729 | 731 | | |
730 | | - | |
| 732 | + | |
731 | 733 | | |
732 | 734 | | |
733 | 735 | | |
| |||
792 | 794 | | |
793 | 795 | | |
794 | 796 | | |
| 797 | + | |
795 | 798 | | |
796 | 799 | | |
797 | 800 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
0 commit comments