* 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)
| ... | ... |
@@ -44,6 +44,7 @@ type Engine struct {
|
| 44 | 44 |
Stdout io.Writer |
| 45 | 45 |
Stderr io.Writer |
| 46 | 46 |
Stdin io.Reader |
| 47 |
+ Logging bool |
|
| 47 | 48 |
} |
| 48 | 49 |
|
| 49 | 50 |
func (eng *Engine) Root() string {
|
| ... | ... |
@@ -96,6 +97,7 @@ func New(root string) (*Engine, error) {
|
| 96 | 96 |
Stdout: os.Stdout, |
| 97 | 97 |
Stderr: os.Stderr, |
| 98 | 98 |
Stdin: os.Stdin, |
| 99 |
+ Logging: true, |
|
| 99 | 100 |
} |
| 100 | 101 |
eng.Register("commands", func(job *Job) Status {
|
| 101 | 102 |
for _, name := range eng.commands() {
|
| ... | ... |
@@ -137,7 +139,9 @@ func (eng *Engine) Job(name string, args ...string) *Job {
|
| 137 | 137 |
Stderr: NewOutput(), |
| 138 | 138 |
env: &Env{},
|
| 139 | 139 |
} |
| 140 |
- job.Stderr.Add(utils.NopWriteCloser(eng.Stderr)) |
|
| 140 |
+ if eng.Logging {
|
|
| 141 |
+ job.Stderr.Add(utils.NopWriteCloser(eng.Stderr)) |
|
| 142 |
+ } |
|
| 141 | 143 |
handler, exists := eng.handlers[name] |
| 142 | 144 |
if exists {
|
| 143 | 145 |
job.handler = handler |
| ... | ... |
@@ -188,9 +192,9 @@ func (eng *Engine) ParseJob(input string) (*Job, error) {
|
| 188 | 188 |
} |
| 189 | 189 |
|
| 190 | 190 |
func (eng *Engine) Logf(format string, args ...interface{}) (n int, err error) {
|
| 191 |
- if os.Getenv("TEST") == "" {
|
|
| 192 |
- prefixedFormat := fmt.Sprintf("[%s] %s\n", eng, strings.TrimRight(format, "\n"))
|
|
| 193 |
- return fmt.Fprintf(eng.Stderr, prefixedFormat, args...) |
|
| 191 |
+ if !eng.Logging {
|
|
| 192 |
+ return 0, nil |
|
| 194 | 193 |
} |
| 195 |
- return 0, nil |
|
| 194 |
+ prefixedFormat := fmt.Sprintf("[%s] %s\n", eng, strings.TrimRight(format, "\n"))
|
|
| 195 |
+ return fmt.Fprintf(eng.Stderr, prefixedFormat, args...) |
|
| 196 | 196 |
} |
| ... | ... |
@@ -3,7 +3,6 @@ package engine |
| 3 | 3 |
import ( |
| 4 | 4 |
"fmt" |
| 5 | 5 |
"io" |
| 6 |
- "os" |
|
| 7 | 6 |
"strings" |
| 8 | 7 |
"time" |
| 9 | 8 |
) |
| ... | ... |
@@ -189,11 +188,8 @@ func (job *Job) Environ() map[string]string {
|
| 189 | 189 |
} |
| 190 | 190 |
|
| 191 | 191 |
func (job *Job) Logf(format string, args ...interface{}) (n int, err error) {
|
| 192 |
- if os.Getenv("TEST") == "" {
|
|
| 193 |
- prefixedFormat := fmt.Sprintf("[%s] %s\n", job, strings.TrimRight(format, "\n"))
|
|
| 194 |
- return fmt.Fprintf(job.Stderr, prefixedFormat, args...) |
|
| 195 |
- } |
|
| 196 |
- return 0, nil |
|
| 192 |
+ prefixedFormat := fmt.Sprintf("[%s] %s\n", job, strings.TrimRight(format, "\n"))
|
|
| 193 |
+ return fmt.Fprintf(job.Stderr, prefixedFormat, args...) |
|
| 197 | 194 |
} |
| 198 | 195 |
|
| 199 | 196 |
func (job *Job) Printf(format string, args ...interface{}) (n int, err error) {
|