Skip to content

Commit

Permalink
tests bsim/net: Separate bsim networking and bluetooth tests.
Browse files Browse the repository at this point in the history
Splitting bsim tests workflows to be triggered separatley for networking
(thread/802.15.4) and bluetooth tests.

Signed-off-by: Przemyslaw Bida <[email protected]>
  • Loading branch information
canisLupus1313 authored and stephanosio committed Apr 12, 2023
1 parent 16ada3e commit 32c566a
Show file tree
Hide file tree
Showing 5 changed files with 107 additions and 11 deletions.
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
name: BabbleSim Tests
name: BabbleSim BT Tests

on:
pull_request:
paths:
- ".github/workflows/bsim-test*.yaml"
- ".github/workflows/bsim-tests-bluetooth.yaml"
- ".github/workflows/bsim-tests-publish.yaml"
- "west.yml"
- "subsys/bluetooth/**"
- "tests/bsim/**"
- "tests/bsim/bluetooth/**"
- "samples/bluetooth/**"
- "samples/net/sockets/echo_*/**"
- "boards/posix/**"
- "soc/posix/**"
- "arch/posix/**"
Expand All @@ -18,7 +18,7 @@ concurrency:
cancel-in-progress: true

jobs:
bsim-test:
bsim-test-bluetooth:
if: github.repository_owner == 'zephyrproject-rtos'
runs-on: zephyr-runner-linux-x64-4xlarge
container:
Expand Down Expand Up @@ -68,12 +68,12 @@ jobs:
west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /github/cache/zephyrproject)
west forall -c 'git reset --hard HEAD'
- name: Run Networking Tests with BSIM
- name: Run Bluetooth Tests with BSIM
run: |
export ZEPHYR_BASE=${PWD}
WORK_DIR=${ZEPHYR_BASE}/bsim_out tests/bsim/compile.sh
WORK_DIR=${ZEPHYR_BASE}/bsim_out tests/bsim/bluetooth/compile.sh
RESULTS_FILE=${ZEPHYR_BASE}/${bsim_test_results_file} \
SEARCH_PATH=tests/bsim/ tests/bsim/run_parallel.sh
SEARCH_PATH=tests/bsim/bluetooth/ tests/bsim/run_parallel.sh
- name: Upload Test Results
if: always()
Expand Down
97 changes: 97 additions & 0 deletions .github/workflows/bsim-tests-networking.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
name: BabbleSim Networking Tests

on:
pull_request:
paths:
- ".github/workflows/bsim-tests-networking.yaml"
- ".github/workflows/bsim-tests-publish.yaml"
- "west.yml"
- "tests/bsim/net/**"
- "samples/net/sockets/echo_*/**"
- "modules/openthread/**"
- "subsys/net/l2/openthread/**"
- "include/zephyr/net/openthread.h"
- "boards/posix/**"
- "soc/posix/**"
- "arch/posix/**"
- "drivers/ieee802154/**"
- "include/zephyr/net/ieee802154*"

concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true

jobs:
bsim-test-networking:
if: github.repository_owner == 'zephyrproject-rtos'
runs-on: zephyr-runner-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci:v0.25.1
options: '--entrypoint /bin/bash'
volumes:
- /repo-cache/zephyrproject:/github/cache/zephyrproject
env:
ZEPHYR_TOOLCHAIN_VARIANT: zephyr
ZEPHYR_SDK_INSTALL_DIR: /opt/toolchains/zephyr-sdk-0.16.0
BSIM_OUT_PATH: /opt/bsim/
BSIM_COMPONENTS_PATH: /opt/bsim/components
EDTT_PATH: ../tools/edtt
bsim_test_results_file: ./bsim_out/bsim_results.xml
steps:
- name: Apply container owner mismatch workaround
run: |
# FIXME: The owner UID of the GITHUB_WORKSPACE directory may not
# match the container user UID because of the way GitHub
# Actions runner is implemented. Remove this workaround when
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Clone cached Zephyr repository
continue-on-error: true
run: |
git clone --shared /github/cache/zephyrproject/zephyr .
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Environment Setup
env:
BASE_REF: ${{ github.base_ref }}
run: |
git config --global user.email "[email protected]"
git config --global user.name "Zephyr Bot"
rm -fr ".git/rebase-apply"
git rebase origin/${BASE_REF}
git log --pretty=oneline | head -n 10
west init -l . || true
west config manifest.group-filter -- +ci
west config --global update.narrow true
west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /github/cache/zephyrproject)
west forall -c 'git reset --hard HEAD'
- name: Run Networking Tests with BSIM
run: |
export ZEPHYR_BASE=${PWD}
WORK_DIR=${ZEPHYR_BASE}/bsim_out tests/bsim/net/compile.sh
RESULTS_FILE=${ZEPHYR_BASE}/${bsim_test_results_file} \
SEARCH_PATH=tests/bsim/net/ tests/bsim/run_parallel.sh
- name: Upload Test Results
if: always()
uses: actions/upload-artifact@v3
with:
name: bsim-test-results
path: |
./bsim_out/bsim_results.xml
${{ github.event_path }}
- name: Upload Event Details
if: always()
uses: actions/upload-artifact@v3
with:
name: event
path: |
${{ github.event_path }}
3 changes: 1 addition & 2 deletions .github/workflows/bsim-tests-publish.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: Publish BabbleSim Tests Results

on:
workflow_run:
workflows: ["BabbleSim Tests"]
workflows: ["BabbleSim BT Tests", "BabbleSim Networking Tests"]
types:
- completed
jobs:
Expand All @@ -15,7 +15,6 @@ jobs:
- name: Download artifacts
uses: dawidd6/action-download-artifact@v2
with:
workflow: bsim-tests.yaml
run_id: ${{ github.event.workflow_run.id }}

- name: Publish BabbleSim Test Results
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ sanity-out*
twister-out*
bsim_out
bsim_bt_out
tests/RunResults.xml
scripts/grub
doc/reference/kconfig/*.rst
doc/doc.warnings
Expand Down
1 change: 0 additions & 1 deletion tests/bsim/compile.sh → tests/bsim/bluetooth/compile.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,5 @@ run_in_background ${ZEPHYR_BASE}/tests/bsim/bluetooth/audio/compile.sh
run_in_background ${ZEPHYR_BASE}/tests/bsim/bluetooth/host/compile.sh
run_in_background ${ZEPHYR_BASE}/tests/bsim/bluetooth/ll/compile.sh
run_in_background ${ZEPHYR_BASE}/tests/bsim/bluetooth/mesh/compile.sh
run_in_background ${ZEPHYR_BASE}/tests/bsim/net/compile.sh

wait_for_background_jobs

0 comments on commit 32c566a

Please sign in to comment.