1# 2# Copyright (c) 2020, The OpenThread Authors. 3# All rights reserved. 4# 5# Redistribution and use in source and binary forms, with or without 6# modification, are permitted provided that the following conditions are met: 7# 1. Redistributions of source code must retain the above copyright 8# notice, this list of conditions and the following disclaimer. 9# 2. Redistributions in binary form must reproduce the above copyright 10# notice, this list of conditions and the following disclaimer in the 11# documentation and/or other materials provided with the distribution. 12# 3. Neither the name of the copyright holder nor the 13# names of its contributors may be used to endorse or promote products 14# derived from this software without specific prior written permission. 15# 16# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 17# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 20# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 21# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 22# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 23# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 24# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 25# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 26# POSSIBILITY OF SUCH DAMAGE. 27# 28 29name: MeshCoP 30 31on: 32 push: 33 branches-ignore: 34 - 'dependabot/**' 35 pull_request: 36 branches: 37 - 'main' 38 39concurrency: 40 group: ${{ github.workflow }}-${{ github.event.pull_request.number || (github.repository == 'openthread/ot-br-posix' && github.run_id) || github.ref }} 41 cancel-in-progress: true 42 43jobs: 44 45 meshcop: 46 runs-on: ubuntu-latest 47 strategy: 48 fail-fast: false 49 matrix: 50 mdns: ["avahi"] 51 steps: 52 - uses: actions/checkout@v4 53 with: 54 submodules: true 55 - name: Bootstrap 56 env: 57 BUILD_TARGET: "meshcop" 58 OTBR_MDNS: ${{ matrix.mdns }} 59 run: tests/scripts/bootstrap.sh 60 - name: Build 61 env: 62 OTBR_MDNS: ${{ matrix.mdns }} 63 OTBR_COVERAGE: 1 64 run: | 65 script/bootstrap 66 script/test build 67 - name: mDNS service 68 env: 69 TEST_CASE: "mdns_service" 70 run: OTBR_VERBOSE=${RUNNER_DEBUG:-0} script/test meshcop 71 - name: MTD 72 env: 73 OT_CLI: "ot-cli-mtd" 74 run: OTBR_VERBOSE=${RUNNER_DEBUG:-0} script/test meshcop 75 - name: FTD 76 env: 77 OT_CLI: "ot-cli-ftd" 78 run: OTBR_VERBOSE=${RUNNER_DEBUG:-0} script/test meshcop 79 - name: Web Commissioner 80 env: 81 OTBR_USE_WEB_COMMISSIONER: 1 82 run: OTBR_VERBOSE=${RUNNER_DEBUG:-0} script/test meshcop 83 - name: Codecov 84 uses: codecov/codecov-action@v5 85