Commit 044fa947 authored by norvell's avatar norvell
Browse files

Merge branch 'ci/run-mr-pipeline-with-fixed-commit' into 'main-pc'

[CI] Keep same commit in pipelines

See merge request !1929
parents 8d773682 e630d606
Loading
Loading
Loading
Loading
Loading
+104 −167
Original line number Diff line number Diff line
@@ -20,16 +20,26 @@ variables:
  # They can be overwritten in the job templates to e.g. only test encoder or decoder in the chain
  DUT_ENCODER_PATH: "./IVAS_cod"
  DUT_DECODER_PATH: "./IVAS_dec"
  DUT_RENDERER_PATH: "./IVAS_rend"
  DUT_POST_RENDERER_PATH: "./ISAR_post_rend"
  REF_ENCODER_PATH: "./IVAS_cod_ref"
  REF_DECODER_PATH: "./IVAS_dec_ref"
  REF_RENDERER_PATH: "./IVAS_rend_ref"
  REF_POST_RENDERER_PATH: "./ISAR_post_rend_ref"
  MERGE_TARGET_ENCODER_PATH: "./IVAS_cod_merge_target"
  MERGE_TARGET_DECODER_PATH: "./IVAS_dec_merge_target"
  MERGE_TARGET_RENDERER_PATH: "./IVAS_rend_merge_target"
  MERGE_TARGET_POST_RENDERER_PATH: "./ISAR_post_rend_merge_target"
  # These path variables are used for building the binaries
  # They should never be overwritten!
  REF_ENCODER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_cod_ref"
  REF_DECODER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_dec_ref"
  REF_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_rend_ref"
  REF_POST_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./ISAR_post_rend_ref"
  MERGE_TARGET_ENCODER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_cod_merge_target"
  MERGE_TARGET_DECODER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_dec_merge_target"
  MERGE_TARGET_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_rend_merge_target"
  MERGE_TARGET_POST_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./ISAR_post_rend_merge_target"
  LEVEL_SCALING: "1.0"
  IVAS_PIPELINE_NAME: ''
  BASOP_CI_BRANCH_PC_REPO: "basop-ci-branch-pc"
@@ -160,6 +170,34 @@ stages:
    echo "Commit time was $CI_COMMIT_TIMESTAMP"
    ("echo 'System time is'", "Get-Date -Format 'dddd dd/MM/yyyy HH:mm K'") | Invoke-Expression

.activate-debug-mode-info-if-set: &activate-debug-mode-info-if-set
  - if [ "$BUILD_WITH_DEBUG_MODE_INFO" = "true" ]; then
  -   sed -i.bak -e "s/\/\*\ *\(#define\ *DEBUGGING\ *\)\*\//\1/g" lib_com/options.h
  -   sed -i.bak -e "s/\/\*\ *\(#define\ *DEBUG_MODE_INFO\ *\)\*\//\1/g" lib_com/options.h
  - fi

.build-merge-target-binaries: &build-merge-target-binaries
  - current_commit_sha=$(git rev-parse HEAD)
  ### build merge target binaries
  - if [ -f $MERGE_TARGET_COMMIT_FILE ]; then
  -   MERGE_REQUEST_TARGET="$(cat "$MERGE_TARGET_COMMIT_FILE")"
  - else
  -   echo "MERGE_TARGET_COMMIT_FILE ($MERGE_TARGET_COMMIT_FILE) does not exist, exiting!"
  -   exit 1
  - fi
  - git checkout $MERGE_REQUEST_TARGET
  - *activate-debug-mode-info-if-set
  - make clean
  - make -j >> /dev/null
  - mv ./IVAS_cod ./$MERGE_TARGET_ENCODER_PATH_FOR_BUILD_DO_NOT_MODIFY
  - mv ./IVAS_dec ./$MERGE_TARGET_DECODER_PATH_FOR_BUILD_DO_NOT_MODIFY
  - mv ./IVAS_rend ./$MERGE_TARGET_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY
  - mv ./ISAR_post_rend ./$MERGE_TARGET_POST_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY
  ### Return to current branch
  - git restore .
  - git rev-parse HEAD > $MERGE_TARGET_COMMIT_FILE
  - git checkout $current_commit_sha

