commit 439e50be9eff1a0282c80b229b7f1c45c95c5c77 Author: My Flow Platform Project <> Date: Wed Aug 23 07:13:01 2023 +0100 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/.golangci.yaml b/.golangci.yaml new file mode 100644 index 0000000..8549273 --- /dev/null +++ b/.golangci.yaml @@ -0,0 +1,22 @@ +--- +run: + concurrency: 2 + timeout: 1m + issues-exit-code: 1 + tests: true + +output: + format: colored-line-number + print-issues-lines: true + print-linter-name: true + uniq-by-line: true + sort-results: true + +linters-settings: + lll: + line-length: 140 + +linters: + enable-all: true + # disable: + fast: false diff --git a/magefiles/mage.go b/magefiles/mage.go new file mode 100644 index 0000000..1a12222 --- /dev/null +++ b/magefiles/mage.go @@ -0,0 +1,57 @@ +//go:build mage +// +build mage + +package main + +import ( + "os" + + "github.com/magefile/mage/sh" +) + +var Default = Build + +var binary = "app" + +// Test run the go tests. +// To enable verbose mode set GO_TEST_VERBOSE=1. +// To enable coverage mode set GO_TEST_COVER=1. +func Test() error { + goTest := sh.RunCmd("go", "test") + + args := []string{"./..."} + + if os.Getenv("GO_TEST_VERBOSE") == "1" { + args = append(args, "-v") + } + + if os.Getenv("GO_TEST_COVER") == "1" { + args = append(args, "-cover") + } + + return goTest(args...) +} + +// Lint runs golangci-lint against the code. +func Lint() error { + return sh.RunV("golangci-lint", "run", "--color", "always") +} + +// Build build the executable. +func Build() error { + main := "main.go" + return sh.Run("go", "build", "-o", binary, main) +} + +// Clean clean the workspace. +func Clean() error { + if err := sh.Rm(binary); err != nil { + return err + } + + if err := sh.Run("go", "clean", "./..."); err != nil { + return err + } + + return nil +} diff --git a/main.go b/main.go new file mode 100644 index 0000000..da29a2c --- /dev/null +++ b/main.go @@ -0,0 +1,4 @@ +package main + +func main() { +}