This commit is contained in:
Christopher Homberger
2026-02-20 21:37:36 +01:00
parent d9948c0df4
commit ae82ca2e97
2 changed files with 20 additions and 13 deletions

View File

@@ -7,6 +7,7 @@ import (
"context"
"encoding/json"
"fmt"
"io"
"os"
"path/filepath"
"strings"
@@ -30,13 +31,18 @@ import (
)
type JobLoggerFactory struct {
reporter *report.Reporter
reporter *report.Reporter
logToTerminal bool
}
// WithJobLogger implements [runner.JobLoggerFactory].
func (j *JobLoggerFactory) WithJobLogger() *log.Logger {
jobLogger := logrus.New()
jobLogger.SetOutput(os.Stdout)
if j.logToTerminal {
jobLogger.SetOutput(os.Stdout)
} else {
jobLogger.SetOutput(io.Discard)
}
jobLogger.AddHook(j.reporter)
return jobLogger
}
@@ -283,13 +289,7 @@ func (r *Runner) run(ctx context.Context, task *runnerv1.Task, reporter *report.
reporter.Logf("workflow prepared")
// TODO GITEA
// // add logger recorders
// ctx = common.WithLoggerHook(ctx, reporter)
ctx = runner.WithJobLoggerFactory(ctx, &JobLoggerFactory{reporter: reporter})
// if !log.IsLevelEnabled(log.DebugLevel) {
// ctx = runner.WithJobLoggerFactory(ctx, NullLogger{})
// }
ctx = runner.WithJobLoggerFactory(ctx, &JobLoggerFactory{reporter: reporter, logToTerminal: log.IsLevelEnabled(log.DebugLevel)})
execErr := executor(ctx)
reporter.SetOutputs(job.Outputs)