With CMake minimum required as 3.20.0 we update CI to use docker image v0.18.2, which contains CMake 3.20.5. For doc builds we fetch the same CMake v3.20.5 but using pip as the doc build doesn't use the docker image. The main reason for increasing CMake version is better toolchain support. The decision to bump the CMake version was taken by the Toolchain WG. Better toolchain support is added in the following CMake versions: - armclang, CMake 3.15 - Intel oneAPI, CMake 3.20 - IAR, CMake 3.15 and 3.20 Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
86 lines
2.4 KiB
YAML
86 lines
2.4 KiB
YAML
name: Bluetooth Tests
|
|
|
|
on:
|
|
pull_request_target:
|
|
paths:
|
|
- "west.yml"
|
|
- "subsys/bluetooth/**"
|
|
- "tests/bluetooth/bsim_bt/**"
|
|
- "boards/posix/**"
|
|
- "soc/posix/**"
|
|
- "arch/posix/**"
|
|
|
|
jobs:
|
|
bsim-build-cancel:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Cancel Previous Runs
|
|
uses: styfle/cancel-workflow-action@0.6.0
|
|
with:
|
|
access_token: ${{ github.token }}
|
|
bsim-build:
|
|
runs-on: ubuntu-latest
|
|
needs: bsim-build-cancel
|
|
container:
|
|
image: zephyrprojectrtos/ci:v0.18.2
|
|
options: '--entrypoint /bin/bash'
|
|
env:
|
|
ZEPHYR_TOOLCHAIN_VARIANT: zephyr
|
|
ZEPHYR_SDK_INSTALL_DIR: /opt/toolchains/zephyr-sdk-0.13.0
|
|
CLANG_ROOT_DIR: /usr/lib/llvm-12
|
|
BSIM_OUT_PATH: /opt/bsim/
|
|
BSIM_COMPONENTS_PATH: /opt/bsim/components
|
|
EDTT_PATH: ../tools/edtt
|
|
bsim_bt_test_results_file: ./bsim_bt_out/bsim_results.xml
|
|
steps:
|
|
- name: Update PATH for west
|
|
run: |
|
|
echo "$HOME/.local/bin" >> $GITHUB_PATH
|
|
|
|
- name: checkout
|
|
uses: actions/checkout@v2
|
|
with:
|
|
ref: ${{ github.event.pull_request.head.sha }}
|
|
fetch-depth: 0
|
|
|
|
- name: west setup
|
|
run: |
|
|
west init -l . || true
|
|
west update
|
|
|
|
- name: Run Bluetooth Tests with BSIM
|
|
run: |
|
|
#source zephyr-env.sh
|
|
export ZEPHYR_BASE=${PWD}
|
|
WORK_DIR=${ZEPHYR_BASE}/bsim_bt_out tests/bluetooth/bsim_bt/compile.sh
|
|
RESULTS_FILE=${ZEPHYR_BASE}/${bsim_bt_test_results_file} \
|
|
SEARCH_PATH=tests/bluetooth/bsim_bt/ tests/bluetooth/bsim_bt/run_parallel.sh
|
|
|
|
- name: Upload Test Results
|
|
if: always()
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Bluetooth Test Results
|
|
path: ./bsim_bt_out/bsim_results.xml
|
|
|
|
publish-test-results:
|
|
name: "Publish Unit Tests Results"
|
|
needs: bsim-build
|
|
runs-on: ubuntu-20.04
|
|
# the build-and-test job might be skipped, we don't need to run this job then
|
|
if: success() || failure()
|
|
|
|
steps:
|
|
- name: Download Artifacts
|
|
uses: actions/download-artifact@v2
|
|
with:
|
|
path: artifacts
|
|
|
|
- name: Publish Unit Test Results
|
|
uses: EnricoMi/publish-unit-test-result-action@v1.12
|
|
with:
|
|
check_name: Bluetooth Test Results
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
files: "**/bsim_results.xml"
|
|
comment_on_pr: false
|