23 lines
989 B
Text
23 lines
989 B
Text
|
|
{
|
||
|
|
id = "adr-001",
|
||
|
|
title = "ontoref-dns exists as a standalone Cargo workspace",
|
||
|
|
status = "accepted",
|
||
|
|
date = "2026-05-11",
|
||
|
|
context = "
|
||
|
|
The DNS implementation in the provisioning orchestrator (CoreDnsClient) grew to
|
||
|
|
the point where it constrained provider portability. Lifting it out into an
|
||
|
|
independent crate decouples the trait surface from any single provider and
|
||
|
|
enables adoption without the full provisioning stack.
|
||
|
|
",
|
||
|
|
decision = "
|
||
|
|
ontoref-dns is a separate Cargo workspace at ontoref-dns/ (peer to ontoref/).
|
||
|
|
It has zero dependency on ontoref, stratumiops, or any provisioning crates.
|
||
|
|
The ontoref workspace may import it as a path or crate.io dependency.
|
||
|
|
",
|
||
|
|
consequences = [
|
||
|
|
"CoreDnsClient in provisioning can be removed once DnsManager migrates to DnsProvider.",
|
||
|
|
"Future providers (Route53, PowerDNS) are added here, not in provisioning.",
|
||
|
|
"Versioning follows the trait surface — patch releases for provider fixes.",
|
||
|
|
],
|
||
|
|
}
|