fix: result_detail parser
Some checks failed
build / build (push) Failing after 1m2s

This commit is contained in:
李衍志523370910113 2024-10-23 23:30:41 +08:00
parent 9652ef9b78
commit 779fcaa63c
4 changed files with 104 additions and 30 deletions

View File

@ -1,5 +1,5 @@
from joj3_config_generator.lib.repo import getHealthcheckConfig, getTeapotConfig from joj3_config_generator.lib.repo import getHealthcheckConfig, getTeapotConfig
from joj3_config_generator.lib.task import fix_comment, fix_keyword from joj3_config_generator.lib.task import fix_comment, fix_keyword, fix_result_detail
from joj3_config_generator.models import ( from joj3_config_generator.models import (
Cmd, Cmd,
CmdFile, CmdFile,
@ -82,16 +82,10 @@ def convert(repo_conf: Repo, task_conf: Task) -> ResultConfig:
ParserConfig(name=parser, with_={}) for parser in task_stage.parsers ParserConfig(name=parser, with_={}) for parser in task_stage.parsers
], ],
) )
# TODO: fix all parser here conf_stage = fix_result_detail(task_stage, conf_stage)
if "result-detail" in task_stage.parsers:
result_detail_parser = next(
p for p in conf_stage.parsers if p.name == "result-detail"
)
if task_stage.result_detail is not None:
result_detail_parser.with_.update(task_stage.result_detail)
conf_stage = fix_comment(task_stage, conf_stage) conf_stage = fix_comment(task_stage, conf_stage)
conf_stage = fix_keyword(task_stage, conf_stage) conf_stage = fix_keyword(task_stage, conf_stage)
# TODO: fix diff parser here
result_conf.stage.stages.append(conf_stage) result_conf.stage.stages.append(conf_stage)

View File

