Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat!: redefine hostname as a required property that maps to --host #256

Merged
merged 2 commits into from
May 3, 2024

Conversation

garethgeorge
Copy link
Owner

@garethgeorge garethgeorge commented Apr 30, 2024

This is backrest's first breaking change. It adds host as a required property in the config. Because host changed to an immutable property in this PR any value set in existing configs will be reset to allow users to explicitly pick a value they are happy with when they next open the backrest UI.

This warrants a breaking change because it changes the way backups are managed, Backrest will now check that snapshots under management have the expected plan ID and that they came from the same backrest installation. This paves the way for multi-host management with backrest (e.g. multiple hosts backing up to a single repository).

I expect this to be a 1 time breaking change and the transition to the 1.0.0 release of backrest feels like a good time to do this.

A follow up PR will implement logic to migrate existing snapshots by tagging them for management by the first backrest installation to index them and with a matching plan in its config.

The call to action is surfaced to users by

  • a warning printed when migrating the config
  • the settings modal pops up when next opening the UI
  • backups attempted without setting the 'host' property will return errors which will be propagated to any configured notification services.

This is a breaking change with existing backrest behavior. On next
access of the backrest UI clients will be required to set an explicit
hostname for each backrest node. Host names are immutable (only
changeable by manually editing the config) and are associated with all
snapshots.

Backrest will only manage snapshots with a hostname tag matching the
current host. A migration plan for existing snapshots will be included
in a followup.
@garethgeorge garethgeorge changed the base branch from main to v1.0.0 May 1, 2024 18:26
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