| 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.4 |
| options: '--entrypoint /bin/bash' |
| env: |
| ZEPHYR_TOOLCHAIN_VARIANT: zephyr |
| ZEPHYR_SDK_INSTALL_DIR: /opt/toolchains/zephyr-sdk-0.13.1 |
| 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 |