From da499da26cf8b905fdc0fd7b9c4c3b505a5b3b0b Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Tue, 23 Jul 2024 15:50:24 +0200 Subject: [PATCH] assemble landing page in float repo dynamically --- ci/index-pages.html | 9 +----- ci/setup_pages.py | 74 ++++++++++++++++++++++++++++++--------------- 2 files changed, 50 insertions(+), 33 deletions(-) diff --git a/ci/index-pages.html b/ci/index-pages.html index 1115df3e5d..510e203115 100644 --- a/ci/index-pages.html +++ b/ci/index-pages.html @@ -7,14 +7,7 @@

Complexity Reports

- + {}

Test Coverage

diff --git a/ci/setup_pages.py b/ci/setup_pages.py index 07b7c7fe68..42767051db 100755 --- a/ci/setup_pages.py +++ b/ci/setup_pages.py @@ -11,30 +11,30 @@ from get_id_of_last_job_occurence import get_job_id PROJECT_ID_FLOAT_REPO = 49 PROJECT_ID_BASOP_REPO = 77 - -JOBS_FLOAT_REPO = [ +# job names -> hyperlink strings forthe landing page +JOBS_FLOAT_REPO = { # old ones no longer running -> replaced by "ext" jobs, remove after some time - "complexity-stereo-in-stereo-out", - "complexity-ism-in-binaural-out", - "complexity-sba-hoa3-in-hoa3-out", - "complexity-mc-in-7_1_4-out", - "complexity-masa-in-7_1_4-out", - "coverage-test-on-main-scheduled", + "complexity-stereo-in-stereo-out": "[OLD] Stereo in, stereo out", + "complexity-ism-in-binaural-out": "[OLD] ISM in, BINAURAL out", + "complexity-sba-hoa3-in-hoa3-out": "[OLD] HOA3 in, HOA3 out", + "complexity-mc-in-7_1_4-out": "[OLD] MC in, 7_1_4 out", + "complexity-masa-in-7_1_4-out": "[OLD] Masa in, 7_1_4 out", # current ones - "complexity-stereo-in-ext-out", - "complexity-ism-in-binaural_room_ir-out", - "complexity-ism-in-ext-out", - "complexity-sba-hoa3-in-ext-out", - "complexity-sba-hoa3-in-binaural_room_ir-out", - "complexity-mc-in-ext-out", - "complexity-mc-in-binaural_room_ir-out", - "complexity-masa-in-ext-out", - "complexity-masa-in-binaural-out", - "complexity-omasa-in-ext-out", - "complexity-omasa-in-binaural-out", - # "timeless" jobs (survivors from the old jobs) - "complexity-StereoDmxEVS-stereo-in-mono-out", -] + "complexity-stereo-in-ext-out": "Stereo in, EXT out", + "complexity-ism-in-binaural_room_ir-out": "ISM in, BINAURAL_ROOM_IR out", + "complexity-ism-in-ext-out": "ISM in, EXT out", + "complexity-sba-hoa3-in-ext-out": "HOA3 in, EXT out", + "complexity-sba-hoa3-in-binaural_room_ir-out": "HOA3 in, BINAURAL_ROOM_IR out", + "complexity-mc-in-ext-out": "MC in, EXT out", + "complexity-mc-in-binaural_room_ir-out": "MC in, BINAURAL_ROOM_IR out", + "complexity-masa-in-ext-out": "MASA in, EXT out", + "complexity-masa-in-binaural-out": "MASA in, BINAURAL out", + "complexity-omasa-in-ext-out": "OMASA in, EXT out", + "complexity-omasa-in-binaural-out": "OMASA in, BINAURAL out", + # "timeless" jobs (survivors from the old jobs or not complexity) + "complexity-StereoDmxEVS-stereo-in-mono-out": "StereoDmxEVS, Stereo in, Mono out", + "coverage-test-on-main-scheduled": "Coverage", +} JOBS_BASOP_REPO = [ "ivas-pytest-mld-long-dec", "ivas-pytest-mld-long-dec-lev+10", @@ -67,8 +67,7 @@ def main(): index_html = PUBLIC_FOLDER.joinpath("index.html") if project_id == PROJECT_ID_FLOAT_REPO: - src = pathlib.Path("ci/index-pages.html").absolute() - shutil.move(src, index_html) + create_landing_page_float_repo(jobs, index_html) elif project_id == PROJECT_ID_BASOP_REPO: src = pathlib.Path("ci/basop-pages/basop_index.html").absolute() shutil.move(src, index_html) @@ -76,6 +75,29 @@ def main(): sys.exit(0) +def create_landing_page_float_repo(jobs, index_html): + # dynamically create the complexity links on the landing page + link_html = list() + link_html = ["") + link_html_text = "\n".join(link_html) + + index_pages_tmpl_path = ( + pathlib.Path(__file__).parent.joinpath("index-pages.html").absolute() + ) + with open(index_pages_tmpl_path) as f: + index_pages_tmpl = f.read() + print(index_pages_tmpl) + index_pages_tmpl = index_pages_tmpl.format(link_html_text) + + with open(index_html, "w") as f: + f.write(index_pages_tmpl) + + def get_artifacts_for_jobs_and_return_num_failed( jobs: list, project_id: int, success_only: bool ) -> int: @@ -89,7 +111,9 @@ def get_artifacts_for_jobs_and_return_num_failed( failed_count = 0 for job in jobs: - job_id = get_job_id( os.environ["CI_DEFAULT_BRANCH"], job, project_id, success_only) + job_id = get_job_id( + os.environ["CI_DEFAULT_BRANCH"], job, project_id, success_only + ) print(f"{job_id} - {job}") try: -- GitLab