refactor: conf with less import

This commit is contained in:
张泊明518370910136 2024-11-28 10:29:45 -05:00
parent 31c310960f
commit 5236916858
GPG Key ID: D47306D7062CDA9D
2 changed files with 5 additions and 4 deletions
cmd/joj3

View File

@ -14,7 +14,6 @@ import (
"time"
"github.com/go-git/go-git/v5"
"github.com/joint-online-judge/JOJ3/cmd/joj3/env"
"github.com/joint-online-judge/JOJ3/internal/stage"
"github.com/koding/multiconfig"
)
@ -165,7 +164,7 @@ func parseConventionalCommit(commit string) (*ConventionalCommit, error) {
return cc, nil
}
func ParseConfFile(path string) (conf *Conf, err error) {
func ParseConfFile(path string) (conf *Conf, name string, err error) {
conf = new(Conf)
d := &multiconfig.DefaultLoader{}
d.Loader = multiconfig.MultiLoader(
@ -181,7 +180,7 @@ func ParseConfFile(path string) (conf *Conf, err error) {
slog.Error("validate stages conf", "error", err)
return
}
env.Attr.ConfName = conf.Name
name = conf.Name
// TODO: remove the following backward compatibility codes
if conf.MaxTotalScore < 0 && conf.Teapot.MaxTotalScore >= 0 {
conf.MaxTotalScore = conf.Teapot.MaxTotalScore

View File

@ -7,6 +7,7 @@ import (
"os"
"github.com/joint-online-judge/JOJ3/cmd/joj3/conf"
"github.com/joint-online-judge/JOJ3/cmd/joj3/env"
"github.com/joint-online-judge/JOJ3/cmd/joj3/stage"
"github.com/joint-online-judge/JOJ3/cmd/joj3/teapot"
internalStage "github.com/joint-online-judge/JOJ3/internal/stage"
@ -85,11 +86,12 @@ func mainImpl() (err error) {
return err
}
slog.Info("try to load conf", "path", confPath)
confObj, err = conf.ParseConfFile(confPath)
confObj, confName, err := conf.ParseConfFile(confPath)
if err != nil {
slog.Error("parse conf", "error", err)
return err
}
env.Attr.ConfName = confName
slog.Debug("conf loaded", "conf", confObj)
if err := setupSlog(confObj); err != nil { // after conf is loaded
slog.Error("setup slog", "error", err)