Manager: add mage target for building with the race condition checker

Run `mage FlamencoManagerRace` to build Flamenco Manager with the
race condition checker enabled.

See https://go.dev/doc/articles/race_detector
This commit is contained in:
Sybren A. Stüvel 2025-01-09 14:39:21 +01:00
parent 35d6b03a3b
commit 234cfbf983

View File

@ -43,6 +43,11 @@ func FlamencoManagerWithoutWebapp() error {
return nil return nil
} }
// Build the Flamenco Manager executable with race condition checker enabled, do not rebuild the webapp
func FlamencoManagerRace() error {
return build("./cmd/flamenco-manager", "-race")
}
func flamencoManager() error { func flamencoManager() error {
return build("./cmd/flamenco-manager") return build("./cmd/flamenco-manager")
} }
@ -93,7 +98,7 @@ func WebappStatic() error {
return packAddon(zipPath) return packAddon(zipPath)
} }
func build(exePackage string) error { func build(exePackage string, extraArgs ...string) error {
flags, err := buildFlags() flags, err := buildFlags()
if err != nil { if err != nil {
return err return err
@ -101,6 +106,7 @@ func build(exePackage string) error {
args := []string{"build", "-v"} args := []string{"build", "-v"}
args = append(args, flags...) args = append(args, flags...)
args = append(args, extraArgs...)
args = append(args, exePackage) args = append(args, exePackage)
return sh.RunV(mg.GoCmd(), args...) return sh.RunV(mg.GoCmd(), args...)
} }