Files
mesh-controller/internal/inventory/migrations/0102-the-settings-layers-move-into-config.sql
T

16 lines
1.1 KiB
SQL

-- The settings layers move into mesh-config (novox/hq ADR 0348 §9, design 57 K5, issue 664).
--
-- Every config value a settings layer holds is set in mesh-config by the move of config (`move-config`), one of the
-- moves of data a release runs once after its delivery; the layers it moved keep their rows, emptied, so the
-- placement kept beside each stays where it is, and each is kept whole in the history first. This row is the
-- switch: while it is absent the controller composes from the layers as before; once the move has run and read
-- every value back through mesh-config, it is written, and the controller reads a module in the config form from
-- mesh-config_resolved where it read its layers (ADR 0349 clause 17's old way, an exception to ADR 0348 §9 that
-- design 57's R1 removes). One row at most; never written by a migration, so a delivery alone changes nothing.
create table config_move (
only_one boolean primary key default true check (only_one),
moved_at timestamptz not null default now(),
moved_by text,
why text not null
);