Skip to content

feat: guarantee 100% restore via explicit two-pillar backup model - #3

Merged
askb merged 1 commit into
mainfrom
docs/guarantee-two-pillar-restore
Jul 12, 2026
Merged

feat: guarantee 100% restore via explicit two-pillar backup model#3
askb merged 1 commit into
mainfrom
docs/guarantee-two-pillar-restore

Conversation

@askb

@askb askb commented Jul 12, 2026

Copy link
Copy Markdown
Owner

Goal

Make it guaranteed and obvious that a user following this add-on ends up 100%% restorable — by nailing down the split: important declarative config → the config repo; everything else (secrets, .storage/, DB, add-ons) → HA full backup (Google Drive). Neither pillar alone can restore HAOS; together they're complete. Prep for the HA-forum launch.

Changes

Docs (DOCS.md)

  • Explicit callout: config repo + encrypted full backup = 100% restorable; neither alone is enough. Spells out exactly what a repo-only restore would force you to redo by hand.
  • Sharpened the what is backed up where table: names what .storage/ actually holds (UI-added integrations, logins/tokens, device/entity/area registries, UI dashboards) and flags data that lives outside /config (add-on configs/data, /ssl) that the add-on structurally cannot see.

Security (gitops_backup.sh)

  • Seeded .gitignore now also excludes *.token / .google.token — OAuth tokens (e.g. Google Calendar) were previously not covered and could land in the repo.
  • First bootstrap logs a disaster-recovery warning: this add-on versions declarative config only; run HA full backups for a complete restore.

Tests

Bumps add-on to 0.2.0.

Make the complete-recovery contract unmissable for new users:

- Docs: state plainly that config repo (this add-on) + encrypted HA full
  backup = 100% restorable, and neither alone is enough. Sharpen the
  'what is backed up where' table — name exactly what .storage/ holds
  (UI-added integrations, logins/tokens, registries, dashboards) and flag
  what lives outside /config (add-on data, /ssl) that the add-on cannot see.
- Security: seed .gitignore now excludes *.token / .google.token so OAuth
  tokens (e.g. Google Calendar) never leak into the repo.
- First bootstrap logs a disaster-recovery warning pointing at full backups.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
@askb
askb merged commit b1a2821 into main Jul 12, 2026
6 checks passed
@askb
askb deleted the docs/guarantee-two-pillar-restore branch July 12, 2026 08:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant