Commit 9e5cddf8 authored by Jan Kiene's avatar Jan Kiene
Browse files

Merge branch 'ci-revision-and-upgrades-for-platform-upgrade' into 'main'

Ci revision and upgrades after platform upgrade

See merge request !84
parents 0d9e6ba1 8e939398
Loading
Loading
Loading
Loading
+26 −8
Original line number Diff line number Diff line
@@ -3,7 +3,25 @@
# ---------------------------------------------------------------

# ensure that codec builds on linux
build-codec-linux-make:
build-codec-linux-clang-make:
  rules:
    - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $UPDATE_PAGES || $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX
      when: never
    - if: $CI_PIPELINE_SOURCE == 'web'
    - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
    - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
    - if: $CI_PIPELINE_SOURCE == 'schedule'
    - if: $CI_PIPELINE_SOURCE == 'push'
      when: never
  extends:
    - .build-job-linux
  timeout: "10 minutes"
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/activate-Werror-linux.sh
    - make -j CLANG=0

build-codec-linux-gcc-make:
  rules:
    - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $UPDATE_PAGES || $MANUAL_PIPELINE_TYPE == 'complexity' || $MEASURE_COMPLEXITY_LINUX
      when: never
@@ -22,7 +40,7 @@ build-codec-linux-make:
    - make -j

# ensure that codec builds on linux with cmake
build-codec-linux-cmake:
build-codec-linux-clang-cmake:
  rules:
    - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux' || $UPDATE_PAGES
      when: never
@@ -40,11 +58,11 @@ build-codec-linux-cmake:
        bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/basop/update-scripts-repo.sh
      fi
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/activate-Werror-linux.sh
    - cmake -B cmake-build -G "Unix Makefiles"
    - cmake -B cmake-build -G "Unix Makefiles" -DCLANG=0
    - cmake --build cmake-build -- -j

# ensure that codec builds on linux with instrumentation active
build-codec-linux-instrumented-make:
build-codec-linux-instrumented-clang-make:
  rules:
    - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $UPDATE_PAGES
      when: never
@@ -66,10 +84,10 @@ build-codec-linux-instrumented-make:
        INSTRUMENTATION_ARGS="-m MEM_ONLY"
      fi
    - bash scripts/prepare_instrumentation.sh $INSTRUMENTATION_ARGS
    - make -j -C $INSTR_DIR
    - make -j -C $INSTR_DIR CLANG=0

# make sure that the codec builds with msan, asan and usan
build-codec-sanitizers-linux:
build-codec-sanitizers-clang-linux:
  rules:
    - if: $MANUAL_PIPELINE_TYPE == 'long-term-logs' || $MANUAL_PIPELINE_TYPE == 'backup-long-term-logs' || $UPDATE_PAGES
      when: never
@@ -92,7 +110,7 @@ build-codec-sanitizers-linux:

# ensure the codec builds with DEBUGGING activated
# warnings are not treated as errors here
build-codec-linux-debugging-make:
build-codec-linux-debugging-clang-make:
  extends:
    - .build-job-linux
  rules:
@@ -106,7 +124,7 @@ build-codec-linux-debugging-make:
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/enable-debugging-macro.sh
    - make -j
    - make -j CLANG=0

build-codec-windows-msbuild:
  rules:
+1 −1
Original line number Diff line number Diff line
@@ -4,7 +4,7 @@ check-first-frame-is-sid:
    - .test-job-linux-needs-testv-dir
    - .rules-merge-request-to-main
  stage: test
  needs: ["build-codec-linux-cmake"]
  needs: ["build-codec-linux-clang-cmake"]
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
    - |
+29 −30
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@ include:
  - local: includes/smoke-test.yml
  - local: includes/build-jobs.yml
  - local: includes/rules.yml
  - local: includes/check-first-frame-is-sid.yml
  # - local: includes/check-first-frame-is-sid.yml

default:
  # by default, we want all jobs to be interruptible, and we need to configure this explicitly
@@ -293,7 +293,7 @@ workflow:
  needs:
    - job: branch-is-up-to-date-with-target-pre
      artifacts: true
    - job: build-codec-linux-make
    - job: build-codec-linux-clang-make