# From float CI
.mr-fetch-target-branch: &mr-fetch-target-branch
  # first delete local target branch to avoid conflicts when branch is cached and there are merge conflicts during fetching
@@ -174,35 +212,16 @@ stages:

# From float CI
.merge-request-comparison-setup-codec: &merge-request-comparison-setup-codec
  ### build test binaries, initial clean for paranoia reasons
  - make clean
  - make -j
  - mv IVAS_cod IVAS_cod_test
  - mv IVAS_dec IVAS_dec_test
  - mv IVAS_rend IVAS_rend_test
  - git restore .

  ### store the current commit hash
  - source_branch_commit_sha=$(git rev-parse HEAD)
  - *build-merge-target-binaries

  ### checkout version to compare against
  - *mr-fetch-target-branch
  - *mr-get-target-commit
  - git checkout $target_commit
  - echo "Building reference codec at commit $target_commit"
  # need to rename to match the conventions for the renderer tests...
  - mv $MERGE_TARGET_ENCODER_PATH $REF_ENCODER_PATH
  - mv $MERGE_TARGET_DECODER_PATH $REF_DECODER_PATH
  - mv $MERGE_TARGET_RENDERER_PATH $REF_RENDERER_PATH
  - mv $MERGE_TARGET_POST_RENDERER_PATH $REF_POST_RENDERER_PATH

  ### build reference binaries
  - make clean
  - make -j
  - mv IVAS_cod IVAS_cod_ref
  - mv IVAS_dec IVAS_dec_ref
  - mv IVAS_rend IVAS_rend_ref
  - git restore .

  # rename test binaries back
  - mv IVAS_cod_test IVAS_cod
  - mv IVAS_dec_test IVAS_dec
  - mv IVAS_rend_test IVAS_rend

.merge-request-comparison-check: &merge-request-comparison-check
  - echo "--------------- Running merge-request-comparison-check anchor ---------------"
@@ -211,13 +230,6 @@ stages:
  - 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


.activate-debug-mode-info-if-set: &activate-debug-mode-info-if-set
  - if [ "$BUILD_WITH_DEBUG_MODE_INFO" = "true" ]; then
  -   sed -i.bak -e "s/\/\*\ *\(#define\ *DEBUGGING\ *\)\*\//\1/g" lib_com/options.h
  -   sed -i.bak -e "s/\/\*\ *\(#define\ *DEBUG_MODE_INFO\ *\)\*\//\1/g" lib_com/options.h
  - fi

.build-float-ref-binaries: &build-float-ref-binaries
  - git rev-parse HEAD > $CUT_COMMIT_FILE
  - current_commit_sha=$(git rev-parse HEAD)
@@ -229,28 +241,13 @@ stages:
  - make -j >> /dev/null
  - mv ./IVAS_cod ./$REF_ENCODER_PATH_FOR_BUILD_DO_NOT_MODIFY
  - mv ./IVAS_dec ./$REF_DECODER_PATH_FOR_BUILD_DO_NOT_MODIFY
  - mv ./IVAS_rend ./IVAS_rend_ref
  - mv ./IVAS_rend ./$REF_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY
  - mv ./ISAR_post_rend ./$REF_POST_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY
  ### Return to current branch
  - git restore .
  - git rev-parse HEAD > $FLOAT_REF_COMMIT_FILE
  - git checkout $current_commit_sha

.build-merge-target-binaries: &build-merge-target-binaries
  - current_commit_sha=$(git rev-parse HEAD)
  ### build merge target binaries
  - git checkout $CI_MERGE_REQUEST_TARGET_BRANCH_NAME
  - git pull origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME
  - *activate-debug-mode-info-if-set
  - make clean
  - make -j >> /dev/null
  - mv ./IVAS_cod ./$MERGE_TARGET_ENCODER_PATH_FOR_BUILD_DO_NOT_MODIFY
  - mv ./IVAS_dec ./$MERGE_TARGET_DECODER_PATH_FOR_BUILD_DO_NOT_MODIFY
  - mv ./IVAS_rend ./IVAS_rend_merge_target
  ### Return to current branch
  - git restore .
  - git rev-parse HEAD > $MERGE_TARGET_COMMIT_FILE
  - git checkout $current_commit_sha

.build-float-ref-and-dut-binaries: &build-float-ref-and-dut-binaries
### build reference binaries
  - *build-float-ref-binaries
@@ -291,13 +288,6 @@ stages:
  - echo "Applying level scaling in scripts/testv using scale=$LEVEL_SCALING"
  - tests/scale_pcm.py ./scripts/testv/ $LEVEL_SCALING

.merge-request-comparison-check: &merge-request-comparison-check
  - echo "--------------- Running merge-request-comparison-check anchor ---------------"
  - if [ $zero_errors != 1 ]; then echo "Run errors encountered!"; exit $EXIT_CODE_FAIL; fi
  - if [ $exit_code -eq 1 ] && [ $non_be_flag == 0 ]; then echo "Non-bitexact cases without non-BE tag encountered!"; exit $EXIT_CODE_FAIL; fi
  - if [ $exit_code -eq 1 ] && [ $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: &update-ltv-repo
  - cd $LTV_DIR
  - git pull
@@ -437,43 +427,6 @@ stages:
    - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
      when: never

# ---------------------------------------------------------------
# Job templates
# ---------------------------------------------------------------

# When designing templates, try not to use too much inheritance and
# if multiple templates and extended on, remember that on conflict,
# latest overwrites the parameter.

# templates for rules
.rules-basis:
  rules:
    - if: $MIRROR_ACCESS_TOKEN # Don't run in the mirror update pipeline (only then MIRROR_ACCESS_TOKEN is defined)
      when: never
    - if: $CI_PIPELINE_SOURCE == 'schedule' # Don't run in any scheduled pipelines by default (use schedule templates below to enable again for certain conditions)
      when: never
    - if: $CI_PIPELINE_SOURCE == 'trigger' # Don't run triggered pipeline by default
      when: never
    - if: $MANUAL_PIPELINE_TYPE == 'test-be-release' # Skip all the normal jobs when testing manually against release codec
      when: never
    - if: $MANUAL_PIPELINE_TYPE == 'test-long-self-test' # Skip all the normal jobs when testing manually against release codec
      when: never
    - if: $MANUAL_PIPELINE_TYPE == 'ivas-conformance'
      when: never
    - if: $MANUAL_PIPELINE_TYPE == 'ivas-conformance-linux'
      when: never
    - if: $MANUAL_PIPELINE_TYPE == 'check-clipping'
    - if: $MANUAL_PIPELINE_TYPE == 'test-branch-vs-input-passthrough'
      when: never
    - when: on_success

.rules-merge-request:
  extends: .rules-basis
  rules:
    - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
    - if: $CI_PIPELINE_SOURCE == 'push'
      when: never

.rules-merge-request-no-draft:
  extends: .rules-basis
  rules:
@@ -497,6 +450,13 @@ stages:
  tags:
    - ivas-linux

.test-job-linux-compares-to-fixed-target:
  extends: .test-job-linux
  needs:
    - job: branch-is-up-to-date-with-target-pre
      artifacts: true
    - job: build-codec-linux-make

.build-job-linux:
  stage: build
  timeout: "2 minutes"
@@ -657,7 +617,7 @@ stages:

.check-be-to-target-anchor: &check-be-to-target-anchor
  stage: check-be
  needs: ["build-codec-linux-make"]
  needs: ["build-codec-linux-make","branch-is-up-to-date-with-target-pre"]
  timeout: "300 minutes"
  variables:
    XML_REPORT: "report--$CI_JOB_NAME--sha-$CI_COMMIT_SHORT_SHA.xml"
@@ -837,10 +797,7 @@ stages:
    - python3 ci/basop-pages/create_summary_page.py $SUMMARY_HTML_ARTIFACT_NAME $CI_JOB_ID $CI_JOB_NAME $IMAGES_ARTIFACT_NAME --measures $MEASURES_FOR_REPORT

    ### run main now
    - git checkout $CI_MERGE_REQUEST_TARGET_BRANCH_NAME
    - git pull origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME
    - make clean
    - make -j >> /dev/null
    - *build-merge-target-binaries
    # need to restore cache again
    - *overwrite-pytest-cache-with-artifact
    - python3 -m pytest --tb=no -q $TEST_SUITE -v --keep_files --create_cut --html=$HTML_REPORT_MAIN --self-contained-html --junit-xml=$XML_REPORT_MAIN $comp_args --ref_encoder_path $REF_ENCODER_PATH --ref_decoder_path $REF_DECODER_PATH --dut_encoder_path $DUT_ENCODER_PATH --dut_decoder_path $DUT_DECODER_PATH -n auto --testcase_timeout $testcase_timeout || true
@@ -1050,37 +1007,6 @@ uninterruptible:
# Validation jobs
# ---------------------------------------------------------------

branch-is-up-to-date-with-target-pre:
  extends:
    - .rules-merge-request-to-main-pc
  stage: prevalidate
  needs: []
  tags:
    - ivas-linux
  script:
    - *get-commits-behind-count
    - echo $commits_behind_count
    - |
      if [ $commits_behind_count -ne 0 ]; then
        echo "Your branch is behind the target branch, run 'git pull origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME' to update."
        exit 1
      fi

branch-is-up-to-date-with-target-post:
  extends:
    - .rules-merge-request-to-main-pc
  stage: postvalidate
  tags:
    - ivas-linux
  script:
    - *get-commits-behind-count
    - echo $commits_behind_count
    - |
      if [ $commits_behind_count -ne 0 ]; then
        echo "Your branch is behind the target branch, possibly main changed during your pipeline run, run 'git pull origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME' to update."
        exit 1
      fi

# fail pipeline in the final stage for pipelines on Draft MRs
# this also only runs on Draft MRs, so should always fail
fail-pipeline-if-in-draft:
@@ -1126,6 +1052,13 @@ branch-is-up-to-date-with-target-pre:
        echo -e "Your branch is $commits_behind_count commits behind the target branch, run\n\tgit pull origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME\nto update."
        exit 1
      fi
    - git fetch origin "$CI_MERGE_REQUEST_TARGET_BRANCH_NAME"
    - TARGET_COMMIT="$(git rev-parse "origin/$CI_MERGE_REQUEST_TARGET_BRANCH_NAME")"
    - echo "TARGET_COMMIT is $TARGET_COMMIT"
    - echo "$TARGET_COMMIT" > "$MERGE_TARGET_COMMIT_FILE"
  artifacts:
    paths:
      - $MERGE_TARGET_COMMIT_FILE

branch-is-up-to-date-with-target-post:
  extends:
@@ -1138,8 +1071,11 @@ branch-is-up-to-date-with-target-post:
    - |
      if [ $commits_behind_count -ne 0 ]; then
        echo -e "Your branch is $commits_behind_count commits behind the target branch, possibly main changed during your pipeline run, run\n\tgit pull origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME\nto update."
        exit 1
        exit 123
      fi
  allow_failure:
    exit_codes:
      - 123

clang-format-check:
  extends:
@@ -1382,8 +1318,8 @@ lc3-wrapper-unit-test:
split-rendering-pytest-on-merge-request:
  extends:
    - .test-job-linux-needs-testv-dir
    - .test-job-linux-compares-to-fixed-target
    - .rules-merge-request-to-main-pc
  needs: ["build-codec-linux-make"]
  timeout: "60 minutes"
  stage: compare
  script:
@@ -1391,6 +1327,7 @@ split-rendering-pytest-on-merge-request:
    - *update-scripts-repo
    - *get-commits-behind-count
    - *check-commits-behind-count-in-compare-jobs
    - *merge-request-comparison-setup-codec

    # some helper variables - "|| true" to prevent failures from grep not finding anything
    # write to temporary file as workaround for failures observed with piping echo
@@ -1403,29 +1340,17 @@ split-rendering-pytest-on-merge-request:
    # store the current commit hash
    - source_branch_commit_sha=$(git rev-parse HEAD)

    - *mr-fetch-target-branch
    - *mr-get-target-commit
    - git checkout $target_commit
    - echo "Building reference codec at commit $target_commit"

    # build reference binaries
    - make -j
    - mv IVAS_cod IVAS_cod_ref
    - mv IVAS_dec IVAS_dec_ref
    - mv IVAS_rend IVAS_rend_ref

    ### If ref_using_target is not set, checkout the source branch to use scripts and input from there
    - if [ $ref_using_target == 0 ]; then git restore lib_com/options.h; fi # Revert changes back before checking out another branch to avoid conflicts
    - if [ $ref_using_target == 0 ]; then git checkout $source_branch_commit_sha; fi
    - exit_code=0
    - testcase_timeout=60
    - python3 -m pytest -q --log-level ERROR -n auto -rA --html=report.html --self-contained-html --junit-xml=report-junit.xml tests/split_rendering/test_split_rendering.py --create_ref --testcase_timeout=$testcase_timeout || exit_code=$?

    # back to source branch
    - git restore lib_com/options.h # Revert changes back before checking out another branch to avoid conflicts
    - git checkout $source_branch_commit_sha
    - make clean
    - make -j
    # remporary solution to make it work with and without https://forge.3gpp.org/rep/ivas-codec-pc/ivas-codec/-/merge_requests/2181
    - mv $DUT_POST_RENDERER_PATH ISAR_post_rend_tmp
    - cp $REF_POST_RENDERER_PATH $DUT_POST_RENDERER_PATH
    - python3 -m pytest -q --log-level ERROR -n auto -rA --html=report.html --self-contained-html --junit-xml=report-junit.xml tests/split_rendering/test_split_rendering.py --create_ref --testcase_timeout=$testcase_timeout || exit_code=$?
    - mv ISAR_post_rend_tmp $DUT_POST_RENDERER_PATH

    ### Run test using scripts and input from main
    - if [ $ref_using_target == 1 ]; then git restore lib_com/options.h; fi # Revert changes back before checking out another branch to avoid conflicts
@@ -1475,7 +1400,7 @@ split-rendering-pytest-on-merge-request:
check-be-to-target-short-enc-0db:
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
    - .test-job-linux-compares-to-fixed-target
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1489,7 +1414,7 @@ check-be-to-target-short-enc-0db:
check-be-to-target-short-enc-+10db:
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
    - .test-job-linux-compares-to-fixed-target
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1503,7 +1428,7 @@ check-be-to-target-short-enc-+10db:
check-be-to-target-short-enc--10db:
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
    - .test-job-linux-compares-to-fixed-target
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1517,7 +1442,7 @@ check-be-to-target-short-enc--10db:
check-be-to-target-short-dec-0db:
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
    - .test-job-linux-compares-to-fixed-target
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1531,7 +1456,7 @@ check-be-to-target-short-dec-0db:
check-be-to-target-short-dec-+10db:
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
    - .test-job-linux-compares-to-fixed-target
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1545,7 +1470,7 @@ check-be-to-target-short-dec-+10db:
check-be-to-target-short-dec--10db:
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
    - .test-job-linux-compares-to-fixed-target
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1562,9 +1487,11 @@ check-regressions-short-enc-0db:
  needs:
    - job: "check-be-to-target-short-enc-0db"
      artifacts: true
    - job: branch-is-up-to-date-with-target-pre
      artifacts: true
    - job: build-codec-linux-make
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1579,9 +1506,11 @@ check-regressions-short-enc-+10db:
  needs:
    - job: "check-be-to-target-short-enc-+10db"
      artifacts: true
    - job: branch-is-up-to-date-with-target-pre
      artifacts: true
    - job: build-codec-linux-make
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1596,9 +1525,11 @@ check-regressions-short-enc--10db:
  needs:
    - job: "check-be-to-target-short-enc--10db"
      artifacts: true
    - job: branch-is-up-to-date-with-target-pre
      artifacts: true
    - job: build-codec-linux-make
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1613,9 +1544,11 @@ check-regressions-short-dec-0db:
  needs:
    - job: "check-be-to-target-short-dec-0db"
      artifacts: true
    - job: branch-is-up-to-date-with-target-pre
      artifacts: true
    - job: build-codec-linux-make
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1630,9 +1563,11 @@ check-regressions-short-dec-+10db:
  needs:
    - job: "check-be-to-target-short-dec-+10db"
      artifacts: true
    - job: branch-is-up-to-date-with-target-pre
      artifacts: true
    - job: build-codec-linux-make
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1647,9 +1582,11 @@ check-regressions-short-dec--10db:
  needs:
    - job: "check-be-to-target-short-dec--10db"
      artifacts: true
    - job: branch-is-up-to-date-with-target-pre
      artifacts: true
    - job: build-codec-linux-make
  extends:
    - .rules-mr-to-main-or-main-pc
    - .test-job-linux
  before_script:
    - *set-reference-for-basop-port-branch
    - USE_LTV=0
@@ -1961,7 +1898,7 @@ coverage-test-on-main-scheduled:
    # Build DuT binaries with GCOV
    - make clean >> /dev/null
    - make GCOV=1 -j
    - cp IVAS_rend IVAS_rend_ref # Copy to ensure instrumented renderer is run in the first pytest call
    - cp IVAS_rend $REF_RENDERER_PATH # Copy to ensure instrumented renderer is run in the first pytest call

    - testcase_timeout=$TESTCASE_TIMEOUT_LTV
    - exit_code_dec=0
@@ -2128,8 +2065,8 @@ voip-be-on-merge-request:
renderer-pytest-on-merge-request:
  extends:
    - .test-job-linux-needs-testv-dir
    - .test-job-linux-compares-to-fixed-target
    - .rules-merge-request-to-main-pc
  needs: ["build-codec-linux-make"]
  # TODO: set reasonable timeout, will most likely take less
  timeout: "20 minutes"
  tags:
@@ -2184,13 +2121,13 @@ renderer-pytest-on-merge-request:
ivas-pytest-on-merge-request:
  extends:
    - .test-job-linux-needs-testv-dir
    - .test-job-linux-compares-to-fixed-target
    - .rules-merge-request-to-main-pc
  stage: compare
  # TODO: broken dependency needs to be removed temporarily, see above
  # note: this step doesn't really depend on codec-smoke-test
  # it's just pointless to run this step when the smoke test fails and the smoke test should be reasonably fast
  # thus, overall, this should save time
  needs: ["build-codec-linux-make"] #, "codec-smoke-test"]
  timeout: "40 minutes"
  tags:
    - ivas-linux
+10 −0
Original line number Diff line number Diff line
@@ -12,16 +12,26 @@ variables:
  # They can be overwritten in the job templates to e.g. only test encoder or decoder in the chain
  DUT_ENCODER_PATH: "./IVAS_cod"
  DUT_DECODER_PATH: "./IVAS_dec"
  DUT_RENDERER_PATH: "./IVAS_rend"
  DUT_POST_RENDERER_PATH: "./ISAR_post_rend"
  REF_ENCODER_PATH: "./IVAS_cod_ref"
  REF_DECODER_PATH: "./IVAS_dec_ref"
  REF_RENDERER_PATH: "./IVAS_rend_ref"
  REF_POST_RENDERER_PATH: "./ISAR_post_rend_ref"
  MERGE_TARGET_ENCODER_PATH: "./IVAS_cod_merge_target"
  MERGE_TARGET_DECODER_PATH: "./IVAS_dec_merge_target"
  MERGE_TARGET_RENDERER_PATH: "./IVAS_rend_merge_target"
  MERGE_TARGET_POST_RENDERER_PATH: "./ISAR_post_rend_merge_target"
  # These path variables are used for building the binaries
  # They should never be overwritten!
  REF_ENCODER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_cod_ref"
  REF_DECODER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_dec_ref"
  REF_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_rend_ref"
  REF_POST_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./ISAR_post_rend_ref"
  MERGE_TARGET_ENCODER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_cod_merge_target"
  MERGE_TARGET_DECODER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_dec_merge_target"
  MERGE_TARGET_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./IVAS_rend_merge_target"
  MERGE_TARGET_POST_RENDERER_PATH_FOR_BUILD_DO_NOT_MODIFY: "./ISAR_post_rend_merge_target"
  LEVEL_SCALING: "1.0"
  BASOP_CI_BRANCH_PC_REPO: "basop-ci-branch"
  PRM_FILES: "scripts/config/self_test.prm scripts/config/self_test_ltv.prm"