Adoption mode: a node in use is adopted before it is converged (hq ADR 0100–0103) #20

Merged
jschoubben merged 52 commits from feat/adoption-mode into main 2026-09-22 19:01:47 +00:00
2 changed files with 6 additions and 4 deletions
Showing only changes of commit 6dce63b534 - Show all commits
+3 -1
View File
@@ -234,7 +234,9 @@ func mountSource(mapping string) string {
}
// runsIn is the container a resource runs inside, if any: an action's `in`, or a run-once step
// sharing a container's namespace.
// sharing a container's namespace. An action with no `in` runs on the machine itself and is not
// held for a container: it reaches nothing a predecessor holds by running there, and holding every
// action of an untaken module would stop a module preparing itself before its cutover.
func runsIn(r declaration.Resource) string {
switch res := r.(type) {
case *declaration.Action:
+3 -3
View File
@@ -148,9 +148,9 @@ func seedGiteaDatabase(ctx context.Context, run Runner, timeout time.Duration, p
return nil
}
// raiseGiteaServer starts the gitea server container against the foundation store. It joins the
// store's network namespace so `127.0.0.1:5432` reaches postgres, and publishes its own port on the
// machine so the builder and this installer can reach it. Started if absent, left alone if present.
// raiseGiteaServer starts the gitea server container against the foundation store. It runs on the
// machine's own network, so `127.0.0.1` reaches the store where it publishes its port, and it binds
// its own port there for the builder and this installer. Started if absent, left alone if present.
func raiseGiteaServer(ctx context.Context, run Runner, timeout time.Duration, dbPassword string,
ports FoundationPorts, say func(string)) error {
asking, cancel := context.WithTimeout(ctx, timeout)