From 3a5334de6b031645623384bb86446c9578727bfa Mon Sep 17 00:00:00 2001 From: David Cermak Date: Mon, 17 Jan 2022 15:43:36 +0100 Subject: [PATCH 1/2] ci: Test with QEMU against the latest IDF --- .gitlab-ci.yml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 16d3c98..b460f13 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -46,6 +46,33 @@ build_with_idf_v5: - export EXTRA_CFLAGS=${PEDANTIC_CFLAGS} && export EXTRA_CXXFLAGS=${EXTRA_CFLAGS} - $MQTT_PATH/ci/build_examples.sh +build_and_test_qemu: + stage: build + image: ${CI_DOCKER_REGISTRY}/qemu-v5.0:1-20210826 + tags: + - build + - shiny + dependencies: [] + variables: + PYTHON_VER: 3.6.13 + script: + - git clone "${IDF_REPO}" + - source /opt/pyenv/activate && pyenv global $PYTHON_VER + # switch to IDF and setup the tools + - $MQTT_PATH/ci/set_idf.sh master + - $IDF_PATH/tools/idf_tools.py install-python-env + - cd $IDF_PATH && tools/idf_tools.py --non-interactive install && eval "$(tools/idf_tools.py --non-interactive export)" + - python -m pip install -r $IDF_PATH/tools/ci/python_packages/ttfw_idf/requirements.txt + - python -m pip install paho-mqtt + - $MQTT_PATH/ci/set_mqtt.sh $CI_COMMIT_SHA + # build publish-connect stress test, setup test parameters + - cd tools/test_apps/protocols/mqtt/publish_connect_test && cat sdkconfig.qemu | $IDF_PATH/tools/ci/envsubst.py > sdkconfig.defaults && idf.py build + - export TEST_PATH=`pwd` && export MQTT_PUBLISH_TEST=1 + - export PYTHONPATH="$IDF_PATH/tools:$IDF_PATH/tools/ci/python_packages" + # run test (with environment->qemu) + - cd $IDF_PATH/tools/ci/python_packages/tiny_test_fw/bin + - python Runner.py $TEST_PATH -c $TEST_PATH/publish_connect_mqtt_qemu.yml -e $TEST_PATH/env.yml + push_master_to_github: stage: deploy image: ${CI_DOCKER_REGISTRY}/esp32-ci-env From b66b9745f6d45ea9a3366379cc88b5772623ff1f Mon Sep 17 00:00:00 2001 From: David Cermak Date: Fri, 28 Jan 2022 11:55:05 +0100 Subject: [PATCH 2/2] reduce sizes and message counts for QEMU publish test --- .gitlab-ci.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b460f13..fdf1fc8 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -71,6 +71,11 @@ build_and_test_qemu: - export PYTHONPATH="$IDF_PATH/tools:$IDF_PATH/tools/ci/python_packages" # run test (with environment->qemu) - cd $IDF_PATH/tools/ci/python_packages/tiny_test_fw/bin + # use more relaxed criteria with QEMU tests + - export MQTT_PUBLISH_MSG_len_0=0 MQTT_PUBLISH_MSG_repeat_0=5 + - export MQTT_PUBLISH_MSG_len_1=2 MQTT_PUBLISH_MSG_repeat_1=50 + - export MQTT_PUBLISH_MSG_len_2=128 MQTT_PUBLISH_MSG_repeat_2=2 + - export MQTT_PUBLISH_MSG_len_3=20 MQTT_PUBLISH_MSG_repeat_3=20 - python Runner.py $TEST_PATH -c $TEST_PATH/publish_connect_mqtt_qemu.yml -e $TEST_PATH/env.yml push_master_to_github: