2016-08-22 10:19:08 +00:00
stages :
- build
2016-08-23 04:54:09 +00:00
- test
2016-08-22 10:19:08 +00:00
- deploy
2016-09-01 07:13:15 +00:00
before_script :
2016-09-13 01:34:28 +00:00
# add gitlab ssh key
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
2016-09-13 13:24:57 +00:00
- echo -n $GITLAB_KEY > ~/.ssh/id_rsa_base64
2016-09-13 01:34:28 +00:00
- base64 --decode --ignore-garbage ~/.ssh/id_rsa_base64 > ~/.ssh/id_rsa
- chmod 600 ~/.ssh/id_rsa
- echo -e "Host gitlab.espressif.cn\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config
# if testing master branch, use github wifi libs.
# if testing other branches, use gitlab wifi libs (as maybe changes aren't merged to master yet)
- test "${CI_BUILD_REF_NAME}" = "master" || sed -i "s%https://github.com/espressif/esp32-wifi-lib%ssh://git@gitlab.espressif.cn:27227/idf/esp32-wifi-lib%" .gitmodules
# fetch all submodules
2016-09-01 07:13:15 +00:00
- git submodule update --init --recursive
2016-08-22 07:02:22 +00:00
build_template_app :
2016-08-22 10:19:08 +00:00
stage : build
2016-08-22 07:02:22 +00:00
image : espressif/esp32-ci-env
2016-09-09 02:49:03 +00:00
tags :
- build
2016-08-22 07:02:22 +00:00
variables :
SDK_PATH : "$CI_PROJECT_DIR"
IDF_PATH : "$CI_PROJECT_DIR"
2016-08-22 10:19:08 +00:00
GIT_STRATEGY : clone
2016-08-22 07:02:22 +00:00
script :
- git clone https://github.com/espressif/esp-idf-template.git
- cd esp-idf-template
2016-09-01 08:58:06 +00:00
# Try to use the same branch name for esp-idf-template that we're
# using on esp-idf. If it doesn't exist then just stick to the default
# branch
- git checkout ${CI_BUILD_REF_NAME} || echo "Using esp-idf-template default branch..."
2016-08-23 08:19:49 +00:00
- make defconfig
2016-09-09 00:49:35 +00:00
- make all V=1
2016-08-22 10:19:08 +00:00
2016-09-09 02:49:03 +00:00
.build_gitlab : &build_template
stage : build
tags :
- build
image : espressif/esp32-ci-env
variables :
SDK_PATH : "$CI_PROJECT_DIR"
IDF_PATH : "$CI_PROJECT_DIR"
GIT_STRATEGY : clone
build_ssc :
<< : *build_template
artifacts :
paths :
- ./SSC/build/*.bin
- ./SSC/build/*.elf
- ./SSC/build/*.map
- ./SSC/build/bootloader/*.bin
expire_in : 6 mos
script :
2016-09-28 12:11:42 +00:00
- git clone $GITLAB_SSH_SERVER/yinling/SSC.git
2016-09-09 02:49:03 +00:00
- cd SSC
2016-09-29 05:38:29 +00:00
- git checkout ${CI_BUILD_REF_NAME} || echo "Using SSC default branch..."
2016-09-09 02:49:03 +00:00
- make defconfig
- chmod +x gen_misc_ng.sh
- ./gen_misc_ng.sh
2016-10-11 05:41:05 +00:00
build_examples :
<< : *build_template
artifacts :
paths :
- build_examples/*/*/build/*.bin
- build_examples/*/*/build/*.elf
- build_examples/*/*/build/*.map
- build_examples/*/*/build/bootloader/*.bin
expire_in : 6 mos
script :
# it's not possible to build 100% out-of-tree and have the "artifacts"
# mechanism work, but this is the next best thing
- mkdir build_examples
- cd build_examples
- ${IDF_PATH}/make/build_examples.sh
2016-08-23 04:54:09 +00:00
test_nvs_on_host :
stage : test
image : espressif/esp32-ci-env
2016-09-09 02:49:03 +00:00
tags :
- nvs_host_test
2016-08-23 04:54:09 +00:00
script :
- cd components/nvs_flash/test
- make test
2016-08-24 04:16:26 +00:00
test_build_system :
stage : test
image : espressif/esp32-ci-env
2016-09-09 02:49:03 +00:00
tags :
- build_test
2016-08-24 05:31:33 +00:00
variables :
IDF_PATH : "$CI_PROJECT_DIR"
2016-08-24 04:16:26 +00:00
script :
2016-08-25 03:55:47 +00:00
- ./make/test_build_system.sh
2016-08-24 04:16:26 +00:00
2016-09-30 05:58:02 +00:00
test_report :
2016-09-30 08:11:24 +00:00
stage : deploy
2016-09-30 05:58:02 +00:00
only :
- master
- triggers
tags :
- test_report
2016-09-30 08:11:24 +00:00
allow_failure : true
2016-09-30 05:58:02 +00:00
variables :
LOG_PATH : "$CI_PROJECT_DIR/$CI_BUILD_REF"
2016-10-12 03:17:56 +00:00
TEST_CASE_FILE_PATH : "$CI_PROJECT_DIR/components/idf_test"
2016-09-30 05:58:02 +00:00
REPORT_PATH : "$CI_PROJECT_DIR/CI_Test_Report"
artifacts :
when : always
paths :
- $REPORT_PATH
expire_in : 6 mos
script :
# clone test bench
- git clone $GITLAB_SSH_SERVER/yinling/auto_test_script.git
- cd auto_test_script
# generate report
- python CITestReport.py -l $LOG_PATH -t $TEST_CASE_FILE_PATH -p $REPORT_PATH
2016-09-09 02:49:03 +00:00
2016-09-26 06:32:58 +00:00
push_master_to_github :
before_script :
- echo "Not setting up GitLab key, not fetching submodules"
stage : deploy
only :
- master
tags :
- deploy
when : on_success
image : espressif/esp32-ci-env
variables :
GIT_STRATEGY : clone
script :
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- echo -n $GH_PUSH_KEY > ~/.ssh/id_rsa_base64
- base64 --decode --ignore-garbage ~/.ssh/id_rsa_base64 > ~/.ssh/id_rsa
- chmod 600 ~/.ssh/id_rsa
- echo -e "Host github.com\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config
- git remote add github git@github.com:espressif/esp-idf.git
- git push --follow-tags github HEAD:master
2016-09-09 02:49:03 +00:00
2016-09-26 06:32:58 +00:00
# AUTO GENERATED PART START, DO NOT MODIFY CONTENT BELOW
2016-09-09 02:49:03 +00:00
# template for test jobs
.test_template : &test_template
stage : test
when : on_success
only :
- master
2016-09-18 15:12:50 +00:00
- triggers
2016-09-30 08:11:24 +00:00
allow_failure : true
2016-09-09 02:49:03 +00:00
variables :
2016-09-28 11:48:38 +00:00
# LOCAL_ENV_CONFIG_PATH: define in template and jobs can overwrite if required
LOCAL_ENV_CONFIG_PATH : /home/gitlab-runner/LocalConfig/ESP32_IDF
2016-09-26 06:32:58 +00:00
BIN_PATH : "$CI_PROJECT_DIR/SSC/build/"
APP_NAME : "ssc"
LOG_PATH : "$CI_PROJECT_DIR/$CI_BUILD_REF"
2016-10-12 03:17:56 +00:00
# append test level folder to TEST_CASE_FILE_PATH in before_script of test job
TEST_CASE_FILE_PATH : "$CI_PROJECT_DIR/components/idf_test"
2016-09-26 06:32:58 +00:00
# jobs MUST set CONFIG_FILE in before_script, and overwrite the variables above if necessary
2016-09-09 02:49:03 +00:00
artifacts :
when : always
paths :
- $LOG_PATH
expire_in : 6 mos
2016-09-26 06:32:58 +00:00
script :
2016-09-29 05:38:29 +00:00
# add gitlab ssh key
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- echo -n $GITLAB_KEY > ~/.ssh/id_rsa_base64
- base64 --decode --ignore-garbage ~/.ssh/id_rsa_base64 > ~/.ssh/id_rsa
- chmod 600 ~/.ssh/id_rsa
- echo -e "Host gitlab.espressif.cn\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config
# clone test bench
2016-09-28 11:48:38 +00:00
- git clone $GITLAB_SSH_SERVER/yinling/auto_test_script.git
2016-09-27 08:22:18 +00:00
- cd auto_test_script
2016-09-29 05:38:29 +00:00
# run test
2016-09-26 06:32:58 +00:00
- python CIRunner.py -l $LOG_PATH -c $CONFIG_FILE -e $LOCAL_ENV_CONFIG_PATH -t $TEST_CASE_FILE_PATH bin_path $APP_NAME $BIN_PATH
# template for overnight test jobs
.test_template_night : &test_template_night
<< : *test_template
only :
# can only be triggered
- triggers
2016-09-09 02:49:03 +00:00
script :
2016-09-26 06:32:58 +00:00
# must be night build triggers, otherwise exit without test
2016-09-29 12:21:33 +00:00
- test $NIGHT_BUILD = "Yes" || exit 0
2016-09-29 05:38:29 +00:00
# add gitlab ssh key
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- echo -n $GITLAB_KEY > ~/.ssh/id_rsa_base64
- base64 --decode --ignore-garbage ~/.ssh/id_rsa_base64 > ~/.ssh/id_rsa
- chmod 600 ~/.ssh/id_rsa
- echo -e "Host gitlab.espressif.cn\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config
# clone test bench
2016-09-28 11:48:38 +00:00
- git clone $GITLAB_SSH_SERVER/yinling/auto_test_script.git
2016-09-27 08:22:18 +00:00
- cd auto_test_script
2016-09-29 05:38:29 +00:00
# run test
2016-09-26 06:32:58 +00:00
- python CIRunner.py -l $LOG_PATH -c $CONFIG_FILE -e $LOCAL_ENV_CONFIG_PATH -t $TEST_CASE_FILE_PATH bin_path $APP_NAME $BIN_PATH
2016-10-12 03:17:56 +00:00
IT_Function_SYS_01 :
2016-09-26 06:32:58 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T1_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_SYS_01.yml
2016-09-09 02:49:03 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_WIFI_01 :
2016-09-09 02:49:03 +00:00
<< : *test_template
tags :
2016-09-26 06:32:58 +00:00
- ESP32_IDF
2016-09-09 02:49:03 +00:00
- SSC_T1_1
- SSC_T2_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_WIFI_01.yml
2016-09-09 02:49:03 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_WIFI_02 :
2016-09-26 06:32:58 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T1_1
- SSC_T2_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_WIFI_02.yml
2016-09-09 02:49:03 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_01 :
2016-09-26 06:32:58 +00:00
<< : *test_template
2016-09-09 02:49:03 +00:00
tags :
2016-09-26 06:32:58 +00:00
- ESP32_IDF
- SSC_T1_1
- SSC_T2_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_01.yml
2016-09-26 06:32:58 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_02 :
2016-09-26 06:32:58 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T1_1
- SSC_T2_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_02.yml
2016-09-26 06:32:58 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_03 :
2016-09-26 06:32:58 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T1_1
- SSC_T2_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_03.yml
2016-09-26 06:32:58 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_04 :
2016-09-26 06:32:58 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T1_1
- SSC_T2_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_04.yml
2016-09-26 06:32:58 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_05 :
2016-09-26 06:32:58 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T1_1
- SSC_T2_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_05.yml
2016-09-26 06:32:58 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_06 :
2016-09-28 11:48:38 +00:00
<< : *test_template_night
2016-09-26 06:32:58 +00:00
tags :
- ESP32_IDF
- SSC_T1_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_06.yml
2016-09-26 06:32:58 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_WIFI_03 :
2016-09-29 04:07:35 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T3_PhyMode
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_WIFI_03.yml
2016-09-29 04:07:35 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_WIFI_04 :
2016-09-28 11:48:38 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T1_APC
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_WIFI_04.yml
2016-09-28 11:48:38 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_WIFI_05 :
2016-09-28 11:48:38 +00:00
<< : *test_template
tags :
- ESP32_IDF
2016-09-29 04:07:35 +00:00
- SSC_T1_WEP
2016-09-28 11:48:38 +00:00
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_WIFI_05.yml
2016-09-28 11:48:38 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_WIFI_06 :
2016-09-28 11:48:38 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T2_PhyMode
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_WIFI_06.yml
2016-09-28 11:48:38 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_07 :
2016-09-28 11:48:38 +00:00
<< : *test_template
2016-09-26 06:32:58 +00:00
tags :
- ESP32_IDF
- SSC_T1_1
2016-09-28 11:48:38 +00:00
- SSC_T1_2
2016-10-12 03:17:56 +00:00
- SSC_T2_1
2016-09-26 06:32:58 +00:00
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_07.yml
2016-09-26 06:32:58 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_08 :
2016-09-27 08:22:18 +00:00
<< : *test_template
tags :
- ESP32_IDF
2016-09-28 11:48:38 +00:00
- SSC_T1_1
2016-09-27 08:22:18 +00:00
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_08.yml
2016-09-28 11:48:38 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_09 :
2016-09-28 11:48:38 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T1_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_09.yml
2016-09-28 11:48:38 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_10 :
2016-09-28 11:48:38 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T1_1
- SSC_T1_2
- SSC_T2_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_10.yml
2016-09-28 11:48:38 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_11 :
2016-09-28 11:48:38 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T1_1
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_11.yml
2016-09-28 11:48:38 +00:00
2016-10-12 03:17:56 +00:00
IT_Function_TCPIP_12 :
2016-09-28 11:48:38 +00:00
<< : *test_template
tags :
- ESP32_IDF
- SSC_T1_1
- SSC_T1_2
before_script :
2016-10-12 03:17:56 +00:00
- TEST_CASE_FILE_PATH=$TEST_CASE_FILE_PATH/integration_test
2016-10-12 03:44:54 +00:00
- CONFIG_FILE=$TEST_CASE_FILE_PATH/CIConfigs/IT_Function_TCPIP_12.yml