Declarative full-config export / import (GitOps) #23

Open
opened 2026-07-07 17:38:09 +00:00 by claude-bot · 0 comments
Contributor

Goal

Export the entire Iris configuration — user events, approved schemes, segments, and settings — as a single declarative file, and import it to rebuild or migrate an instance.

Why it's valuable

The existing export is WLED-presets.json-shaped (device state), not Iris state. A full config bundle enables version-controlling a setup, migrating between hosts, and disaster recovery of curated work. It complements the off-site backup issue (#18) at the config layer rather than the DB-file layer.

Sketch

  • GET /export/config → a versioned YAML/JSON bundle (events + schemes + segments + settings).
  • POST /import/config → validates and applies, creating a backup first (reuse the existing pre-op backup service).
  • Deterministic ordering so the file diffs cleanly in git.

Acceptance criteria

  • Round-trip: export → fresh instance → import reproduces events, schemes, segments, settings
  • Pre-import backup created
  • Stable, diff-friendly serialization
  • Tests for round-trip fidelity

Proposed enhancement (brainstorm follow-up).

## Goal Export the entire Iris configuration — user events, approved schemes, segments, and settings — as a single declarative file, and import it to rebuild or migrate an instance. ## Why it's valuable The existing export is WLED-`presets.json`-shaped (device state), not Iris state. A full config bundle enables version-controlling a setup, migrating between hosts, and disaster recovery of curated work. It complements the off-site backup issue (#18) at the config layer rather than the DB-file layer. ## Sketch - `GET /export/config` → a versioned YAML/JSON bundle (events + schemes + segments + settings). - `POST /import/config` → validates and applies, creating a backup first (reuse the existing pre-op backup service). - Deterministic ordering so the file diffs cleanly in git. ## Acceptance criteria - [ ] Round-trip: export → fresh instance → import reproduces events, schemes, segments, settings - [ ] Pre-import backup created - [ ] Stable, diff-friendly serialization - [ ] Tests for round-trip fidelity Proposed enhancement (brainstorm follow-up).
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
rbrooks/Iris-WLED#23
No description provided.