- assign_test
- unit_test
- test
- - test_report
- deploy
variables:
- cd test_build_system
- ${IDF_PATH}/tools/ci/test_build_system.sh
-test_report:
- stage: test_report
- image: $CI_DOCKER_REGISTRY/esp32-ci-env$BOT_DOCKER_IMAGE_TAG
- tags:
- - report
- only:
- - master
- - triggers
- - schedules
- - /^release\/v/
- - /^v\d+\.\d+(\.\d+)?($|-)/
- variables:
- LOG_PATH: "$CI_PROJECT_DIR/$CI_COMMIT_SHA"
- TEST_CASE_FILE_PATH: "$CI_PROJECT_DIR/components/idf_test"
- REPORT_PATH: "$CI_PROJECT_DIR/CI_Test_Report"
- MODULE_UPDATE_FILE: "$CI_PROJECT_DIR/tools/unit-test-app/tools/ModuleDefinition.yml"
- #dependencies:
- #We need all UT* and IT* artifacts except for only a few other
- artifacts:
- when: always
- paths:
- - $REPORT_PATH
- - $LOG_PATH
- expire_in: 12 mos
- script:
- # calc log path
- - VER_NUM=`git rev-list HEAD | wc -l | awk '{print $1}'`
- - SHA_ID=`echo $CI_COMMIT_SHA | cut -c 1-7`
- - REVISION="${VER_NUM}_${SHA_ID}"
- # replace / to _ in branch name
- - ESCAPED_BRANCH_NAME=`echo $CI_COMMIT_REF_NAME | sed 's/\//___/g'`
- # result path and artifacts path
- - RESULT_PATH="$CI_PROJECT_NAME/$ESCAPED_BRANCH_NAME/$REVISION"
- - ARTIFACTS_PATH="$GITLAB_HTTP_SERVER/idf/esp-idf/builds/$CI_JOB_ID/artifacts/browse/$CI_COMMIT_SHA"
- # clone test bench
- - git clone $GITLAB_SSH_SERVER/yinling/auto_test_script.git
- - cd auto_test_script
- - python $CHECKOUT_REF_SCRIPT auto_test_script
- # generate report
- - TEST_RESULT=Pass
- - python CITestReport.py -l $LOG_PATH -t $TEST_CASE_FILE_PATH -p $REPORT_PATH -r $RESULT_PATH -a $ARTIFACTS_PATH -m $MODULE_UPDATE_FILE || TEST_RESULT=Fail
- # commit to CI-test-result project
- - git clone $GITLAB_SSH_SERVER/qa/CI-test-result.git
- - rm -rf "CI-test-result/RawData/$RESULT_PATH"
- - cp -R $CI_PROJECT_NAME CI-test-result/RawData
- - cd CI-test-result
- # config git user
- - git config --global user.email "ci-test-result@espressif.com"
- - git config --global user.name "ci-test-result"
- # commit test result
- - git add .
- - git commit . -m "update test result for $CI_PROJECT_NAME/$CI_COMMIT_REF_NAME/$CI_COMMIT_SHA, pipeline ID $CI_PIPELINE_ID" || exit 0
- - git push origin master
- - test "${TEST_RESULT}" = "Pass" || exit 1
-
test_esp_err_to_name_on_host:
stage: test
image: $CI_DOCKER_REGISTRY/esp32-ci-env$BOT_DOCKER_IMAGE_TAG
- /^v\d+\.\d+(\.\d+)?($|-)/
- triggers
- schedules
- allow_failure: true
dependencies:
- assign_test
- build_ssc_00