From 01fb738dc8cf0604db33a4e1a69da4f6abc9be94 Mon Sep 17 00:00:00 2001 From: kolaente Date: Sun, 2 Apr 2023 18:55:30 +0200 Subject: [PATCH] fix(build): make sure the docker image can access go tools --- Dockerfile | 3 ++- magefile.go | 15 ++++++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index c873d6ee0..875ee94ee 100644 --- a/Dockerfile +++ b/Dockerfile @@ -13,7 +13,8 @@ COPY . ./ ARG TARGETOS TARGETARCH TARGETVARIANT -RUN mage build:clean && \ +RUN export PATH=$PATH:$GOPATH/bin && \ + mage build:clean && \ mage release:xgo "${TARGETOS}/${TARGETARCH}/${TARGETVARIANT}" # ┬─┐┬ ┐┌┐┐┌┐┐┬─┐┬─┐ diff --git a/magefile.go b/magefile.go index 21840c42f..c35b6d619 100644 --- a/magefile.go +++ b/magefile.go @@ -195,7 +195,11 @@ func runAndStreamOutput(cmd string, args ...string) { stdout, _ := c.StdoutPipe() errbuf := bytes.Buffer{} c.Stderr = &errbuf - c.Start() + err := c.Start() + if err != nil { + fmt.Printf("Could not start: %s\n", err) + os.Exit(1) + } reader := bufio.NewReader(stdout) line, err := reader.ReadString('\n') @@ -337,11 +341,13 @@ func Fmt() { runAndStreamOutput("gofmt", args...) } +const swaggerDocsFolderLocation = `./pkg/swagger/` + // Generates the swagger docs from the code annotations func DoTheSwag() { mg.Deps(initVars) - if _, err := os.Stat("./pkg/swagger/swagger.json"); err == nil { - fmt.Println("Swagger docs already generated, not generating. Remove the files in pkg/swagger and run this command again to regenerate them.") + if _, err := os.Stat(swaggerDocsFolderLocation + "swagger.json"); err == nil { + fmt.Println("Swagger docs already generated, not generating. Remove the files in " + swaggerDocsFolderLocation + " and run this command again to regenerate them.") return } @@ -451,6 +457,9 @@ func (Build) Clean() error { if err := os.RemoveAll(BinLocation); err != nil && !os.IsNotExist(err) { return err } + if err := os.RemoveAll(swaggerDocsFolderLocation); err != nil && !os.IsNotExist(err) { + return err + } return nil }