# template for test jobs on linux that need the TESTV_DIR
.test-job-linux-needs-testv-dir:
@@ -306,7 +306,7 @@ workflow:
# This anchor is the basis for manual and scheduled tests comparing to float ref (ivas-codec main branch)
.compare-to-ref-anchor: &compare-to-ref-anchor
  stage: test
  needs: ["build-codec-linux-make", "pytest-to-ref-pre"]
  needs: ["build-codec-linux-clang-make", "pytest-to-ref-pre"]
  timeout: "18 hours"
  variables:
    # keep "mld" in artifact name for backwards compatibility reasons
@@ -715,7 +715,7 @@ workflow:

.ivas-pytest-compare-to-input-anchor: &ivas-pytest-compare-to-input-anchor
  stage: test
  needs: ["build-codec-linux-make", "pytest-to-ref-pre"]
  needs: ["build-codec-linux-clang-make", "pytest-to-ref-pre"]
  timeout: "360 minutes"
  variables:
    SUMMARY_HTML_ARTIFACT_NAME: "summary_$CI_JOB_NAME.html"
@@ -1308,8 +1308,8 @@ split-rendering-pytest-on-merge-request:
  stage: test
  needs:
    [
      "build-codec-linux-cmake",
      "build-codec-linux-make",
      "build-codec-linux-clang-cmake",
      "build-codec-linux-clang-make",
    ]
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/basop/update-scripts-repo.sh
@@ -1322,7 +1322,7 @@ split-rendering-pytest-on-merge-request:
    - .test-job-linux
    - .rules-merge-request
  stage: test
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  timeout: "5 minutes"
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -1399,14 +1399,14 @@ split-rendering-smoke-test:
  extends:
    - .test-job-linux
    - .rules-merge-request
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  stage: test
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh

    - make -j
    - testcase_timeout=10
    - python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml tests/split_rendering/test_split_rendering.py --testcase_timeout=$testcase_timeout
    - python3 -m pytest -q -n auto -rA --tb=no --junit-xml=report-junit.xml tests/split_rendering/test_split_rendering.py --testcase_timeout=$testcase_timeout --html=report.html --self-contained-html
  artifacts:
    name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results"
    expire_in: 1 week
@@ -1417,13 +1417,14 @@ split-rendering-smoke-test:
    reports:
      junit:
        - report-junit.xml
        - report.html

# test rtpdump
rtpdump-test:
  extends:
    - .test-job-linux
    - .rules-merge-request
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  stage: test
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -1448,7 +1449,7 @@ lc3-wrapper-unit-test:
  extends:
    - .test-job-linux
    - .rules-merge-request
  needs: ["build-codec-linux-cmake"]
  needs: ["build-codec-linux-clang-cmake"]
  stage: test
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -1466,7 +1467,7 @@ renderer-smoke-test:
  extends:
    - .test-job-linux
    - .rules-merge-request-to-main
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  stage: test
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -1486,12 +1487,11 @@ renderer-smoke-test:
        - report-junit.xml

# from float
# test renderer executable with cmake + asan
# TODO: turn into scheduled job
.renderer-asan:
renderer-asan:
  extends:
    - .test-job-linux
  needs: ["build-codec-linux-cmake"]
  needs: ["build-codec-linux-clang-cmake"]
  stage: test
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -1499,7 +1499,7 @@ renderer-smoke-test:
    - cmake -B cmake-build -G "Unix Makefiles" -DCLANG=asan -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true
    - cmake --build cmake-build -- -j
    - testcase_timeout=180
    - python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml tests/renderer_short/test_renderer.py --testcase_timeout=$testcase_timeout
    - python3 -m pytest -q -n auto --tb=no --junit-xml=report-junit.xml tests/renderer_short/test_renderer.py --testcase_timeout=$testcase_timeout

  artifacts:
    name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results"
@@ -1513,12 +1513,11 @@ renderer-smoke-test:
        - report-junit.xml

# from float
# test renderer executable with cmake + msan
# TODO: turn into scheduled job
.renderer-msan:
renderer-msan:
  extends:
    - .test-job-linux
  needs: ["build-codec-linux-cmake"]
  needs: ["build-codec-linux-clang-cmake"]
  stage: test
  tags: 
    - ivas-linux
@@ -1528,7 +1527,7 @@ renderer-smoke-test:
    - cmake -B cmake-build -G "Unix Makefiles" -DCLANG=msan -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true
    - cmake --build cmake-build -- -j
    - testcase_timeout=180
    - python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml tests/renderer_short/test_renderer.py --testcase_timeout=$testcase_timeout
    - python3 -m pytest -q -n auto --tb=no --junit-xml=report-junit.xml tests/renderer_short/test_renderer.py --testcase_timeout=$testcase_timeout

  artifacts:
    name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results"
@@ -1542,22 +1541,22 @@ renderer-smoke-test:
        - report-junit.xml

# from float
# test renderer executable with cmake + usan
# TODO: turn into scheduled job
# NOTE: disabled for now until existing bug is fixed
.renderer-usan:
  extends:
    - .test-job-linux
  needs: ["build-codec-linux-cmake"]
  needs: ["build-codec-linux-clang-cmake"]
  stage: test
  tags: 
    - ivas-linux
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/basop/update-scripts-repo.sh
    - cmake -B cmake-build -G "Unix Makefiles" -DCLANG=usan -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true
    - cmake --build cmake-build -- -j
    - python3 scripts/basop_create_ignorelist_for_ubsan.py
    - make -j CLANG=3 IGNORELIST=1
    - testcase_timeout=180
    - UBSAN_OPTIONS=suppressions=scripts/ubsan.supp,report_error_type=1,print_stacktrace=1,log_path=usan_log_catchall python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml tests/renderer_short/test_renderer.py --testcase_timeout=$testcase_timeout
    - UBSAN_OPTIONS=suppressions=scripts/ubsan.supp,report_error_type=1,print_stacktrace=1,log_path=usan_log_catchall python3 -m pytest -q -n auto --tb=no --junit-xml=report-junit.xml tests/renderer_short/test_renderer.py --testcase_timeout=$testcase_timeout
    - grep_exit_code=0
    - touch usan_log_empty # Creates an empty file, this is to avoid "grep: usan_log_*: No such file or directory" in case no USAN failures are reported from pytest
    - grep UndefinedBehaviorSanitizer usan_log_* || grep_exit_code=$?
@@ -1576,7 +1575,7 @@ renderer-smoke-test:

.sanitizer-selftest-on-mr:
  stage: test
  needs: ["build-codec-sanitizers-linux"]
  needs: ["build-codec-sanitizers-clang-linux"]
  extends:
    - .rules-merge-request
    - .test-job-linux
@@ -2017,7 +2016,7 @@ ivas-pytest-compare_ref-long-fx-fx-lev+10:
  extends:
    - .job-linux
  stage: test
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  timeout: "6 hours"
  parallel:
    matrix:
@@ -2344,7 +2343,7 @@ be-2-evs-26444:
  tags:
    - be-2-evs-basop
  stage: test
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  timeout: "30 minutes"
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -2407,7 +2406,7 @@ voip-be-on-merge-request:
    - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == "voip-be-test"
    # - if: $CI_PIPELINE_SOURCE == 'merge_request_event' && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "main" # only have MR pipelines for MRs to main
  stage: test
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  timeout: "10 minutes"
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -2426,7 +2425,7 @@ check-be-between-renderer-framesizes:
  rules:
    - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == "renderer-framesize-be"
  stage: test
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  script:
    - echo "$SHORT_TEST_SUITE"
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/basop/build-binaries.sh float-ref
+33 −41
Original line number Diff line number Diff line
@@ -160,17 +160,6 @@ workflow:
  - if [ $exit_code -ne 0 ] && [ $non_be_flag != 0 ]; then echo "Non-bitexact cases with non-BE tag encountered"; exit $EXIT_CODE_NON_BE; fi
  - exit 0

.update-ltv-repo-win: &update-ltv-repo-win
  - Push-Location
  - cd $LTV_DIR_WIN
  - git pull
  - Pop-Location

.copy-ltv-files-to-testv-dir-win: &copy-ltv-files-to-testv-dir-win
  - cp $LTV_DIR_WIN\*.wav scripts\testv
  - cp $LTV_DIR_WIN\*.met scripts\testv
  - cp $LTV_DIR_WIN\*.csv scripts\testv

# to be reused in MR and LTV-scheduled sanitizer test jobs
# set CLANG_NUM, SELFTEST_SANITY_TIMEOUT and SELF_TEST_PRM_FILE in before_script section
.sanitizer-selftest-template:
@@ -386,10 +375,10 @@ codec-smoke-test-float:
  stage: test
  needs:
    [
      "build-codec-linux-cmake",
      "build-codec-linux-make",
      "build-codec-linux-instrumented-make",
      "build-codec-sanitizers-linux",
      "build-codec-linux-clang-cmake",
      "build-codec-linux-clang-make",
      "build-codec-linux-instrumented-clang-make",
      "build-codec-sanitizers-clang-linux",
    ]
  script:
    - bash ci/smoke_test.sh
@@ -472,10 +461,10 @@ pytest-compare-20ms-and-5ms-rendering:
  stage: test
  needs:
    [
      "build-codec-linux-cmake",
      "build-codec-linux-make",
      "build-codec-linux-instrumented-make",
      "build-codec-sanitizers-linux",
      "build-codec-linux-clang-cmake",
      "build-codec-linux-clang-make",
      "build-codec-linux-instrumented-clang-make",
      "build-codec-sanitizers-clang-linux",
    ]
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -522,18 +511,19 @@ renderer-smoke-test:
  extends:
    - .test-job-linux
    - .rules-merge-request-to-main
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  stage: test
  script:
    - make -j IVAS_rend
    - testcase_timeout=60
    - python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml tests/renderer/test_renderer.py --testcase_timeout=$testcase_timeout
    - python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml --html=report.html tests/renderer/test_renderer.py --testcase_timeout=$testcase_timeout
  artifacts:
    name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results"
    expire_in: 1 week
    when: always
    paths:
      - report-junit.xml
      - report.html
    expose_as: "renderer make pytest results"
    reports:
      junit:
@@ -543,7 +533,7 @@ renderer-smoke-test:
  extends:
    - .test-job-linux
    - .rules-merge-request-to-main
  needs: ["build-codec-linux-cmake"]
  needs: ["build-codec-linux-clang-cmake"]
  stage: test
  timeout: "90 minutes"
  artifacts:
@@ -571,7 +561,7 @@ renderer-asan:
  variables:
    SANITIZER_BUILD_STRING: "asan"
  script:
    - python3 -m pytest -q --tb=no -n auto --html=report.html --self-contained-html --junit-xml=report-junit.xml tests/renderer/test_renderer.py tests/split_rendering/test_split_rendering.py --testcase_timeout=$testcase_timeout
    - python3 -m pytest -q --tb=no -n auto --log-level=INFO --html=report.html --self-contained-html --junit-xml=report-junit.xml tests/renderer/test_renderer.py tests/split_rendering/test_split_rendering.py --testcase_timeout=$testcase_timeout
  artifacts:
    expose_as: "renderer asan result"

@@ -582,7 +572,7 @@ renderer-msan:
  variables:
    SANITIZER_BUILD_STRING: "msan"
  script:
    - python3 -m pytest -q --tb=no -n auto --html=report.html --self-contained-html --junit-xml=report-junit.xml tests/renderer/test_renderer.py tests/split_rendering/test_split_rendering.py --testcase_timeout=$testcase_timeout
    - python3 -m pytest -q --tb=no -n auto --log-level=INFO --html=report.html --self-contained-html --junit-xml=report-junit.xml tests/renderer/test_renderer.py tests/split_rendering/test_split_rendering.py --testcase_timeout=$testcase_timeout
  artifacts:
    expose_as: "renderer msan result"

@@ -593,7 +583,7 @@ renderer-usan:
  variables:
    SANITIZER_BUILD_STRING: "usan"
  script:
    - UBSAN_OPTIONS=suppressions=scripts/ubsan.supp,report_error_type=1,print_stacktrace=1 python3 -m pytest -q --tb=no -n auto --html=report.html --self-contained-html --junit-xml=report-junit.xml tests/renderer/test_renderer.py tests/split_rendering/test_split_rendering.py --testcase_timeout=$testcase_timeout
    - UBSAN_OPTIONS=suppressions=scripts/ubsan.supp,report_error_type=1,print_stacktrace=1 python3 -m pytest -q --tb=no -n auto --log-level=INFO --html=report.html --self-contained-html --junit-xml=report-junit.xml tests/renderer/test_renderer.py tests/split_rendering/test_split_rendering.py --testcase_timeout=$testcase_timeout
  artifacts:
    expose_as: "renderer usan result"

@@ -602,7 +592,7 @@ renderer-pytest-on-merge-request:
  extends:
    - .test-job-linux-needs-testv-dir
    - .rules-merge-request-to-main
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  timeout: "25 minutes"
  stage: compare
  script:
@@ -652,18 +642,19 @@ split-rendering-smoke-test:
  extends:
    - .test-job-linux
    - .rules-merge-request-to-main
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  stage: test
  script:
    - make -j
    - testcase_timeout=10
    - python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml tests/split_rendering/test_split_rendering.py --testcase_timeout=$testcase_timeout
    - python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml --html=report.html tests/split_rendering/test_split_rendering.py --testcase_timeout=$testcase_timeout
  artifacts:
    name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results"
    expire_in: 1 week
    when: always
    paths:
      - report-junit.xml
      - report.html
    expose_as: "split rendering make pytest results"
    reports:
      junit:
@@ -674,18 +665,19 @@ split-rendering-voip-be-to-binaural:
  extends:
    - .test-job-linux
    - .rules-merge-request-to-main
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  stage: test
  script:
    - make -j
    - testcase_timeout=30
    - python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml tests/split_rendering/test_voip_be_splitrend_vs_binaural.py --testcase_timeout=$testcase_timeout
    - python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml --html=report.html tests/split_rendering/test_voip_be_splitrend_vs_binaural.py --testcase_timeout=$testcase_timeout
  artifacts:
    name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results"
    expire_in: 1 week
    when: always
    paths:
      - report-junit.xml
      - report.html
    expose_as: "VoIP split rendering vs BINAURAL make pytest results"
    reports:
      junit:
@@ -696,7 +688,7 @@ rtpdump-test:
  extends:
    - .test-job-linux
    - .rules-merge-request-to-main
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  stage: test
  script:
    - make -j
@@ -718,7 +710,7 @@ lc3-wrapper-unit-test:
  extends:
    - .test-job-linux
    - .rules-merge-request-to-main
  needs: ["build-codec-linux-cmake"]
  needs: ["build-codec-linux-clang-cmake"]
  stage: test
  script:
    - cmake -B cmake-build -G "Unix Makefiles" -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true
@@ -730,7 +722,7 @@ split-rendering-pytest-on-merge-request:
  extends:
    - .test-job-linux-needs-testv-dir
    - .rules-merge-request-to-main
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  # TODO: set reasonable timeout, will most likely take less
  timeout: "30 minutes"
  stage: compare
@@ -804,7 +796,7 @@ ivas-pytest-on-merge-request:
    - .test-job-linux-needs-testv-dir
    - .rules-merge-request-to-main
  stage: compare
  needs: ["build-codec-linux-cmake", "codec-smoke-test-float"]
  needs: ["build-codec-linux-clang-cmake", "codec-smoke-test-float"]
  timeout: "14 minutes"
  parallel:
    matrix:
@@ -863,7 +855,7 @@ ivas-interop-on-merge-request:
    - .test-job-linux-needs-testv-dir
    - .rules-merge-request-to-main
  stage: test
  needs: ["build-codec-linux-cmake"]
  needs: ["build-codec-linux-clang-cmake"]
  timeout: "10 minutes"
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -912,7 +904,7 @@ evs-pytest-on-merge-request:
    - .test-job-linux
    - .rules-merge-request-to-main
  stage: compare
  needs: ["build-codec-linux-cmake", "codec-smoke-test-float"]
  needs: ["build-codec-linux-clang-cmake", "codec-smoke-test-float"]
  timeout: "10 minutes"
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -964,7 +956,7 @@ voip-be-on-merge-request:
    - .test-job-linux-needs-testv-dir
    - .rules-merge-request-to-main
  stage: test
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-clang-make"]
  timeout: "10 minutes"
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -1038,7 +1030,7 @@ check-bitexactness-hrtf-rom-and-file:
    - .test-job-linux
    - .rules-merge-request-to-main
  stage: test
  needs: ["build-codec-linux-cmake"]
  needs: ["build-codec-linux-clang-cmake"]
  timeout: "5 minutes"
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -1060,7 +1052,7 @@ check-bitexactness-ext-and-transport-format:
    - .test-job-linux
    - .rules-merge-request-to-main
  stage: test
  needs: ["build-codec-linux-cmake"]
  needs: ["build-codec-linux-clang-cmake"]
  timeout: "5 minutes"
  script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -1115,7 +1107,7 @@ be-2-evs-windows:
#   tags:
#     - be-2-evs-temp
#   stage: test
#   needs: ["build-codec-linux-cmake"]
#   needs: ["build-codec-linux-clang-cmake"]
#   timeout: "20 minutes" # To be revisited
#   script:
#     - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
@@ -1140,7 +1132,7 @@ be-2-evs-windows:
#     - .test-job-linux-needs-testv-dir
#     - .rules-main-push
#   stage: compare
#   needs: ["build-codec-linux-cmake"]
#   needs: ["build-codec-linux-clang-cmake"]
#   timeout: "30 minutes" # To be revisited
#   script:
#     - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh