Skip to content

Ble-WiFi commissioning test in CI #103921

Ble-WiFi commissioning test in CI

Ble-WiFi commissioning test in CI #103921

Workflow file for this run

# Copyright (c) 2020 Project CHIP Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: QEMU
on:
push:
branches-ignore:
- 'dependabot/**'
pull_request:
merge_group:
concurrency:
group: ${{ github.ref }}-${{ github.workflow }}-${{ (github.event_name == 'pull_request' && github.event.number) || (github.event_name == 'workflow_dispatch' && github.run_number) || github.sha }}
cancel-in-progress: true
env:
CHIP_NO_LOG_TIMESTAMPS: true
jobs:
qemu-esp32:
name: ESP32
env:
BUILD_TYPE: esp32-qemu
runs-on: ubuntu-latest
if: github.actor != 'restyled-io[bot]'
container:
image: ghcr.io/project-chip/chip-build-esp32-qemu:74
volumes:
- "/tmp/log_output:/tmp/test_logs"
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Checkout submodules & Bootstrap
uses: ./.github/actions/checkout-submodules-and-bootstrap
with:
platform: esp32
- name: Build ESP32 QEMU test images
run: |
scripts/run_in_build_env.sh " \
./scripts/build/build_examples.py \
--target esp32-qemu-tests \
build \
"
- name: Run all tests
run: |
src/test_driver/esp32/run_qemu_image.py \
--verbose \
--file-image-list ./out/esp32-qemu-tests/test_images.txt
- name: Uploading Logs
uses: actions/upload-artifact@v4
if: ${{ !env.ACT }}
with:
name: qemu-esp32-logs
path: /tmp/log_output
qemu-tizen:
name: Tizen
runs-on: ubuntu-latest
if: github.actor != 'restyled-io[bot]'
container:
image: ghcr.io/project-chip/chip-build-tizen-qemu:54
volumes:
- "/tmp/log_output:/tmp/test_logs"
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Checkout submodules & Bootstrap
uses: ./.github/actions/checkout-submodules-and-bootstrap
with:
platform: tizen
- name: Build and run tests
run: |
./scripts/run_in_build_env.sh \
"./scripts/build/build_examples.py \
--target tizen-arm-tests-no-ble-no-thread \
build
"
qemu-linux:
name: ubuntu
runs-on: ubuntu-latest
if: github.actor != 'restyled-io[bot]'
container:
image: ghcr.io/project-chip/chip-build-linux-qemu:74
volumes:
- "/tmp/log_output:/tmp/test_logs"
# Required for using KVM
options: --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Checkout submodules & Bootstrap
uses: ./.github/actions/checkout-submodules-and-bootstrap
with:
platform: linux
- name: Build Apps
run: |
scripts/run_in_build_env.sh './scripts/build_python.sh --install_virtual_env out/venv'
./scripts/run_in_build_env.sh \
"./scripts/build/build_examples.py \
--target linux-x64-chip-tool \
--target linux-x64-all-clusters \
build \
--copy-artifacts-to objdir-clone \
"
# There is no enough space for running the test withouth cleaning the environment
- name: Clean up
run: |
rm -rf out/*/obj
rm -rf out/*/lib
rm -rf out/*/*.map
rm -rf $PW_ENVIRONMENT_ROOT
git clean -fdx --exclude out
# Without all required apps paths provided as argument, script starts to search for them in the current directory and it takes a lot of time.
- name: Run ble commission test using the python parser sending commands to chip-tool
run: |
./scripts/run_in_vm.sh \
"scripts/run_in_build_env.sh 'pip3 install -r scripts/setup/requirements.ble-wifi-testing.txt' && \
./scripts/run_in_build_env.sh \
\"./scripts/tests/run_test_suite.py \
--runner chip_tool_python \
--target TestCommissionerNodeId \
--chip-tool ./out/linux-x64-chip-tool/chip-tool \
run \
--iterations 1 \
--test-timeout-seconds 120 \
--all-clusters-app ./out/linux-x64-all-clusters/chip-all-clusters-app \
--lock-app ./out/linux-x64-lock/chip-lock-app \
--ota-provider-app ./out/linux-x64-ota-provider/chip-ota-provider-app \
--ota-requestor-app ./out/linux-x64-ota-requestor/chip-ota-requestor-app \
--tv-app ./out/linux-x64-tv-app/chip-tv-app \
--bridge-app ./out/linux-x64-bridge/chip-bridge-app \
--lit-icd-app ./out/linux-x64-lit-icd/lit-icd-app \
--microwave-oven-app .out/linux-x64-microwave-oven/chip-microwave-oven-app \
--rvc-app .out/linux-x64-rvc/chip-rvc-app \
--ble-wifi \
\" \
"