parent
bf88a62a16
commit
b50d3ba805
1 changed files with 15 additions and 5 deletions
|
@ -734,6 +734,21 @@ func (arch *Archiver) Snapshot(p *restic.Progress, paths, tags []string, hostnam
|
||||||
return nil, restic.ID{}, err
|
return nil, restic.ID{}, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// receive the top-level tree
|
||||||
|
root := (<-resCh).(*restic.Node)
|
||||||
|
debug.Log("root node received: %v", root.Subtree.Str())
|
||||||
|
sn.Tree = root.Subtree
|
||||||
|
|
||||||
|
// load top-level tree again to see if it is empty
|
||||||
|
toptree, err := arch.repo.LoadTree(*root.Subtree)
|
||||||
|
if err != nil {
|
||||||
|
return nil, restic.ID{}, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(toptree.Nodes) == 0 {
|
||||||
|
return nil, restic.ID{}, errors.Fatal("no files/dirs saved, refusing to create empty snapshot")
|
||||||
|
}
|
||||||
|
|
||||||
// save index
|
// save index
|
||||||
err = arch.repo.SaveIndex()
|
err = arch.repo.SaveIndex()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -743,11 +758,6 @@ func (arch *Archiver) Snapshot(p *restic.Progress, paths, tags []string, hostnam
|
||||||
|
|
||||||
debug.Log("saved indexes")
|
debug.Log("saved indexes")
|
||||||
|
|
||||||
// receive the top-level tree
|
|
||||||
root := (<-resCh).(*restic.Node)
|
|
||||||
debug.Log("root node received: %v", root.Subtree.Str())
|
|
||||||
sn.Tree = root.Subtree
|
|
||||||
|
|
||||||
// save snapshot
|
// save snapshot
|
||||||
id, err := arch.repo.SaveJSONUnpacked(restic.SnapshotFile, sn)
|
id, err := arch.repo.SaveJSONUnpacked(restic.SnapshotFile, sn)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
Loading…
Reference in a new issue