results API : fix again to workaround a tmp issue >_>

This commit is contained in:
Alexandre Aubin 2023-03-05 14:50:26 +01:00
parent 71fc6009d0
commit b797f46798

24
run.py
View file

@ -1302,17 +1302,35 @@ async def api_restart_job(request, job_id):
@app.route("/api/results", methods=["GET"]) @app.route("/api/results", methods=["GET"])
async def api_results(request): async def api_results(request):
import re
repos = Repo.select().order_by(Repo.name) repos = Repo.select().order_by(Repo.name)
all_results = {} all_results = {}
for repo in repos: for repo in repos:
latest_result_path = yunorunner_dir + f"/results/logs/{repo.name}_{app.config.ARCH}_{app.config.YNH_BRANCH}_results.json" #latest_result_path = yunorunner_dir + f"/results/logs/{repo.name}_{app.config.ARCH}_{app.config.YNH_BRANCH}_results.json"
if not os.path.exists(latest_result_path): #if not os.path.exists(latest_result_path):
# continue
#all_results[repo.name] = json.load(open(latest_result_path))
jobs = Job.select().where(Job.url_or_path==repo.url, Job.state in ["success", "failure"]).order_by(Job.end_time)
if jobs.count() == 0:
continue
else:
job = jobs[-1]
l = re.findall(r"Global level for this application: (\d)", job.log[-2000:])
if not l:
continue continue
all_results[repo.name] = json.load(open(latest_result_path)) all_results[repo.name] = {
"app": repo.name,
"timestamp": int(job.end_time.timestamp()),
"level": int(l[0])
}
return response.json(all_results) return response.json(all_results)