mirror of
https://github.com/drone/drone-cli.git
synced 2025-11-16 05:07:13 +01:00
46 lines
701 B
Go
46 lines
701 B
Go
package main
|
|
|
|
import (
|
|
"bytes"
|
|
"fmt"
|
|
|
|
"github.com/Sirupsen/logrus"
|
|
)
|
|
|
|
type formatter struct {
|
|
nocolor bool
|
|
}
|
|
|
|
func (f *formatter) Format(entry *logrus.Entry) ([]byte, error) {
|
|
var buf bytes.Buffer
|
|
|
|
buf.WriteString("\033[2m")
|
|
buf.WriteString("[drone]")
|
|
|
|
for k, v := range entry.Data {
|
|
if k != "exit_code" {
|
|
continue
|
|
}
|
|
|
|
if v == 0 {
|
|
buf.WriteString("\033[1;32m SUCCESS\033[0m")
|
|
} else {
|
|
buf.WriteString("\033[1;31m FAILURE\033[0m")
|
|
}
|
|
}
|
|
|
|
buf.WriteByte(' ')
|
|
buf.WriteString(entry.Message)
|
|
buf.WriteByte(' ')
|
|
|
|
for k, v := range entry.Data {
|
|
buf.WriteString(
|
|
fmt.Sprintf("%s=%v", k, v),
|
|
)
|
|
}
|
|
|
|
buf.WriteString("\033[0m")
|
|
buf.WriteByte('\n')
|
|
return buf.Bytes(), nil
|
|
}
|