mirror of
https://gitea.com/gitea/act_runner.git
synced 2026-03-20 03:46:09 +08:00
39 lines
848 B
Go
39 lines
848 B
Go
// Copyright 2024 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package run
|
|
|
|
import (
|
|
"io"
|
|
"os"
|
|
|
|
"gitea.com/gitea/act_runner/internal/pkg/report"
|
|
log "github.com/sirupsen/logrus"
|
|
)
|
|
|
|
type JobLoggerFactoryWithInfoLevel struct{}
|
|
|
|
// WithJobLogger implements [runner.JobLoggerFactory].
|
|
func (j *JobLoggerFactoryWithInfoLevel) WithJobLogger() *log.Logger {
|
|
jobLogger := log.New()
|
|
jobLogger.SetLevel(log.InfoLevel)
|
|
return jobLogger
|
|
}
|
|
|
|
type JobLoggerWithReporter struct {
|
|
Reporter *report.Reporter
|
|
LogToTerminal bool
|
|
}
|
|
|
|
// WithJobLogger implements [runner.JobLoggerFactory].
|
|
func (j *JobLoggerWithReporter) WithJobLogger() *log.Logger {
|
|
jobLogger := log.New()
|
|
if j.LogToTerminal {
|
|
jobLogger.SetOutput(os.Stdout)
|
|
} else {
|
|
jobLogger.SetOutput(io.Discard)
|
|
}
|
|
jobLogger.AddHook(j.Reporter)
|
|
return jobLogger
|
|
}
|