The following pull request was submitted through Github.
It can be accessed and reviewed at: https://github.com/lxc/distrobuilder/pull/283

This e-mail was sent by the LXC bot, direct replies will not reach the author
unless they happen to be subscribed to this list.

=== Description (from pull-request) ===
Signed-off-by: Thomas Hipp <thomas.h...@canonical.com>
From 90c2c4751f98a933ed4cb7efbb16bd100d8a914d Mon Sep 17 00:00:00 2001
From: Thomas Hipp <thomas.h...@canonical.com>
Date: Thu, 20 Feb 2020 10:20:46 +0100
Subject: [PATCH] *: Use errors.Wrap() when possible

Signed-off-by: Thomas Hipp <thomas.h...@canonical.com>
---
 distrobuilder/main_lxc.go | 10 +++++-----
 distrobuilder/main_lxd.go | 10 +++++-----
 shared/net.go             |  3 ++-
 shared/util.go            | 11 ++++++-----
 sources/centos-http.go    |  4 ++--
 5 files changed, 20 insertions(+), 18 deletions(-)

diff --git a/distrobuilder/main_lxc.go b/distrobuilder/main_lxc.go
index 2ca3b98f..950a3cbd 100644
--- a/distrobuilder/main_lxc.go
+++ b/distrobuilder/main_lxc.go
@@ -65,7 +65,7 @@ func (c *cmdLXC) runPack(cmd *cobra.Command, args []string, 
overlayDir string) e
        // Setup the mounts and chroot into the rootfs
        exitChroot, err := shared.SetupChroot(overlayDir, 
c.global.definition.Environment, nil)
        if err != nil {
-               return fmt.Errorf("Failed to setup chroot: %s", err)
+               return errors.Wrap(err, "Failed to setup chroot")
        }
        // Unmount everything and exit the chroot
        defer exitChroot()
@@ -84,28 +84,28 @@ func (c *cmdLXC) runPack(cmd *cobra.Command, args []string, 
overlayDir string) e
 
        err = manageRepositories(c.global.definition, manager, imageTargets)
        if err != nil {
-               return fmt.Errorf("Failed to manage repositories: %s", err)
+               return errors.Wrap(err, "Failed to manage repositories")
        }
 
        // Run post unpack hook
        for _, hook := range 
c.global.definition.GetRunnableActions("post-unpack", imageTargets) {
                err := shared.RunScript(hook.Action)
                if err != nil {
-                       return fmt.Errorf("Failed to run post-unpack: %s", err)
+                       return errors.Wrap(err, "Failed to run post-unpack")
                }
        }
 
        // Install/remove/update packages
        err = managePackages(c.global.definition, manager, imageTargets)
        if err != nil {
-               return fmt.Errorf("Failed to manage packages: %s", err)
+               return errors.Wrap(err, "Failed to manage packages")
        }
 
        // Run post packages hook
        for _, hook := range 
c.global.definition.GetRunnableActions("post-packages", imageTargets) {
                err := shared.RunScript(hook.Action)
                if err != nil {
-                       return fmt.Errorf("Failed to run post-packages: %s", 
err)
+                       return errors.Wrap(err, "Failed to run post-packages")
                }
        }
 
diff --git a/distrobuilder/main_lxd.go b/distrobuilder/main_lxd.go
index 1915ec27..828eb2fc 100644
--- a/distrobuilder/main_lxd.go
+++ b/distrobuilder/main_lxd.go
@@ -119,7 +119,7 @@ func (c *cmdLXD) runPack(cmd *cobra.Command, args []string, 
overlayDir string) e
        // Setup the mounts and chroot into the rootfs
        exitChroot, err := shared.SetupChroot(overlayDir, 
c.global.definition.Environment, nil)
        if err != nil {
-               return fmt.Errorf("Failed to setup chroot: %s", err)
+               return errors.Wrapf(err, "Failed to setup chroot")
        }
        // Unmount everything and exit the chroot
        defer exitChroot()
@@ -144,28 +144,28 @@ func (c *cmdLXD) runPack(cmd *cobra.Command, args 
[]string, overlayDir string) e
 
        err = manageRepositories(c.global.definition, manager, imageTargets)
        if err != nil {
-               return fmt.Errorf("Failed to manage repositories: %s", err)
+               return errors.Wrap(err, "Failed to manage repositories")
        }
 
        // Run post unpack hook
        for _, hook := range 
c.global.definition.GetRunnableActions("post-unpack", imageTargets) {
                err := shared.RunScript(hook.Action)
                if err != nil {
-                       return fmt.Errorf("Failed to run post-unpack: %s", err)
+                       return errors.Wrap(err, "Failed to run post-unpack")
                }
        }
 
        // Install/remove/update packages
        err = managePackages(c.global.definition, manager, imageTargets)
        if err != nil {
-               return fmt.Errorf("Failed to manage packages: %s", err)
+               return errors.Wrap(err, "Failed to manage packages")
        }
 
        // Run post packages hook
        for _, hook := range 
c.global.definition.GetRunnableActions("post-packages", imageTargets) {
                err := shared.RunScript(hook.Action)
                if err != nil {
-                       return fmt.Errorf("Failed to run post-packages: %s", 
err)
+                       return errors.Wrap(err, "Failed to run post-packages")
                }
        }
 
