1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00

Engine: optional Logging field to disable custom logging in engine.

* The default behavior is preserved
* This disables the use of the `TEST` environment variable in engine.

Docker-DCO-1.1-Signed-off-by: Solomon Hykes <solomon@docker.com> (github: shykes)
This commit is contained in:
Solomon Hykes 2014-02-15 14:11:15 -08:00
parent 902f88ea15
commit ea2fba5ce0
2 changed files with 11 additions and 11 deletions

View file

@ -44,6 +44,7 @@ type Engine struct {
Stdout io.Writer Stdout io.Writer
Stderr io.Writer Stderr io.Writer
Stdin io.Reader Stdin io.Reader
Logging bool
} }
func (eng *Engine) Root() string { func (eng *Engine) Root() string {
@ -96,6 +97,7 @@ func New(root string) (*Engine, error) {
Stdout: os.Stdout, Stdout: os.Stdout,
Stderr: os.Stderr, Stderr: os.Stderr,
Stdin: os.Stdin, Stdin: os.Stdin,
Logging: true,
} }
eng.Register("commands", func(job *Job) Status { eng.Register("commands", func(job *Job) Status {
for _, name := range eng.commands() { for _, name := range eng.commands() {
@ -137,7 +139,9 @@ func (eng *Engine) Job(name string, args ...string) *Job {
Stderr: NewOutput(), Stderr: NewOutput(),
env: &Env{}, env: &Env{},
} }
job.Stderr.Add(utils.NopWriteCloser(eng.Stderr)) if eng.Logging {
job.Stderr.Add(utils.NopWriteCloser(eng.Stderr))
}
handler, exists := eng.handlers[name] handler, exists := eng.handlers[name]
if exists { if exists {
job.handler = handler job.handler = handler
@ -188,9 +192,9 @@ func (eng *Engine) ParseJob(input string) (*Job, error) {
} }
func (eng *Engine) Logf(format string, args ...interface{}) (n int, err error) { func (eng *Engine) Logf(format string, args ...interface{}) (n int, err error) {
if os.Getenv("TEST") == "" { if !eng.Logging {
prefixedFormat := fmt.Sprintf("[%s] %s\n", eng, strings.TrimRight(format, "\n")) return 0, nil
return fmt.Fprintf(eng.Stderr, prefixedFormat, args...)
} }
return 0, nil prefixedFormat := fmt.Sprintf("[%s] %s\n", eng, strings.TrimRight(format, "\n"))
return fmt.Fprintf(eng.Stderr, prefixedFormat, args...)
} }

View file

@ -3,7 +3,6 @@ package engine
import ( import (
"fmt" "fmt"
"io" "io"
"os"
"strings" "strings"
"time" "time"
) )
@ -189,11 +188,8 @@ func (job *Job) Environ() map[string]string {
} }
func (job *Job) Logf(format string, args ...interface{}) (n int, err error) { func (job *Job) Logf(format string, args ...interface{}) (n int, err error) {
if os.Getenv("TEST") == "" { prefixedFormat := fmt.Sprintf("[%s] %s\n", job, strings.TrimRight(format, "\n"))
prefixedFormat := fmt.Sprintf("[%s] %s\n", job, strings.TrimRight(format, "\n")) return fmt.Fprintf(job.Stderr, prefixedFormat, args...)
return fmt.Fprintf(job.Stderr, prefixedFormat, args...)
}
return 0, nil
} }
func (job *Job) Printf(format string, args ...interface{}) (n int, err error) { func (job *Job) Printf(format string, args ...interface{}) (n int, err error) {