@ -20,6 +20,37 @@ def fix_keyword(task_stage: TaskStage, conf_stage: ResultStage) -> ResultStage:
return conf_stage return conf_stage
def fix_result_detail(task_stage: TaskStage, conf_stage: ResultStage) -> ResultStage:
if "result-detail" in task_stage.parsers:
result_detail_parser = next(
p for p in conf_stage.parsers if p.name == "result-detail"
)
if task_stage.result_detail is not None:
show_files = []
if (
task_stage.result_detail.stdout
and task_stage.result_detail.stdout is not None
):
show_files.append("stdout")
if (
task_stage.result_detail.stderr
and task_stage.result_detail.stderr is not None
):
show_files.append("stderr")
result_detail_parser.with_.update(
{
"score": 0,
"comment": "",
"showFiles": show_files,
"showExitStatus": task_stage.result_detail.exitstatus,
"showRuntime": task_stage.result_detail.time,
"showMemory": task_stage.result_detail.mem,
}
)
return conf_stage
def fix_comment(task_stage: TaskStage, conf_stage: ResultStage) -> ResultStage: def fix_comment(task_stage: TaskStage, conf_stage: ResultStage) -> ResultStage:
comment_parser = [ comment_parser = [
"dummy", "dummy",

View File

@ -45,7 +45,9 @@ class Stage(BaseModel):
keyword: Optional[ParserKeyword] = ParserKeyword() keyword: Optional[ParserKeyword] = ParserKeyword()
clangtidy: Optional[ParserKeyword] = ParserKeyword() clangtidy: Optional[ParserKeyword] = ParserKeyword()
cppcheck: Optional[ParserKeyword] = ParserKeyword() cppcheck: Optional[ParserKeyword] = ParserKeyword()
cpplint: Optional[ParserKeyword] = ParserKeyword() # FIXME: determine cpplint type
# cpplint: Optional[ParserKeyword] = ParserKeyword()
cpplint: Optional[ParserDummy] = ParserDummy()
result_detail: Optional[ParserResultDetail] = Field( result_detail: Optional[ParserResultDetail] = Field(
ParserResultDetail(), alias="result-detail" ParserResultDetail(), alias="result-detail"
) )

View File

@ -18,7 +18,7 @@
"/<function", "/<function",
"get_temp_directory", "get_temp_directory",
"at", "at",
"0x7ff2358271a0>/repo-health-checker", "0x7fd3bed4f1a0>/repo-health-checker",
"-root=.", "-root=.",
"-repoSize=50.5", "-repoSize=50.5",
"-meta=main.py", "-meta=main.py",
@ -71,8 +71,8 @@
"cpuRateLimit": 0, "cpuRateLimit": 0,
"cpuSetLimit": "", "cpuSetLimit": "",
"copyIn": { "copyIn": {
"//tmp/repo-checker-3qi07atp/repo-health-checker": { "//tmp/repo-checker-9z61g608/repo-health-checker": {
"src": "//tmp/repo-checker-ebujap5a/repo-health-checker", "src": "//tmp/repo-checker-19d98f6u/repo-health-checker",
"content": null, "content": null,
"fileId": null, "fileId": null,
"name": null, "name": null,
@ -238,7 +238,15 @@
"mem": false, "mem": false,
"stdout": false, "stdout": false,
"stderr": true, "stderr": true,
"exitstatus": true "exitstatus": true,
"score": 0,
"comment": "",
"showFiles": [
"stderr"
],
"showExitStatus": true,
"showRuntime": false,
"showMemory": false
} }
}, },
{ {
@ -375,7 +383,15 @@
"mem": false, "mem": false,
"stdout": false, "stdout": false,
"stderr": true, "stderr": true,
"exitstatus": false "exitstatus": false,
"score": 0,
"comment": "",
"showFiles": [
"stderr"
],
"showExitStatus": false,
"showRuntime": false,
"showMemory": false
} }
} }
] ]
@ -559,7 +575,15 @@
"mem": false, "mem": false,
"stdout": true, "stdout": true,
"stderr": false, "stderr": false,
"exitstatus": true "exitstatus": true,
"score": 0,
"comment": "",
"showFiles": [
"stdout"
],
"showExitStatus": true,
"showRuntime": false,
"showMemory": false
} }
} }
] ]
@ -693,7 +717,15 @@
"mem": false, "mem": false,
"stdout": false, "stdout": false,
"stderr": true, "stderr": true,
"exitstatus": true "exitstatus": true,
"score": 0,
"comment": "",
"showFiles": [
"stderr"
],
"showExitStatus": true,
"showRuntime": false,
"showMemory": false
} }
} }
] ]
@ -776,16 +808,7 @@
{ {
"name": "cpplint", "name": "cpplint",
"with": { "with": {
"keyword": [ "comment": ""
"runtime",
"readability",
"build"
],
"weight": [
10,
20,
15
]
} }
}, },
{ {
@ -801,7 +824,15 @@
"mem": false, "mem": false,
"stdout": true, "stdout": true,
"stderr": false, "stderr": false,
"exitstatus": true "exitstatus": true,
"score": 0,
"comment": "",
"showFiles": [
"stdout"
],
"showExitStatus": true,
"showRuntime": false,
"showMemory": false
} }
} }
] ]
@ -894,7 +925,15 @@
"mem": true, "mem": true,
"stdout": false, "stdout": false,
"stderr": true, "stderr": true,
"exitstatus": true "exitstatus": true,
"score": 0,
"comment": "",
"showFiles": [
"stderr"
],
"showExitStatus": true,
"showRuntime": true,
"showMemory": true
} }
} }
] ]
@ -987,7 +1026,15 @@
"mem": true, "mem": true,
"stdout": false, "stdout": false,
"stderr": true, "stderr": true,
"exitstatus": true "exitstatus": true,
"score": 0,
"comment": "",
"showFiles": [
"stderr"
],
"showExitStatus": true,
"showRuntime": true,
"showMemory": true
} }
} }
] ]