Skip to content

Commit 3bd73d2

Browse files
authored
mage: Simplify magefile
1 parent 7104de8 commit 3bd73d2

File tree

1 file changed

+17
-56
lines changed

1 file changed

+17
-56
lines changed

magefile.go

+17-56
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
//go:build mage
2-
// +build mage
32

43
package main
54

65
import (
76
"bytes"
8-
"errors"
97
"fmt"
108
"os"
119
"path"
@@ -36,10 +34,6 @@ func init() {
3634
if exe := os.Getenv("GOEXE"); exe != "" {
3735
goexe = exe
3836
}
39-
40-
// We want to use Go 1.11 modules even if the source lives inside GOPATH.
41-
// The default is "auto".
42-
os.Setenv("GO111MODULE", "on")
4337
}
4438

4539
func runWith(env map[string]string, cmd string, inArgs ...any) error {
@@ -122,10 +116,10 @@ func HugoNoGitInfo() error {
122116
return Hugo()
123117
}
124118

125-
var docker = sh.RunCmd("docker")
126-
127119
// Build hugo Docker container
128120
func Docker() error {
121+
docker := sh.RunCmd("docker")
122+
129123
if err := docker("build", "-t", "hugo", "."); err != nil {
130124
return err
131125
}
@@ -148,7 +142,7 @@ func Check() {
148142
fmt.Printf("Skip Test386 on %s and/or %s\n", runtime.GOARCH, runtime.GOOS)
149143
}
150144

151-
if isCi() && isDarwin() {
145+
if isCI() && isDarwin() {
152146
// Skip on macOS in CI (disk space issues)
153147
} else {
154148
mg.Deps(Fmt, Vet)
@@ -200,56 +194,19 @@ func Fmt() error {
200194
return nil
201195
}
202196

203-
var (
204-
pkgPrefixLen = len("github.com/gohugoio/hugo")
205-
pkgs []string
206-
pkgsInit sync.Once
207-
)
208-
209-
func hugoPackages() ([]string, error) {
210-
var err error
211-
pkgsInit.Do(func() {
212-
var s string
213-
s, err = sh.Output(goexe, "list", "./...")
214-
if err != nil {
215-
return
216-
}
217-
pkgs = strings.Split(s, "\n")
218-
for i := range pkgs {
219-
pkgs[i] = "." + pkgs[i][pkgPrefixLen:]
220-
}
221-
})
222-
return pkgs, err
223-
}
197+
const pkgPrefixLen = len("github.com/gohugoio/hugo")
224198

225-
// Run golint linter
226-
func Lint() error {
227-
pkgs, err := hugoPackages()
199+
var hugoPackages = sync.OnceValues(func() ([]string, error) {
200+
s, err := sh.Output(goexe, "list", "./...")
228201
if err != nil {
229-
return err
230-
}
231-
failed := false
232-
for _, pkg := range pkgs {
233-
// We don't actually want to fail this target if we find golint errors,
234-
// so we don't pass -set_exit_status, but we still print out any failures.
235-
if _, err := sh.Exec(nil, os.Stderr, nil, "golint", pkg); err != nil {
236-
fmt.Printf("ERROR: running go lint on %q: %v\n", pkg, err)
237-
failed = true
238-
}
202+
return nil, err
239203
}
240-
if failed {
241-
return errors.New("errors running golint")
204+
pkgs := strings.Split(s, "\n")
205+
for i := range pkgs {
206+
pkgs[i] = "." + pkgs[i][pkgPrefixLen:]
242207
}
243-
return nil
244-
}
245-
246-
func isCi() bool {
247-
return os.Getenv("CI") != ""
248-
}
249-
250-
func isDarwin() bool {
251-
return runtime.GOOS == "darwin"
252-
}
208+
return pkgs, nil
209+
})
253210

254211
// Run go vet linter
255212
func Vet() error {
@@ -270,7 +227,7 @@ func TestCoverHTML() error {
270227
return err
271228
}
272229
defer f.Close()
273-
if _, err := f.Write([]byte("mode: count")); err != nil {
230+
if _, err := f.WriteString("mode: count"); err != nil {
274231
return err
275232
}
276233
pkgs, err := hugoPackages()
@@ -320,6 +277,10 @@ func isUnix() bool {
320277
return runtime.GOOS != "windows"
321278
}
322279

280+
func isDarwin() bool {
281+
return runtime.GOOS == "darwin"
282+
}
283+
323284
func isCI() bool {
324285
return os.Getenv("CI") != ""
325286
}

0 commit comments

Comments
 (0)