add program version to snapshot
This commit is contained in:
parent
a280b7364e
commit
bbac74b172
4 changed files with 12 additions and 0 deletions
7
changelog/unreleased/issue-4188
Normal file
7
changelog/unreleased/issue-4188
Normal file
|
@ -0,0 +1,7 @@
|
|||
Enhancement: Include client version in snapshot metadata
|
||||
|
||||
The client version number is now included in the `program_version` field of a snapshot.
|
||||
It can be inspected by using either `restic cat snapshot snapshotID` or `restic snapshots --json`.
|
||||
|
||||
https://github.com/restic/restic/issues/4188
|
||||
https://github.com/restic/restic/pull/4378
|
|
@ -645,6 +645,7 @@ func runBackup(ctx context.Context, opts BackupOptions, gopts GlobalOptions, ter
|
|||
Time: timeStamp,
|
||||
Hostname: opts.Host,
|
||||
ParentSnapshot: parentSnapshot,
|
||||
ProgramVersion: "restic " + version,
|
||||
}
|
||||
|
||||
if !gopts.JSON {
|
||||
|
|
|
@ -680,6 +680,7 @@ type SnapshotOptions struct {
|
|||
Excludes []string
|
||||
Time time.Time
|
||||
ParentSnapshot *restic.Snapshot
|
||||
ProgramVersion string
|
||||
}
|
||||
|
||||
// loadParentTree loads a tree referenced by snapshot id. If id is null, nil is returned.
|
||||
|
@ -796,6 +797,7 @@ func (arch *Archiver) Snapshot(ctx context.Context, targets []string, opts Snaps
|
|||
return nil, restic.ID{}, err
|
||||
}
|
||||
|
||||
sn.ProgramVersion = opts.ProgramVersion
|
||||
sn.Excludes = opts.Excludes
|
||||
if opts.ParentSnapshot != nil {
|
||||
sn.Parent = opts.ParentSnapshot.ID()
|
||||
|
|
|
@ -25,6 +25,8 @@ type Snapshot struct {
|
|||
Tags []string `json:"tags,omitempty"`
|
||||
Original *ID `json:"original,omitempty"`
|
||||
|
||||
ProgramVersion string `json:"program_version,omitempty"`
|
||||
|
||||
id *ID // plaintext ID, used during restore
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue