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

build manually before calling the complexity script

parent 8644693a
Loading
Loading
Loading
Loading
Loading
+28 −4
Original line number Diff line number Diff line
@@ -20,6 +20,8 @@ variables:
  TESTCASE_TIMEOUT_LTV: 2400
  TESTCASE_TIMEOUT_STV_SANITIZERS: 1800
  GIT_CLEAN_FLAGS: -ffdxq
  BUILD_INSTRUMENTED: ""
  INSTR_DIR: "c-code_instrument"
  MANUAL_PIPELINE_TYPE:
    description: "Type for the manual pipeline run. Use 'pytest-mld' to run MLD test against reference float codec." # Not implemented yet, but may be good to have a manual pipeline trigger
    value: 'default'
@@ -105,12 +107,21 @@ stages:
  - git checkout $REFERENCE_BRANCH
  - git pull
  - make clean
  - if [ "$BUILD_INSTRUMENTED" != "" ]; then
  -    bash scripts/prepare_instrumentation.sh -p BASOP -m MEM_ONLY
  -    make -j -C $INSTR_DIR
  -    mv $INSTR_DIR/IVAS_cod ./IVAS_cod_ref
  -    mv $INSTR_DIR/IVAS_dec ./IVAS_dec_ref
  -    mv $INSTR_DIR/IVAS_rend ./IVAS_rend_ref
  - else
  -    make -j
  -    mv ./IVAS_cod ./IVAS_cod_ref
  -    mv ./IVAS_dec ./IVAS_dec_ref
  -    mv ./IVAS_rend ./IVAS_rend_ref
  - fi

  ### build test binaries
  - git restore .
  - git checkout $current_commit_sha
  - make clean
  - make -j
@@ -703,6 +714,7 @@ ivas-pytest-renderer:

.complexity-measurements-setup:
  &complexity-measurements-setup # create necessary environment
  ### 1. part: mainly same as in float repo - this is boilerplate code to make the gitlab pages presentation work
  - mkdir -p wmops/logs

  - job_id=$(python3 ci/get_id_of_last_job_occurence.py $CI_COMMIT_REF_NAME $CI_JOB_NAME $CI_PROJECT_ID)
@@ -717,6 +729,16 @@ ivas-pytest-renderer:
  - rm artifacts.zip
  - rm -rf $public_dir

  ### 2. part: setup specific for BASOP repo
  # hack for using the reference encoder -> need to build manually to make script use ref enc and BASOP dec
  - mkdir COMPLEXITY
  - cp IVAS_cod_ref COMPLEXITY/IVAS_cod
  # build branch code aain with instrumentation
  - make clean
  - bash scripts/prepare_instrumentation.sh -p BASOP -m MEM_ONLY
  - make -j -C $INSTR_DIR
  - cp $INSTR_DIR/IVAS_dec COMPLEXITY/IVAS_dec

.complexity-measurements-prepare-artifacts:
  &complexity-measurements-prepare-artifacts # prepare artifacts -> move to public directory
  - public_dir="$CI_JOB_NAME-public"
@@ -744,10 +766,12 @@ ivas-pytest-renderer:
  stage: test
  variables:
    ret_val: 0
    BUILD_INSTRUMENTED: "true"
  before_script:
    - *print-common-info
    - *update-scripts-repo
    - *update-ltv-repo
    - *setup-codec
    - *complexity-measurements-setup
    - which coan
  artifacts: