Commit e73fb419 authored by Jan Kiene's avatar Jan Kiene
Browse files

create two sets of histograms + respective webpages

parent 7cd67616
Loading
Loading
Loading
Loading
Loading
+25 −2
Original line number Diff line number Diff line
@@ -371,10 +371,12 @@ stages:
  variables:
    # keep "mld" in artifact name for backwards compatibility reasons
    CSV_ARTIFACT_NAME: "mld--$CI_JOB_NAME-$CI_JOB_ID--sha-$CI_COMMIT_SHORT_SHA.csv"
    CSV_ARTIFACT_SPLIT: "mld--split--$CI_JOB_NAME-$CI_JOB_ID--sha-$CI_COMMIT_SHORT_SHA.csv"
    MERGED_CSV_ARTIFACT_NAME: "$CI_JOB_NAME--merged_csv--$CI_JOB_ID.csv"
    PAGES_HTML_ARTIFACT_NAME: "$CI_JOB_NAME-index.html"
    SUMMARY_HTML_ARTIFACT_NAME: "summary_$CI_JOB_NAME.html"
    IMAGES_ARTIFACT_NAME: "images_$CI_JOB_NAME"
    IMAGES_ARTIFACT_SPLIT: "images_split_$CI_JOB_NAME"
  script:
    - set -euxo pipefail
    - *print-common-info
@@ -417,10 +419,29 @@ stages:
    - python3 -m pytest --tb=no $TEST_SUITE -v --create_cut --html=report.html --self-contained-html --junit-xml=report-junit.xml $comp_args -n auto --testcase_timeout $testcase_timeout --ref_encoder_path $REF_ENCODER_PATH --ref_decoder_path $REF_DECODER_PATH --dut_encoder_path $DUT_ENCODER_PATH --dut_decoder_path $DUT_DECODER_PATH || exit_code=$?
    - zero_errors=$(cat report-junit.xml | grep -c 'errors="0"') || true

    ### create histograms
    - python3 scripts/parse_xml_report.py report-junit.xml $CSV_ARTIFACT_NAME $REPORT_ARG
    # if split comparison is done, we need to create two pages, one for the "whole file" values and one for the "split" values
    - if [ "$SPLIT_COMPARISON" = "true" ]; then
    # use -v flag ("inverse") to also have the header in the output file
    -   grep -v "_whole" $CSV_ARTIFACT_NAME > $CSV_ARTIFACT_SPLIT
    -   grep -v "_split" $CSV_ARTIFACT_NAME > $CSV_ARTIFACT_NAME
    -   mkdir $IMAGES_ARTIFACT_SPLIT
    -   for MEASURE in $summary_args;do
    -     python3 scripts/create_histogram_summary.py $CSV_ARTIFACT_SPLIT $IMAGES_ARTIFACT_SPLIT/summary_"$MEASURE".csv $IMAGES_ARTIFACT_SPLIT/summary_"$MEASURE".png --measure $MEASURE
    -   done
    -   python3 ci/basop-pages/create_summary_page.py $SUMMARY_HTML_ARTIFACT_NAME $CI_JOB_ID $CI_JOB_NAME $IMAGES_ARTIFACT_SPLIT --measures $summary_args
    - else
    # touch files to suppress warning for missing artifacts
    -   touch $CSV_ARTIFACT_SPLIT $IMAGES_ARTIFACT_SPLIT
    - fi

    # this part creates the "whole file" histograms
    - mkdir $IMAGES_ARTIFACT_NAME
    - for MEASURE in $summary_args;do python3 scripts/create_histogram_summary.py $CSV_ARTIFACT_NAME $IMAGES_ARTIFACT_NAME/summary_"$MEASURE".csv $IMAGES_ARTIFACT_NAME/summary_"$MEASURE".png --measure $MEASURE; done
    - python3 ci/basop-pages/create_summary_page.py $SUMMARY_HTML_ARTIFACT_NAME $CI_JOB_ID $CI_JOB_NAME --measures $summary_args
    - for MEASURE in $summary_args;do
    -   python3 scripts/create_histogram_summary.py $CSV_ARTIFACT_NAME $IMAGES_ARTIFACT_NAME/summary_"$MEASURE".csv $IMAGES_ARTIFACT_NAME/summary_"$MEASURE".png --measure $MEASURE;
    - done
    - python3 ci/basop-pages/create_summary_page.py $SUMMARY_HTML_ARTIFACT_NAME $CI_JOB_ID $CI_JOB_NAME $IMAGES_ARTIFACT_NAME --measures $summary_args

    - if [ $USE_LTV -eq 1 ] && [ "$CI_COMMIT_BRANCH" == "$CI_DEFAULT_BRANCH" ]; then
    -    id_previous=$(python3 ci/get_id_of_last_job_occurence.py $CI_DEFAULT_BRANCH $CI_JOB_NAME $CI_PROJECT_ID)
@@ -460,9 +481,11 @@ stages:
      - report.html
      - $PAGES_HTML_ARTIFACT_NAME
      - $CSV_ARTIFACT_NAME
      - $CSV_ARTIFACT_SPLIT
      - $MERGED_CSV_ARTIFACT_NAME
      - $SUMMARY_HTML_ARTIFACT_NAME
      - $IMAGES_ARTIFACT_NAME
      - $IMAGES_ARTIFACT_SPLIT
    expose_as: "pytest compare results"
    reports:
      junit: