diff --git a/internal/storage/local/local.go b/internal/storage/local/local.go index 3c33861..4edcff8 100644 --- a/internal/storage/local/local.go +++ b/internal/storage/local/local.go @@ -47,7 +47,7 @@ func (b *localStorage) Copy(file string) error { _, name := path.Split(file) if err := copyFile(file, path.Join(b.DestinationPath, name)); err != nil { - return fmt.Errorf("(*localStorage).Copy: Error copying file to local archive! %w", err) + return fmt.Errorf("(*localStorage).Copy: Error copying file to local archive: %w", err) } b.Log(storage.LogLevelInfo, b.Name(), "Stored copy of backup `%s` in local archive `%s`.", file, b.DestinationPath) @@ -57,7 +57,7 @@ func (b *localStorage) Copy(file string) error { os.Remove(symlink) } if err := os.Symlink(name, symlink); err != nil { - return fmt.Errorf("(*localStorage).Copy: error creating latest symlink! %w", err) + return fmt.Errorf("(*localStorage).Copy: error creating latest symlink: %w", err) } b.Log(storage.LogLevelInfo, b.Name(), "Created/Updated symlink `%s` for latest backup.", b.latestSymlink) } @@ -101,7 +101,7 @@ func (b *localStorage) Prune(deadline time.Time, pruningPrefix string) (*storage fi, err := os.Stat(candidate) if err != nil { return nil, fmt.Errorf( - "(*localStorage).Prune: Error calling stat on file %s! %w", + "(*localStorage).Prune: Error calling stat on file %s: %w", candidate, err, ) diff --git a/internal/storage/s3/s3.go b/internal/storage/s3/s3.go index 76b1e38..bb2394d 100644 --- a/internal/storage/s3/s3.go +++ b/internal/storage/s3/s3.go @@ -65,7 +65,7 @@ func NewStorageBackend(opts Config, logFunc storage.Log) (storage.Backend, error transport, err := minio.DefaultTransport(true) if err != nil { - return nil, fmt.Errorf("NewStorageBackend: failed to create default minio transport") + return nil, fmt.Errorf("NewStorageBackend: failed to create default minio transport: %w", err) } transport.TLSClientConfig.InsecureSkipVerify = true options.Transport = transport diff --git a/internal/storage/ssh/ssh.go b/internal/storage/ssh/ssh.go index 9194528..91f126c 100644 --- a/internal/storage/ssh/ssh.go +++ b/internal/storage/ssh/ssh.go @@ -108,13 +108,13 @@ func (b *sshStorage) Copy(file string) error { source, err := os.Open(file) _, name := path.Split(file) if err != nil { - return fmt.Errorf("(*sshStorage).Copy: Error reading the file to be uploaded! %w", err) + return fmt.Errorf("(*sshStorage).Copy: Error reading the file to be uploaded: %w", err) } defer source.Close() destination, err := b.sftpClient.Create(filepath.Join(b.DestinationPath, name)) if err != nil { - return fmt.Errorf("(*sshStorage).Copy: Error creating file on SSH storage! %w", err) + return fmt.Errorf("(*sshStorage).Copy: Error creating file on SSH storage: %w", err) } defer destination.Close() @@ -124,7 +124,7 @@ func (b *sshStorage) Copy(file string) error { if err == io.EOF { tot, err := destination.Write(chunk[:num]) if err != nil { - return fmt.Errorf("(*sshStorage).Copy: Error uploading the file to SSH storage! %w", err) + return fmt.Errorf("(*sshStorage).Copy: Error uploading the file to SSH storage: %w", err) } if tot != len(chunk[:num]) { @@ -135,12 +135,12 @@ func (b *sshStorage) Copy(file string) error { } if err != nil { - return fmt.Errorf("(*sshStorage).Copy: Error uploading the file to SSH storage! %w", err) + return fmt.Errorf("(*sshStorage).Copy: Error uploading the file to SSH storage: %w", err) } tot, err := destination.Write(chunk[:num]) if err != nil { - return fmt.Errorf("(*sshStorage).Copy: Error uploading the file to SSH storage! %w", err) + return fmt.Errorf("(*sshStorage).Copy: Error uploading the file to SSH storage: %w", err) } if tot != len(chunk[:num]) { @@ -157,7 +157,7 @@ func (b *sshStorage) Copy(file string) error { func (b *sshStorage) Prune(deadline time.Time, pruningPrefix string) (*storage.PruneStats, error) { candidates, err := b.sftpClient.ReadDir(b.DestinationPath) if err != nil { - return nil, fmt.Errorf("(*sshStorage).Prune: Error reading directory from SSH storage! %w", err) + return nil, fmt.Errorf("(*sshStorage).Prune: Error reading directory from SSH storage: %w", err) } var matches []string @@ -178,7 +178,7 @@ func (b *sshStorage) Prune(deadline time.Time, pruningPrefix string) (*storage.P if err := b.DoPrune(b.Name(), len(matches), len(candidates), "SSH backup(s)", func() error { for _, match := range matches { if err := b.sftpClient.Remove(filepath.Join(b.DestinationPath, match)); err != nil { - return fmt.Errorf("(*sshStorage).Prune: Error removing file from SSH storage! %w", err) + return fmt.Errorf("(*sshStorage).Prune: Error removing file from SSH storage: %w", err) } } return nil diff --git a/internal/storage/webdav/webdav.go b/internal/storage/webdav/webdav.go index c95c164..ae9386c 100644 --- a/internal/storage/webdav/webdav.go +++ b/internal/storage/webdav/webdav.go @@ -70,15 +70,15 @@ func (b *webDavStorage) Copy(file string) error { bytes, err := os.ReadFile(file) _, name := path.Split(file) if err != nil { - return fmt.Errorf("(*webDavStorage).Copy: Error reading the file to be uploaded! %w", err) + return fmt.Errorf("(*webDavStorage).Copy: Error reading the file to be uploaded: %w", err) } if err := b.client.MkdirAll(b.DestinationPath, 0644); err != nil { - return fmt.Errorf("(*webDavStorage).Copy: Error creating directory '%s' on WebDAV server! %w", b.DestinationPath, err) + return fmt.Errorf("(*webDavStorage).Copy: Error creating directory '%s' on WebDAV server: %w", b.DestinationPath, err) } if err := b.client.Write(filepath.Join(b.DestinationPath, name), bytes, 0644); err != nil { - return fmt.Errorf("(*webDavStorage).Copy: Error uploading the file to WebDAV server! %w", err) + return fmt.Errorf("(*webDavStorage).Copy: Error uploading the file to WebDAV server: %w", err) } - b.Log(storage.LogLevelInfo, b.Name(), "Uploaded a copy of backup `%s` to WebDAV-URL '%s' at path '%s'.", file, b.url, b.DestinationPath) + b.Log(storage.LogLevelInfo, b.Name(), "Uploaded a copy of backup '%s' to WebDAV URL '%s' at path '%s'.", file, b.url, b.DestinationPath) return nil } @@ -87,7 +87,7 @@ func (b *webDavStorage) Copy(file string) error { func (b *webDavStorage) Prune(deadline time.Time, pruningPrefix string) (*storage.PruneStats, error) { candidates, err := b.client.ReadDir(b.DestinationPath) if err != nil { - return nil, fmt.Errorf("(*webDavStorage).Prune: Error looking up candidates from remote storage! %w", err) + return nil, fmt.Errorf("(*webDavStorage).Prune: Error looking up candidates from remote storage: %w", err) } var matches []fs.FileInfo var lenCandidates int @@ -109,7 +109,7 @@ func (b *webDavStorage) Prune(deadline time.Time, pruningPrefix string) (*storag if err := b.DoPrune(b.Name(), len(matches), lenCandidates, "WebDAV backup(s)", func() error { for _, match := range matches { if err := b.client.Remove(filepath.Join(b.DestinationPath, match.Name())); err != nil { - return fmt.Errorf("(*webDavStorage).Prune: Error removing file from WebDAV storage! %w", err) + return fmt.Errorf("(*webDavStorage).Prune: Error removing file from WebDAV storage: %w", err) } } return nil