Documentation
¶
Index ¶
- Constants
- Variables
- func CacheDir() string
- func CtxDeps(ctx context.Context, fns ...interface{})
- func Debug() bool
- func Deps(fns ...interface{})
- func EnableColor() bool
- func ExitStatus(err error) int
- func Fatal(code int, args ...interface{}) error
- func Fatalf(code int, format string, args ...interface{}) error
- func GoCmd() string
- func HashFast() bool
- func IgnoreDefault() bool
- func SerialCtxDeps(ctx context.Context, fns ...interface{})
- func SerialDeps(fns ...interface{})
- func TargetColor() string
- func Verbose() bool
- type Color
- type Namespace
Constants ¶
const AnsiColorReset = "\033[0m"
AnsiColorReset is an ANSI color code to reset the terminal color.
const CacheEnv = "MAGEFILE_CACHE"
CacheEnv is the environment variable that users may set to change the location where mage stores its compiled binaries.
const DebugEnv = "MAGEFILE_DEBUG"
DebugEnv is the environment variable that indicates the user requested debug mode when running mage.
const EnableColorEnv = "MAGEFILE_ENABLE_COLOR"
EnableColorEnv is the environment variable that indicates the user is using a terminal which supports a color output. The default is false for backwards compatibility. When the value is true and the detected terminal does support colors then the list of mage targets will be displayed in ANSI color. When the value is true but the detected terminal does not support colors, then the list of mage targets will be displayed in the default colors (e.g. black and white).
const GoCmdEnv = "MAGEFILE_GOCMD"
GoCmdEnv is the environment variable that indicates the go binary the user desires to utilize for Magefile compilation.
const HashFastEnv = "MAGEFILE_HASHFAST"
HashFastEnv is the environment variable that indicates the user requested to use a quick hash of magefiles to determine whether or not the magefile binary needs to be rebuilt. This results in faster runtimes, but means that mage will fail to rebuild if a dependency has changed. To force a rebuild, run mage with the -f flag.
const IgnoreDefaultEnv = "MAGEFILE_IGNOREDEFAULT"
IgnoreDefaultEnv is the environment variable that indicates the user requested to ignore the default target specified in the magefile.
const TargetColorEnv = "MAGEFILE_TARGET_COLOR"
TargetColorEnv is the environment variable that indicates which ANSI color should be used to colorize mage targets. This is only applicable when the MAGEFILE_ENABLE_COLOR environment variable is true. The supported ANSI color names are any of these: - Black - Red - Green - Yellow - Blue - Magenta - Cyan - White - BrightBlack - BrightRed - BrightGreen - BrightYellow - BrightBlue - BrightMagenta - BrightCyan - BrightWhite
const VerboseEnv = "MAGEFILE_VERBOSE"
VerboseEnv is the environment variable that indicates the user requested verbose mode when running a magefile.
Variables ¶
var DefaultTargetAnsiColor = ansiColor[Cyan]
DefaultTargetAnsiColor is a default ANSI color for colorizing targets. It is set to Cyan as an arbitrary color, because it has a neutral meaning
Functions ¶
func CacheDir ¶
func CacheDir() string
CacheDir returns the directory where mage caches compiled binaries. It defaults to $HOME/.magefile, but may be overridden by the MAGEFILE_CACHE environment variable.
func CtxDeps ¶ added in v1.2.4
CtxDeps runs the given functions as dependencies of the calling function. Dependencies must only be of type:
func() func() error func(context.Context) func(context.Context) error
Or a similar method on a mg.Namespace type.
The function calling Deps is guaranteed that all dependent functions will be run exactly once when Deps returns. Dependent functions may in turn declare their own dependencies using Deps. Each dependency is run in their own goroutines. Each function is given the context provided if the function prototype allows for it.
func Debug ¶ added in v1.2.4
func Debug() bool
Debug reports whether a magefile was run with the debug flag.
func Deps ¶
func Deps(fns ...interface{})
Deps runs the given functions in parallel, exactly once. Dependencies must only be of type:
func() func() error func(context.Context) func(context.Context) error
Or a similar method on a mg.Namespace type.
This is a way to build up a tree of dependencies with each dependency defining its own dependencies. Functions must have the same signature as a Mage target, i.e. optional context argument, optional error return.
func EnableColor ¶ added in v1.10.0
func EnableColor() bool
EnableColor reports whether the user has requested to enable a color output.
func ExitStatus ¶
ExitStatus queries the error for an exit status. If the error is nil, it returns 0. If the error does not implement ExitStatus() int, it returns 1. Otherwise it retiurns the value from ExitStatus().
func Fatal ¶
Fatal returns an error that will cause mage to print out the given args and exit with the given exit code.
func Fatalf ¶
Fatalf returns an error that will cause mage to print out the given message and exit with the given exit code.
func GoCmd ¶ added in v1.3.0
func GoCmd() string
GoCmd reports the command that Mage will use to build go code. By default mage runs the "go" binary in the PATH.
func HashFast ¶ added in v1.9.0
func HashFast() bool
HashFast reports whether the user has requested to use the fast hashing mechanism rather than rely on go's rebuilding mechanism.
func IgnoreDefault ¶ added in v1.5.0
func IgnoreDefault() bool
IgnoreDefault reports whether the user has requested to ignore the default target in the magefile.
func SerialCtxDeps ¶ added in v1.2.4
SerialCtxDeps is like CtxDeps except it runs each dependency serially, instead of in parallel. This can be useful for resource intensive dependencies that shouldn't be run at the same time.
func SerialDeps ¶ added in v1.2.4
func SerialDeps(fns ...interface{})
SerialDeps is like Deps except it runs each dependency serially, instead of in parallel. This can be useful for resource intensive dependencies that shouldn't be run at the same time.
func TargetColor ¶ added in v1.10.0
func TargetColor() string
TargetColor returns the configured ANSI color name a color output.
Types ¶
type Color ¶ added in v1.10.0
type Color int
Color is ANSI color type
const ( Black Color = iota Red Green Yellow Blue Magenta Cyan White BrightBlack BrightRed BrightGreen BrightYellow BrightBlue BrightMagenta BrightCyan BrightWhite )
If you add/change/remove any items in this constant, you will need to run "stringer -type=Color" in this directory again. NOTE: Please keep the list in an alphabetical order.