From 2acd9373fa045fc3402a4504d176b9833e99feb5 Mon Sep 17 00:00:00 2001 From: Christoph Alt <christoph.alt@fau.de> Date: Mon, 19 Sep 2022 17:47:21 +0200 Subject: [PATCH] filtering no finished jobs --- cbutil/get_job_info.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/cbutil/get_job_info.py b/cbutil/get_job_info.py index 36e6a1c..c4e6f73 100644 --- a/cbutil/get_job_info.py +++ b/cbutil/get_job_info.py @@ -1,7 +1,7 @@ import logging import os -import dotenv +import dotenv import requests from cbutil.data_points import DataPoint, data_point_factory @@ -17,7 +17,7 @@ def load_from_env(env_path=".env"): def get_url_from_env() -> str: base_url, project_id, pipeline_id = load_from_env() - logging.info(f'Loaded from env {base_url} {project_id}{pipeline_id}') + logging.info(f'Loaded from env {base_url} {project_id} {pipeline_id}') return get_api_url_pipelines(base_url, project_id, pipeline_id) @@ -27,6 +27,8 @@ def get_api_url_pipelines(base_url: str, project_id: int, pipeline_id: int): def get_job_info(url: str): jobs = requests.get(url) + if jobs.status_code != 200: + jobs.raise_for_status() for job in jobs.json(): yield job @@ -41,4 +43,5 @@ def create_job_datapoint(job: dict) -> DataPoint: def get_job_datapoints(url): for job in get_job_info(url): - yield create_job_datapoint(job) + if job['status'] == 'passed': + yield create_job_datapoint(job) -- GitLab