main
 1//go:build mage
 2// +build mage
 3
 4package main
 5
 6import (
 7	"fmt"
 8	"os"
 9
10	"github.com/magefile/mage/mg"
11	"github.com/magefile/mage/sh"
12)
13
14// Default target to run when none is specified
15// If not set, running mage will list available targets
16var Default = Test
17
18// Clean
19func Clean() error {
20	fmt.Println("Cleaning...")
21	return os.RemoveAll("stanuki")
22}
23
24// Build the CLI
25func Build() error {
26	mg.Deps(Clean)
27	fmt.Println("Building...")
28	return sh.RunV("go", "build", "-o", "stanuki", "./cmd/stanuki/main.go")
29}
30
31// Run the unit tests
32func Test() error {
33	return sh.RunV("go", "test", "-v", "./...")
34}
35
36// Run the stanuki CLI
37func Run() error {
38	return sh.RunV("go", "run", "./cmd/stanuki")
39}