From 61569474060aedf3b5479d4a50b21db573df7c85 Mon Sep 17 00:00:00 2001 From: Mikhail Klementev Date: Wed, 10 Jul 2019 22:08:04 +0000 Subject: [PATCH] Make docker permissions errors more obvious --- main.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/main.go b/main.go index 61932ed..0af4fdd 100644 --- a/main.go +++ b/main.go @@ -61,6 +61,14 @@ func checkRequiredUtils() (err error) { return } +func checkDockerPermissions() (err error) { + output, err := exec.Command("docker", "ps").CombinedOutput() + if err != nil { + err = fmt.Errorf(string(output)) + } + return +} + func main() { app := kingpin.New( "out-of-tree", @@ -140,6 +148,15 @@ func main() { log.Fatalln(err) } + err = checkDockerPermissions() + if err != nil { + log.Println(err) + log.Println("You have two options:") + log.Println("\t1. Add user to group docker;") + log.Println("\t2. Run out-of-tree with sudo.") + os.Exit(1) + } + if !exists(usr.HomeDir + "/.out-of-tree/images") { log.Println("No ~/.out-of-tree/images: " + "Probably you need to run `out-of-tree bootstrap`" +