Commit 647c3f6a authored by Jan Kiene's avatar Jan Kiene
Browse files

change job handling in setup_pages.py

parent edb1c256
Loading
Loading
Loading
Loading
+27 −19
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@ import pathlib
import subprocess
import sys
import csv
from collections import namedtuple

from get_id_of_last_job_occurence import get_job_ids

@@ -11,17 +12,28 @@ PUBLIC_FOL_MAGIC = "-public"
PROJECT_ID_FLOAT_REPO = 49
PROJECT_ID_BASOP_REPO = 77

JOBS_FLOAT_REPO = {
    "complexity-stereo-in-stereo-out": [PUBLIC_FOL_MAGIC],
    "complexity-ism-in-binaural-out": [PUBLIC_FOL_MAGIC],
    "complexity-sba-hoa3-in-hoa3-out": [PUBLIC_FOL_MAGIC],
    "complexity-mc-in-7_1_4-out": [PUBLIC_FOL_MAGIC],
    "complexity-masa-in-7_1_4-out": [PUBLIC_FOL_MAGIC],
    "complexity-StereoDmxEVS-stereo-in-mono-out": [PUBLIC_FOL_MAGIC],
    "coverage-test-on-main-scheduled": ["coverage", "coverage_stv"],
}

Job = namedtuple("Job", "name", "artifacts", "n")

JOBS_FLOAT_REPO = [
    Job(
        "complexity-stereo-in-stereo-out", ["complexity-stereo-in-stereo-out-public"], 1
    ),
    Job("complexity-ism-in-binaural-out", ["complexity-ism-in-binaural-out-public"], 1),
    Job(
        "complexity-sba-hoa3-in-hoa3-out", ["complexity-sba-hoa3-in-hoa3-out-public"], 1
    ),
    Job("complexity-mc-in-7_1_4-out", ["complexity-mc-in-7_1_4-out-public"], 1),
    Job("complexity-masa-in-7_1_4-out", ["complexity-masa-in-7_1_4-out-public"], 1),
    Job(
        "complexity-StereoDmxEVS-stereo-in-mono-out",
        ["complexity-StereoDmxEVS-stereo-in-mono-out-public"],
        1,
    ),
    Job("coverage-test-on-main-scheduled", ["coverage", "coverage_stv"], 1),
]
JOBS_BASOP_REPO = {
    "ivas-pytest-mld-long-dec": ["mld.csv"],
    Job("ivas-pytest-mld-long-dec", ["mld.csv"], 2),
}

JOBS_FOR_PROJECT_ID = {49: JOBS_FLOAT_REPO, 77: JOBS_BASOP_REPO}
@@ -32,11 +44,10 @@ PUBLIC_FOLDER = pathlib.Path("./public")


def main():
    project_id = int(os.environ["CI_PROJECT_ID"])
    jobs = JOBS_FOR_PROJECT_ID[project_id]

    PUBLIC_FOLDER.mkdir()

    project_id = int(os.environ["CI_PROJECT_ID"])
    jobs = JOBS_FOR_PROJECT_ID[project_id]
    success_only = project_id == PROJECT_ID_FLOAT_REPO
    failed_count = get_artifacts_for_jobs_and_return_num_failed(
        jobs, project_id, success_only
@@ -52,7 +63,6 @@ def main():


def setup_pages(project_id: int):

    index_html = PUBLIC_FOLDER.joinpath("index.html")

    if project_id == PROJECT_ID_FLOAT_REPO:
@@ -87,7 +97,7 @@ def html_table_from_csv_file(csv_path, html_path):


def get_artifacts_for_jobs_and_return_num_failed(
    jobs: dict, project_id: int, success_only: bool
    jobs: list, project_id: int, success_only: bool
) -> int:
    """
    Get specified artifact folders for all jobs given and put them into the public folder.
@@ -98,7 +108,7 @@ def get_artifacts_for_jobs_and_return_num_failed(
    """
    failed_count = 0

    for job, artifact_folders in jobs.items():
    for job in jobs:
        print(os.environ["CI_DEFAULT_BRANCH"], job, project_id, success_only)
        job_ids = get_job_ids(
            os.environ["CI_DEFAULT_BRANCH"], job, project_id, success_only, 1
@@ -109,9 +119,7 @@ def get_artifacts_for_jobs_and_return_num_failed(
        try:
            curl_for_artifacts(job_id)

            for fol in artifact_folders:
                if fol == PUBLIC_FOL_MAGIC:
                    fol = job + fol
            for fol in jobs.artifacts:
                pathlib.Path(fol).rename(PUBLIC_FOLDER.joinpath(fol))

        except subprocess.CalledProcessError: