You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Unify services and datasets, external and internal DNS are datasets too (#3390)
## Prelude
This combines:
- #3022
- #3025
- #3026
Into one PR. Trying to split them out resulted in intermediate states
that were not worthwhile debugging - I'd rather invest the energy into
fixing this "more-desirable end-state".
## What does this PR do
- (Internal and External) DNS services are explicitly backed by
datasets, making it possible to "delete and re-initialize" arbitrary
zones without data loss. This is necessary for correct behavior in cold
boot.
- Merges the concept of "datasets" into "services".
- Previously, "datasets" were considered services managing data, and
"services" were considered services *without datasets* - the two were
totally disjoint. This was a bit arbitrary, and made it more complicated
to conform sleds during service management.
- As one example of an inconsistency, "requesting services" was
vectorized ("ask for all services that should be on the sled"),
"requesting datasets" was not (it was an ask-for-one-at-a-time API).
- Now, "services" are universal, and they may optionally manage
datasets. This unifies pathways a bit, and simplifies the API.
Fixes#3018
Part of #2978
0 commit comments