Name each prefix once in restore, verify and purge errors (closes #327)
check / check (push) Successful in 12m22s
check / check (push) Successful in 12m22s
A missing blob during restore, a failed shallow verify and an invalid purge duration each printed their prefix twice. FetchBlob now returns the storage error as is, since restore and deep verify name the blob themselves; purge returns the duration parser's error unchanged; and a failed shallow verify wraps "problems found in storage" instead of "verification failed", which the command already prints. Deep verify words a storage error other than not found as a blob it could not check, and its log line no longer says S3. Already fixed for #314: the deep verify size message naming S3 and other errors called missing; tests now check both. Not tested: the log line. Model: opus-5-5
This commit was merged in pull request #377.
This commit is contained in:
1 parent
aeac897805
commit
d156a02c49
7 files changed
+32
-11
No files matched your search
@@ -23,6 +23,7 @@ var (
|
||||
errSnapshotNotInConfig = errors.New("snapshot not found in config")
|
||||
errNoSnapshotsInConfig = errors.New("no snapshots configured")
|
||||
errSnapshotVerifyFailed = errors.New("verification failed")
|
||||
errProblemsInStorage = errors.New("problems found in storage")
|
||||
errRemoveAllNeedsForce = errors.New("--all requires --force")
|
||||
errSnapshotNotFound = errors.New("snapshot not found")
|
||||
errSnapshotRemoveFailed = errors.New("snapshot(s) could not be removed")
|
||||
@@ -612,7 +613,7 @@ func selectSnapshotsToPurge(
|
||||
case opts.OlderThan != "":
|
||||
duration, err := parseDuration(opts.OlderThan)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("invalid duration: %w", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
cutoff := time.Now().UTC().Add(-duration)
|
||||
@@ -941,8 +942,10 @@ func (v *Vaultik) formatVerifyResult(
|
||||
v.printVerifySummary(result, failure)
|
||||
}
|
||||
|
||||
// Not errSnapshotVerifyFailed: the cli layer prints this after its own
|
||||
// "Verification failed:".
|
||||
if failure != "" {
|
||||
return fmt.Errorf("%w: %s", errSnapshotVerifyFailed, failure)
|
||||
return fmt.Errorf("%w: %s", errProblemsInStorage, failure)
|
||||
}
|
||||
|
||||
return nil
|
||||
|
||||
Reference in new issue
Block a user