Loading .gitlab-ci.yml +61 −12 Original line number Diff line number Diff line Loading @@ -698,34 +698,83 @@ ivas-pytest-renderer: <<: *ivas-pytest-anchor ### Complexity measurement jobs # --------------------------------------------------------------- # Complexity measurement jobs # --------------------------------------------------------------- .complexity-measurements-setup: &complexity-measurements-setup # create necessary environment - mkdir -p wmops/logs # NOTE: test job for now complexity-stereo-dec: - job_id=$(python3 ci/get_id_of_last_job_occurence.py $CI_COMMIT_REF_NAME $CI_JOB_NAME $CI_PROJECT_ID) - echo $job_id - curl --request GET "https://forge.3gpp.org/rep/api/v4/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts.zip - unzip artifacts.zip || true # this may fail on first run, when there are no artifacts there and the zip file is actually just "404"-html - ls - public_dir="$CI_JOB_NAME-public" # if is needed to catch case when no artifact is there (first run), similarly as above - if [[ -d $public_dir ]]; then mv $public_dir/* wmops/; fi - ls wmops - rm artifacts.zip - rm -rf $public_dir .complexity-measurements-prepare-artifacts: &complexity-measurements-prepare-artifacts # prepare artifacts -> move to public directory - public_dir="$CI_JOB_NAME-public" - mkdir $public_dir - mv -f wmops/log_*_all.txt wmops/*.js ${public_dir}/ # move logfiles for links - mkdir $public_dir/logs # first move logs - log_files=$(cat $public_dir/graphs*.js | grep logFile | sed "s/.*\(wmops_newsletter_.*\.csv\).*/\1/g") - echo $log_files - ls wmops/logs - for f in $log_files; do [ -f wmops/logs/$f ] && mv wmops/logs/$f $public_dir/logs/$f; done # copy index page blueprint - cp ci/complexity_measurements/index_complexity.html ${public_dir}/index.html # patch the format in the title - sed -i "s/IVAS FORMAT/IVAS $in_format to $out_format/g" ${public_dir}/index.html # do separately here to avoid overwrite complaints by mv - mv -f ci/complexity_measurements/style.css ${public_dir}/ - ls $public_dir .complexity-template: extends: - .test-job-linux timeout: 3 hours 30 minutes stage: test artifacts: name: "$CI_JOB_NAME--$CI_COMMIT_REF_NAME--sha-$CI_COMMIT_SHA" when: always expire_in: 1 week paths: - $CI_JOB_NAME-public complexity-stereo-in-stereo-out: extends: - .complexity-template rules: - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == "complexity" - if: $MEASURE_COMPLEXITY_LINUX variables: MAKE_OPTIONS: "WMOPS=1" COMPLEXITY_TABLES_BASENAME: "complexity_stereo" CHECK: "COMPLEXITY" script: - *print-common-info - *update-scripts-repo - *update-ltv-repo - *setup-codec - *complexity-measurements-setup # hack to not have script build the binaries - mkdir $CHECK - cp IVAS_cod_ref $CHECK/IVAS_cod - cp IVAS_dec $CHECK/IVAS_dec - python3 scripts/IvasBuildAndRunChecks.py -p scripts/config/ci_linux_ltv.json -m stereo_b48_fb_cbr --oc stereo --create_complexity_tables $COMPLEXITY_TABLES_BASENAME --checks $CHECK - ls artifacts: when: always paths: - "${COMPLEXITY_TABLES_BASENAME}*" - in_format=stereo - out_format=stereo - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val # job that sets up gitlab pages website Loading Loading
.gitlab-ci.yml +61 −12 Original line number Diff line number Diff line Loading @@ -698,34 +698,83 @@ ivas-pytest-renderer: <<: *ivas-pytest-anchor ### Complexity measurement jobs # --------------------------------------------------------------- # Complexity measurement jobs # --------------------------------------------------------------- .complexity-measurements-setup: &complexity-measurements-setup # create necessary environment - mkdir -p wmops/logs # NOTE: test job for now complexity-stereo-dec: - job_id=$(python3 ci/get_id_of_last_job_occurence.py $CI_COMMIT_REF_NAME $CI_JOB_NAME $CI_PROJECT_ID) - echo $job_id - curl --request GET "https://forge.3gpp.org/rep/api/v4/projects/$CI_PROJECT_ID/jobs/$job_id/artifacts" --output artifacts.zip - unzip artifacts.zip || true # this may fail on first run, when there are no artifacts there and the zip file is actually just "404"-html - ls - public_dir="$CI_JOB_NAME-public" # if is needed to catch case when no artifact is there (first run), similarly as above - if [[ -d $public_dir ]]; then mv $public_dir/* wmops/; fi - ls wmops - rm artifacts.zip - rm -rf $public_dir .complexity-measurements-prepare-artifacts: &complexity-measurements-prepare-artifacts # prepare artifacts -> move to public directory - public_dir="$CI_JOB_NAME-public" - mkdir $public_dir - mv -f wmops/log_*_all.txt wmops/*.js ${public_dir}/ # move logfiles for links - mkdir $public_dir/logs # first move logs - log_files=$(cat $public_dir/graphs*.js | grep logFile | sed "s/.*\(wmops_newsletter_.*\.csv\).*/\1/g") - echo $log_files - ls wmops/logs - for f in $log_files; do [ -f wmops/logs/$f ] && mv wmops/logs/$f $public_dir/logs/$f; done # copy index page blueprint - cp ci/complexity_measurements/index_complexity.html ${public_dir}/index.html # patch the format in the title - sed -i "s/IVAS FORMAT/IVAS $in_format to $out_format/g" ${public_dir}/index.html # do separately here to avoid overwrite complaints by mv - mv -f ci/complexity_measurements/style.css ${public_dir}/ - ls $public_dir .complexity-template: extends: - .test-job-linux timeout: 3 hours 30 minutes stage: test artifacts: name: "$CI_JOB_NAME--$CI_COMMIT_REF_NAME--sha-$CI_COMMIT_SHA" when: always expire_in: 1 week paths: - $CI_JOB_NAME-public complexity-stereo-in-stereo-out: extends: - .complexity-template rules: - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == "complexity" - if: $MEASURE_COMPLEXITY_LINUX variables: MAKE_OPTIONS: "WMOPS=1" COMPLEXITY_TABLES_BASENAME: "complexity_stereo" CHECK: "COMPLEXITY" script: - *print-common-info - *update-scripts-repo - *update-ltv-repo - *setup-codec - *complexity-measurements-setup # hack to not have script build the binaries - mkdir $CHECK - cp IVAS_cod_ref $CHECK/IVAS_cod - cp IVAS_dec $CHECK/IVAS_dec - python3 scripts/IvasBuildAndRunChecks.py -p scripts/config/ci_linux_ltv.json -m stereo_b48_fb_cbr --oc stereo --create_complexity_tables $COMPLEXITY_TABLES_BASENAME --checks $CHECK - ls artifacts: when: always paths: - "${COMPLEXITY_TABLES_BASENAME}*" - in_format=stereo - out_format=stereo - ret_val=0 - bash ci/complexity_measurements/getWmops.sh "$in_format" "$out_format" || ret_val=$? - *complexity-measurements-prepare-artifacts - exit $ret_val # job that sets up gitlab pages website Loading