digint / digint/btrbk

RFE: Set suffix (after date), label, or other metadata to identify snapshots and backups

Open
#191 1 comment 2 reactions 0 assignees View on GitHub
enhancement
Dominant language
Perl
Stars
2.1k
Forks
139
PR merge metrics
No merged PRs in 30d

Description

##### Use case:

To be able to use something like `sudo btrbk run -n pre_upgrade` where "pre_upgrade" would be a a label or appended to to the directory name, or perhaps it can be done by saving metadata inside the snapshot directory, for the purpose of identifying snapshots and backups. Also wondering if `btrfs`'s native `btrfs fi label` can be leveraged. This presented itself as something potentially useful when I wanted to test upgrading my system to a new version and had to make manual note of the known-good backup date/time.

`btrbk list snapshots` after such an enhancement may look like:

```
source_host source_subvol snapshot_subvol status target_host target_subvol
----------- -------------------- --------------------------------------------------- ------ ----------- ----------------------------------------------------
- /mnt/btrfs_root/ROOT /mnt/btrfs_root/snapshots/ROOT.20171001T000102-0400 - - /mnt/external1/icarus_main/ROOT.20171001T000102-0400
- /mnt/btrfs_root/ROOT /mnt/btrfs_root/snapshots/ROOT.20171002T000102-0400-pre_upgrade - - /mnt/external1/icarus_main/ROOT.20171002T000102-0400-pre_upgrade
- /mnt/btrfs_root/ROOT /mnt/btrfs_root/snapshots/ROOT.20171003T000101-0400 - - /mnt/external1/icarus_main/ROOT.20171003T000101-0400
```

or (preferred):
```
source_host source_subvol snapshot_subvol label status target_host target_subvol
----------- -------------------- --------------------------------------------------- ---------------- ------ ----------- ----------------------------------------------------
- /mnt/btrfs_root/ROOT /mnt/btrfs_root/snapshots/ROOT.20171001T000102-0400 - - /mnt/external1/icarus_main/ROOT.20171001T000102-0400
- /mnt/btrfs_root/ROOT /mnt/btrfs_root/snapshots/ROOT.20171002T000102-0400 pre_upgrade - - /mnt/external1/icarus_main/ROOT.20171002T000102-0400
- /mnt/btrfs_root/ROOT /mnt/btrfs_root/snapshots/ROOT.20171003T000101-0400 - - /mnt/external1/icarus_main/ROOT.20171003T000101-0400
```

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue defines the desired behavior through `sudo btrbk run -n pre_upgrade` and `btrbk list snapshots` examples, but names no files or tests. Start by tracing those command entry points and determine how snapshot identification should be represented; done means snapshots and backups can be identified and the list output exposes that identifier.

Written by the indexing model from the issue text.

Assessment

Tech stack
perl
Domain
cli, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.