| # Copyright (c) 2020 Linaro Limited. |
| # Copyright (c) 2020 Nordic Semiconductor ASA |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| name: Devicetree script tests |
| |
| on: |
| push: |
| branches: |
| - main |
| - v*-branch |
| paths: |
| - 'scripts/dts/**' |
| - '.github/workflows/devicetree_checks.yml' |
| pull_request: |
| branches: |
| - main |
| - v*-branch |
| paths: |
| - 'scripts/dts/**' |
| - '.github/workflows/devicetree_checks.yml' |
| |
| permissions: |
| contents: read |
| |
| concurrency: |
| group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }} |
| cancel-in-progress: true |
| |
| jobs: |
| devicetree-checks: |
| name: Devicetree script tests |
| runs-on: ${{ matrix.os }} |
| timeout-minutes: 30 |
| strategy: |
| matrix: |
| python-version: ['3.12', '3.13'] |
| os: [ubuntu-24.04, macos-14, windows-2025] |
| steps: |
| - name: checkout |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 |
| with: |
| persist-credentials: false |
| |
| - name: Set up Python ${{ matrix.python-version }} |
| uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 |
| with: |
| python-version: ${{ matrix.python-version }} |
| cache: pip |
| cache-dependency-path: scripts/requirements-actions.txt |
| |
| - name: Install Python packages |
| run: | |
| pip install -r scripts/requirements-actions.txt --require-hashes |
| |
| - name: run tox |
| working-directory: scripts/dts/python-devicetree |
| run: | |
| tox |