restore: pass action enum to restore progress

This commit is contained in:
Michael Eischer committed 2024-07-05 20:41:27 +02:00
1 parent 798256ec52
commit ae978d60cc
4 files changed
+28 -26

No files matched your search

+6 -2
View File
@@ -215,7 +215,7 @@ func (r *fileRestorer) restoreEmptyFileAt(location string) error {
return err
}
r.progress.AddProgress(location, false, true, 0, 0)
r.progress.AddProgress(location, restore.ActionFileRestored, 0, 0)
return nil
}
@@ -337,7 +337,11 @@ func (r *fileRestorer) downloadBlobs(ctx context.Context, packID restic.ID,
createSize = file.size
}
writeErr := r.filesWriter.writeToFile(r.targetPath(file.location), blobData, offset, createSize, file.sparse)
r.progress.AddProgress(file.location, false, file.state == nil, uint64(len(blobData)), uint64(file.size))
action := restore.ActionFileUpdated
if file.state == nil {
action = restore.ActionFileRestored
}
r.progress.AddProgress(file.location, action, uint64(len(blobData)), uint64(file.size))
return writeErr
}
err := r.sanitizeError(file, writeToFile())
+8 -4
View File
@@ -234,7 +234,7 @@ func (res *Restorer) restoreNodeTo(ctx context.Context, node *restic.Node, targe
}
}
res.opts.Progress.AddProgress(location, false, true, 0, 0)
res.opts.Progress.AddProgress(location, restoreui.ActionFileRestored, 0, 0)
return res.restoreNodeMetadataTo(node, target, location)
}
@@ -261,7 +261,7 @@ func (res *Restorer) restoreHardlinkAt(node *restic.Node, target, path, location
}
}
res.opts.Progress.AddProgress(location, false, true, 0, 0)
res.opts.Progress.AddProgress(location, restoreui.ActionFileRestored, 0, 0)
// TODO investigate if hardlinks have separate metadata on any supported system
return res.restoreNodeMetadataTo(node, path, location)
}
@@ -343,8 +343,12 @@ func (res *Restorer) RestoreTo(ctx context.Context, dst string) error {
if !res.opts.DryRun {
filerestorer.addFile(location, node.Content, int64(node.Size), matches)
} else {
action := restoreui.ActionFileUpdated
if matches == nil {
action = restoreui.ActionFileRestored
}
// immediately mark as completed
res.opts.Progress.AddProgress(location, false, matches == nil, node.Size, node.Size)
res.opts.Progress.AddProgress(location, action, node.Size, node.Size)
}
}
res.trackFile(location, updateMetadataOnly)
@@ -393,7 +397,7 @@ func (res *Restorer) RestoreTo(ctx context.Context, dst string) error {
leaveDir: func(node *restic.Node, target, location string) error {
err := res.restoreNodeMetadataTo(node, target, location)
if err == nil {
res.opts.Progress.AddProgress(location, false, true, 0, 0)
res.opts.Progress.AddProgress(location, restoreui.ActionDirRestored, 0, 0)
}
return err
},