Game is a Make-like build tool using Go.
You describe build tasks in Go, and Game runs them.
go instal github.com/ridge/game@master
game binary will be installed to your $GOPATH/bin directory.
Join the #game channel on gophers slack.
Documentation website TBD, see this directory in meantime.
Mage has a great answer.
Game is indeed a a fork of Mage.
Mage prides itself on having clean and readable build files. Game trades a bit of readability for features.
-
New features of Game:
- parameterized dependencies
- top-level targets for variables implementing
task.Runnable - task time tracing
- per-task output capture (output from parallel tasks is not intermixed)
- shorthand
ctx.Depinstead ofmg.CtxDeps(ctx, ...) - Functions, variables and methods named
Allare defaults. E.g. a method declarationfunc (Hey) All(ctx task.Context) {}produces a task namedhey, nothey:all.
-
Game drops several features of Mage:
- GOPATH environment support
- Shorthand tasks definition without
Contextparameter
Game is licensed under terms of Apache 2.0 license.