fix: result_detail parser
This commit is contained in:
		
							parent
							
								
									72f09e7e4b
								
							
						
					
					
						commit
						e5c7d7aad2
					
				|  | @ -2,7 +2,7 @@ from typing import List | ||||||
| 
 | 
 | ||||||
| from joj3_config_generator.models import joj1, repo, result, task | from joj3_config_generator.models import joj1, repo, result, task | ||||||
| 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, | ||||||
|  | @ -63,16 +63,10 @@ def convert(repo_conf: repo.Config, task_conf: task.Config) -> result.Config: | ||||||
|                 result.Parser(name=parser, with_={}) for parser in task_stage.parsers |                 result.Parser(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) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -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", | ||||||
|  |  | ||||||
|  | @ -46,7 +46,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" | ||||||
|     ) |     ) | ||||||
|  |  | ||||||
|  | @ -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 | ||||||
|                         } |                         } | ||||||
|                     } |                     } | ||||||
|                 ] |                 ] | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user