From f69e27b6fd46421ca4f74065f954f209b21679ec Mon Sep 17 00:00:00 2001 From: Keepers Date: Fri, 14 Oct 2022 13:51:58 -0600 Subject: [PATCH] add progress bar to onedrive restore (#1170) ## Type of change - [x] :hamster: Trivial/Minor ## Issue(s) * #903 ## Test Plan - [x] :muscle: Manual --- src/internal/connector/onedrive/restore.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/internal/connector/onedrive/restore.go b/src/internal/connector/onedrive/restore.go index 08ffc878f..231b95743 100644 --- a/src/internal/connector/onedrive/restore.go +++ b/src/internal/connector/onedrive/restore.go @@ -10,6 +10,7 @@ import ( "github.com/alcionai/corso/src/internal/connector/graph" "github.com/alcionai/corso/src/internal/connector/support" "github.com/alcionai/corso/src/internal/data" + "github.com/alcionai/corso/src/internal/observe" "github.com/alcionai/corso/src/pkg/backup/details" "github.com/alcionai/corso/src/pkg/control" "github.com/alcionai/corso/src/pkg/logger" @@ -250,8 +251,13 @@ func restoreItem( return nil, errors.Wrapf(err, "failed to create item upload session %s", itemName) } + iReader := itemData.ToReader() + progReader, closer := observe.ItemProgress(iReader, itemName, ss.Size()) + + go closer() + // Upload the stream data - written, err := io.CopyBuffer(w, itemData.ToReader(), copyBuffer) + written, err := io.CopyBuffer(w, progReader, copyBuffer) if err != nil { return nil, errors.Wrapf(err, "failed to upload data: item %s", itemName) }