Compare commits
2 Commits
d79d9ae4bd
...
d0b1341af0
Author | SHA1 | Date | |
---|---|---|---|
d0b1341af0 | |||
e1e4fded28 |
|
@ -164,15 +164,10 @@ func ParseMsg(confRoot, confName, msg string) (conf Conf, group string, err erro
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func ListValidScopes(confRoot, confName, msg string) ([]string, error) {
|
func ListValidScopes(confRoot, confName string) ([]string, error) {
|
||||||
conventionalCommit, err := parseConventionalCommit(msg)
|
|
||||||
if err != nil {
|
|
||||||
return []string{}, err
|
|
||||||
}
|
|
||||||
slog.Info("conventional commit", "commit", conventionalCommit)
|
|
||||||
confRoot = filepath.Clean(confRoot)
|
confRoot = filepath.Clean(confRoot)
|
||||||
validScopes := []string{}
|
validScopes := []string{}
|
||||||
err = filepath.Walk(confRoot, func(path string, info os.FileInfo, err error) error {
|
err := filepath.Walk(confRoot, func(path string, info os.FileInfo, err error) error {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
slog.Error("list valid scopes", "error", err)
|
slog.Error("list valid scopes", "error", err)
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -4,6 +4,7 @@ import (
|
||||||
"flag"
|
"flag"
|
||||||
"fmt"
|
"fmt"
|
||||||
"log/slog"
|
"log/slog"
|
||||||
|
"os"
|
||||||
|
|
||||||
"github.com/joint-online-judge/JOJ3/cmd/joj3/conf"
|
"github.com/joint-online-judge/JOJ3/cmd/joj3/conf"
|
||||||
"github.com/joint-online-judge/JOJ3/cmd/joj3/stage"
|
"github.com/joint-online-judge/JOJ3/cmd/joj3/stage"
|
||||||
|
@ -25,15 +26,15 @@ func init() {
|
||||||
showVersion = flag.Bool("version", false, "print current version")
|
showVersion = flag.Bool("version", false, "print current version")
|
||||||
}
|
}
|
||||||
|
|
||||||
func main() {
|
func mainImpl() error {
|
||||||
if err := setupSlog(""); err != nil { // before conf is loaded
|
if err := setupSlog(""); err != nil { // before conf is loaded
|
||||||
slog.Error("setup slog", "error", err)
|
slog.Error("setup slog", "error", err)
|
||||||
return
|
return err
|
||||||
}
|
}
|
||||||
flag.Parse()
|
flag.Parse()
|
||||||
if *showVersion {
|
if *showVersion {
|
||||||
fmt.Println(Version)
|
fmt.Println(Version)
|
||||||
return
|
return nil
|
||||||
}
|
}
|
||||||
slog.Info("start joj3", "version", Version)
|
slog.Info("start joj3", "version", Version)
|
||||||
if msg == "" {
|
if msg == "" {
|
||||||
|
@ -41,31 +42,40 @@ func main() {
|
||||||
msg, err = conf.GetCommitMsg()
|
msg, err = conf.GetCommitMsg()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
slog.Error("get commit msg", "error", err)
|
slog.Error("get commit msg", "error", err)
|
||||||
return
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
confObj, group, err := conf.ParseMsg(confRoot, confName, msg)
|
confObj, group, err := conf.ParseMsg(confRoot, confName, msg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
slog.Error("parse msg", "error", err)
|
slog.Error("parse msg", "error", err)
|
||||||
validScopes, scopeErr := conf.ListValidScopes(
|
validScopes, scopeErr := conf.ListValidScopes(
|
||||||
confRoot, confName, msg)
|
confRoot, confName)
|
||||||
if scopeErr != nil {
|
if scopeErr != nil {
|
||||||
slog.Error("list valid scopes", "error", scopeErr)
|
slog.Error("list valid scopes", "error", scopeErr)
|
||||||
return
|
return err
|
||||||
}
|
}
|
||||||
slog.Info("hint: valid scopes in commit message", "scopes", validScopes)
|
slog.Info("HINT: use valid scopes in commit message",
|
||||||
return
|
"valid scopes", validScopes)
|
||||||
|
return err
|
||||||
}
|
}
|
||||||
if err := setupSlog(confObj.LogPath); err != nil { // after conf is loaded
|
if err := setupSlog(confObj.LogPath); err != nil { // after conf is loaded
|
||||||
slog.Error("setup slog", "error", err)
|
slog.Error("setup slog", "error", err)
|
||||||
return
|
return err
|
||||||
}
|
}
|
||||||
if err := stage.Run(confObj, group); err != nil {
|
if err := stage.Run(confObj, group); err != nil {
|
||||||
slog.Error("stage run", "error", err)
|
slog.Error("stage run", "error", err)
|
||||||
return
|
return err
|
||||||
}
|
}
|
||||||
if err := teapot.Run(confObj); err != nil {
|
if err := teapot.Run(confObj); err != nil {
|
||||||
slog.Error("teapot run", "error", err)
|
slog.Error("teapot run", "error", err)
|
||||||
return
|
return err
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
if err := mainImpl(); err != nil {
|
||||||
|
slog.Error("main exit", "error", err)
|
||||||
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user