diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 56b604a82..0760e41a7 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -36,12 +36,10 @@ build_template_app: image: $CI_DOCKER_REGISTRY/esp32-ci-env tags: - build - variables: GIT_STRATEGY: clone BATCH_BUILD: "1" IDF_CI_BUILD: "1" - script: - git clone https://github.com/espressif/esp-idf-template.git - cd esp-idf-template @@ -66,7 +64,6 @@ build_template_app: image: $CI_DOCKER_REGISTRY/esp32-ci-env tags: - build - variables: GIT_STRATEGY: clone BATCH_BUILD: "1" @@ -76,9 +73,8 @@ build_ssc: <<: *build_template artifacts: paths: - - ./SSC/ssc_bin + - SSC/ssc_bin expire_in: 6 mos - script: - git clone $SSC_REPOSITORY - cd SSC @@ -98,15 +94,14 @@ build_esp_idf_tests: <<: *build_template artifacts: paths: - - ./tools/unit-test-app/build/*.bin - - ./tools/unit-test-app/build/*.elf - - ./tools/unit-test-app/build/*.map - - ./tools/unit-test-app/build/download.config - - ./tools/unit-test-app/build/bootloader/*.bin - - ./components/idf_test/unit_test/TestCaseAll.yml - - ./components/idf_test/unit_test/CIConfigs/*.yml + - tools/unit-test-app/build/*.bin + - tools/unit-test-app/build/*.elf + - tools/unit-test-app/build/*.map + - tools/unit-test-app/build/download.config + - tools/unit-test-app/build/bootloader/*.bin + - components/idf_test/unit_test/TestCaseAll.yml + - components/idf_test/unit_test/CIConfigs/*.yml expire_in: 6 mos - script: - cd tools/unit-test-app - make TESTS_ALL=1 @@ -154,6 +149,10 @@ build_docs: image: $CI_DOCKER_REGISTRY/esp32-ci-env tags: - build_docs + artifacts: + paths: + - docs/_build/html + expire_in: 1 mos script: - cd docs - doxygen @@ -161,10 +160,6 @@ build_docs: - test -n $IS_PRIVATE && test $(cat doxygen-warning-log.txt | wc -l) -eq 0 || ( echo "Doxygen pass had some warnings:" && cat doxygen-warning-log.txt && false ) - make gh-linkcheck - make html - artifacts: - paths: - - docs/_build/html - expire_in: 1 mos test_nvs_on_host: stage: test @@ -250,7 +245,7 @@ test_report: - 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 + - rm -rf "CI-test-result/RawData/$RESULT_PATH" - cp -R $CI_PROJECT_NAME CI-test-result/RawData - cd CI-test-result # config git user @@ -329,6 +324,10 @@ check_doc_links: only: # can only be triggered - triggers + artifacts: + paths: + - docs/_build/linkcheck + expire_in: 1 mos script: # must be triggered with CHECK_LINKS=Yes, otherwise exit without test - test "$CHECK_LINKS" = "Yes" || exit 0 @@ -336,10 +335,6 @@ check_doc_links: - test "${CI_COMMIT_REF_NAME}" = "master" || exit 0 - cd docs - make linkcheck - artifacts: - paths: - - docs/_build/linkcheck - expire_in: 1 mos check_commit_msg: stage: deploy @@ -386,7 +381,6 @@ assign_test: - components/idf_test/*/CIConfigs - components/idf_test/*/TC.sqlite expire_in: 1 mos - script: # first move test bins together: test_bins/CHIP_SDK/TestApp/bin_files - mkdir -p test_bins/ESP32_IDF/UT @@ -402,6 +396,8 @@ assign_test: - python CIAssignTestCases.py -t $IDF_PATH/components/idf_test/integration_test -c $IDF_PATH/.gitlab-ci.yml -b $IDF_PATH/test_bins .test_template: &test_template + before_script: + - echo "Skip cloning submodule here" stage: test when: on_success only: @@ -410,10 +406,13 @@ assign_test: - /^v\d+\.\d+(\.\d+)?($|-)/ - triggers allow_failure: true - dependencies: - assign_test - + artifacts: + when: always + paths: + - $LOG_PATH + expire_in: 6 mos variables: # set git strategy to fetch so we can get esptool without update submodule GIT_STRATEGY: fetch @@ -422,21 +421,11 @@ assign_test: TEST_CASE_FILE_PATH: "$CI_PROJECT_DIR/components/idf_test/integration_test" MODULE_UPDATE_FILE: "$CI_PROJECT_DIR/components/idf_test/ModuleDefinition.yml" CONFIG_FILE: "$CI_PROJECT_DIR/components/idf_test/integration_test/CIConfigs/$CI_JOB_NAME.yml" - - artifacts: - when: always - paths: - - $LOG_PATH - expire_in: 6 mos - - before_script: - - echo "Skip cloning submodule here" - script: # first test if config file exists, if not exist, exit 0 - test -e $CONFIG_FILE || exit 0 - # remove artifacts from last stage (UT logs) - - rm -rf $LOG_PATH + # remove artifacts from the 'unit_test' stage + - rm -rf "$LOG_PATH" # add gitlab ssh key - mkdir -p ~/.ssh - chmod 700 ~/.ssh @@ -458,7 +447,6 @@ assign_test: <<: *test_template allow_failure: false stage: unit_test - variables: GIT_STRATEGY: fetch LOCAL_ENV_CONFIG_PATH: "$CI_PROJECT_DIR/ci-test-runner-configs/$CI_RUNNER_DESCRIPTION/ESP32_IDF" @@ -473,14 +461,14 @@ nvs_compatible_test: when: always paths: - $LOG_PATH - - $IDF_PATH/nvs_wifi.bin + - nvs_wifi.bin expire_in: 6 mos tags: - ESP32_IDF - NVS_Compatible script: - # remove artifacts from last stage (UT logs) - - rm -rf $LOG_PATH + # remove artifacts from the 'unit_test' stage + - rm -rf "$LOG_PATH" # add gitlab ssh key - mkdir -p ~/.ssh - chmod 700 ~/.ssh @@ -534,43 +522,43 @@ IT_001_02: tags: - ESP32_IDF - SSC_T1_1 - + IT_001_03: <<: *test_template tags: - ESP32_IDF - SSC_T1_1 - + IT_001_04: <<: *test_template tags: - ESP32_IDF - SSC_T1_1 - + IT_001_05: <<: *test_template tags: - ESP32_IDF - SSC_T1_1 - + IT_001_06: <<: *test_template tags: - ESP32_IDF - SSC_T1_1 - + IT_001_07: <<: *test_template tags: - ESP32_IDF - SSC_T1_1 - + IT_001_08: <<: *test_template tags: - ESP32_IDF - SSC_T1_1 - + IT_002_01: <<: *test_template tags: