cmd/mbf: enable output colouring
Test / Create distribution (push) Successful in 58s
Test / Sandbox (push) Successful in 3m36s
Test / Hakurei (push) Successful in 6m11s
Test / Sandbox (race detector) (push) Successful in 7m44s
Test / Hakurei (race detector) (push) Successful in 9m57s
Test / ShareFS (push) Successful in 10m35s
Test / Flake checks (push) Successful in 1m30s
Test / Create distribution (push) Successful in 58s
Test / Sandbox (push) Successful in 3m36s
Test / Hakurei (push) Successful in 6m11s
Test / Sandbox (race detector) (push) Successful in 7m44s
Test / Hakurei (race detector) (push) Successful in 9m57s
Test / ShareFS (push) Successful in 10m35s
Test / Flake checks (push) Successful in 1m30s
This respects the de facto standards, on top of checking stderr. Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
@@ -28,6 +28,8 @@ type cache struct {
|
||||
idle bool
|
||||
// Unset [pkg.CSuppressInit].
|
||||
verboseInit bool
|
||||
// Whether to enable output colours.
|
||||
color bool
|
||||
// Unset [pkg.CExternShallow].
|
||||
deep bool
|
||||
// Loaded artifact of [rosa.QEMU].
|
||||
@@ -61,6 +63,9 @@ func (cache *cache) open() (err error) {
|
||||
if !cache.deep {
|
||||
cache.attr.Flags |= pkg.CExternShallow
|
||||
}
|
||||
if cache.color {
|
||||
cache.attr.Flags |= pkg.CColourOutput
|
||||
}
|
||||
|
||||
done := make(chan struct{})
|
||||
defer close(done)
|
||||
|
||||
@@ -92,6 +92,11 @@ func main() {
|
||||
|
||||
var cm cache
|
||||
defer func() { cm.Close() }()
|
||||
if cm.color = ext.Isatty(syscall.Stderr) &&
|
||||
os.Getenv("NO_COLOR") == "" &&
|
||||
os.Getenv("TERM") != "dumb"; cm.color {
|
||||
log.SetPrefix("\x1b[2mmbf: \x1b[0m")
|
||||
}
|
||||
|
||||
var (
|
||||
flagQuiet bool
|
||||
|
||||
@@ -58,11 +58,11 @@ func getCache(t *testing.T) *pkg.Cache {
|
||||
ctx, buildTestCacheCancel = signal.NotifyContext(context.Background(),
|
||||
syscall.SIGINT, syscall.SIGTERM)
|
||||
|
||||
msg := message.New(log.New(os.Stderr, "rosa: ", 0))
|
||||
msg := message.New(log.New(os.Stderr, "\x1b[2mrosa: \x1b[0m", 0))
|
||||
msg.SwapVerbose(true)
|
||||
|
||||
if buildTestCache, err = pkg.Open(ctx, msg, a, &pkg.CacheAttr{
|
||||
Flags: pkg.CSuppressInit,
|
||||
Flags: pkg.CSuppressInit | pkg.CColourOutput,
|
||||
}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user