diff --git a/shared/net.go b/shared/net.go
index 993edf77..408425e5 100644
--- a/shared/net.go
+++ b/shared/net.go
@@ -12,6 +12,7 @@ import (
 
        lxd "github.com/lxc/lxd/shared"
        "github.com/lxc/lxd/shared/ioprogress"
+       "github.com/pkg/errors"
 )
 
 // DownloadHash downloads a file. If a checksum file is provided, it will try 
and
@@ -41,7 +42,7 @@ func DownloadHash(def DefinitionImage, file, checksum string, 
hashFunc hash.Hash
 
                hash, err = downloadChecksum(targetDir, checksum, file, 
hashFunc, hashLen)
                if err != nil {
-                       return "", fmt.Errorf("Error while downloading 
checksum: %s", err)
+                       return "", errors.Wrap(err, "Error while downloading 
checksum")
                }
        }
 
diff --git a/shared/util.go b/shared/util.go
index 04a3937b..b26f0423 100644
--- a/shared/util.go
+++ b/shared/util.go
@@ -16,6 +16,7 @@ import (
        "time"
 
        lxd "github.com/lxc/lxd/shared"
+       "github.com/pkg/errors"
        "gopkg.in/flosch/pongo2.v3"
        yaml "gopkg.in/yaml.v2"
 )
@@ -92,7 +93,7 @@ func GetSignedContent(signedFile string, keys []string, 
keyserver string) ([]byt
        out, err := exec.Command("gpg", "--homedir", gpgDir, "--keyring", 
keyring,
                "--decrypt", signedFile).Output()
        if err != nil {
-               return nil, fmt.Errorf("Failed to get file content: %v", err)
+               return nil, errors.Wrapf(err, "Failed to get file content: %s", 
out)
        }
 
        return out, nil
@@ -111,13 +112,13 @@ func VerifyFile(signedFile, signatureFile string, keys 
[]string, keyserver strin
                out, err := lxd.RunCommand("gpg", "--homedir", gpgDir, 
"--keyring", keyring,
                        "--verify", signatureFile, signedFile)
                if err != nil {
-                       return false, fmt.Errorf("Failed to verify: %s", out)
+                       return false, errors.Wrapf(err, "Failed to verify: %s", 
out)
                }
        } else {
                out, err := lxd.RunCommand("gpg", "--homedir", gpgDir, 
"--keyring", keyring,
                        "--verify", signedFile)
                if err != nil {
-                       return false, fmt.Errorf("Failed to verify: %s", out)
+                       return false, errors.Wrapf(err, "Failed to verify: %s", 
out)
                }
        }
 
@@ -196,7 +197,7 @@ func recvGPGKeys(gpgDir string, keyserver string, keys 
[]string) (bool, error) {
 func CreateGPGKeyring(keyserver string, keys []string) (string, error) {
        gpgDir, err := ioutil.TempDir(os.TempDir(), "distrobuilder.")
        if err != nil {
-               return "", fmt.Errorf("Failed to create gpg directory: %s", err)
+               return "", errors.Wrap(err, "Failed to create gpg directory")
        }
 
        err = os.MkdirAll(gpgDir, 0700)
@@ -224,7 +225,7 @@ func CreateGPGKeyring(keyserver string, keys []string) 
(string, error) {
                filepath.Join(gpgDir, "distrobuilder.gpg"))
        if err != nil {
                os.RemoveAll(gpgDir)
-               return "", fmt.Errorf("Failed to export keyring: %s", out)
+               return "", errors.Wrapf(err, "Failed to export keyring: %s", 
out)
        }
 
        return filepath.Join(gpgDir, "distrobuilder.gpg"), nil
diff --git a/sources/centos-http.go b/sources/centos-http.go
index a2cb3d20..3870c1f1 100644
--- a/sources/centos-http.go
+++ b/sources/centos-http.go
@@ -171,7 +171,7 @@ func (s CentOSHTTP) unpackRaw(filePath, rootfsDir string) 
error {
        // Setup the mounts and chroot into the rootfs
        exitChroot, err := shared.SetupChroot(tempRootDir, 
shared.DefinitionEnv{}, nil)
        if err != nil {
-               return fmt.Errorf("Failed to setup chroot: %s", err)
+               return errors.Wrap(err, "Failed to setup chroot")
        }
 
        err = shared.RunScript(fmt.Sprintf(`
@@ -298,7 +298,7 @@ func (s CentOSHTTP) unpackISO(filePath, rootfsDir string) 
error {
        // Setup the mounts and chroot into the rootfs
        exitChroot, err := shared.SetupChroot(tempRootDir, 
shared.DefinitionEnv{}, nil)
        if err != nil {
-               return fmt.Errorf("Failed to setup chroot: %s", err)
+               return errors.Wrap(err, "Failed to setup chroot")
        }
 
        err = shared.RunScript(fmt.Sprintf(`
_______________________________________________
lxc-devel mailing list
lxc-devel@lists.linuxcontainers.org
http://lists.linuxcontainers.org/listinfo/lxc-devel

Reply via email to