5332847644
We are now in the process of extracting edtlib and dtlib into a standalone source code library that we intend to share with other projects. Links related to the work making this standalone: https://pypi.org/project/devicetree/ https://python-devicetree.readthedocs.io/en/latest/ https://github.com/zephyrproject-rtos/python-devicetree This standalone repo includes the same features as what we have in Zephyr, but in its own 'devicetree' python package with PyPI integration, etc. To avoid making this a hard fork, move the code that's being made standalone around in Zephyr into a new scripts/dts/python-devicetree subdirectory, and handle the package and sys.path changes in the various places in the tree that use it. From now on, it will be possible to update the standalone repository by just recursively copying scripts/dts/python-devicetree's contents into it and committing the results. This is an interim step; do NOT 'pip install devicetree' yet. The code in the zephyr repository is still the canonical location. (In the long term, people will get the devicetree package from PyPI just like they do the 'yaml' package today, but that won't happen for the foreseeable future.) This commit is purely intended to avoid a hard fork for the standalone code, and no functional changes besides the package structure and location of the code itself are expected. Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
65 lines
1.9 KiB
YAML
65 lines
1.9 KiB
YAML
# Copyright (c) 2020 Linaro Limited.
|
|
# Copyright (c) 2020 Nordic Semiconductor ASA
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
name: Devicetree script tests
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
- 'scripts/dts/**'
|
|
- '.github/workflows/devicetree_checks.yml'
|
|
pull_request:
|
|
paths:
|
|
- 'scripts/dts/**'
|
|
- '.github/workflows/devicetree_checks.yml'
|
|
|
|
jobs:
|
|
devicetree-checks:
|
|
name: Devicetree script tests
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
python-version: [3.6, 3.7, 3.8]
|
|
os: [ubuntu-latest, macos-latest, windows-latest]
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v2
|
|
- name: Set up Python ${{ matrix.python-version }}
|
|
uses: actions/setup-python@v1
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
- name: cache-pip-linux
|
|
if: startsWith(runner.os, 'Linux')
|
|
uses: actions/cache@v1
|
|
with:
|
|
path: ~/.cache/pip
|
|
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
|
|
restore-keys: |
|
|
${{ runner.os }}-pip-${{ matrix.python-version }}
|
|
- name: cache-pip-mac
|
|
if: startsWith(runner.os, 'macOS')
|
|
uses: actions/cache@v1
|
|
with:
|
|
path: ~/Library/Caches/pip
|
|
# Trailing '-' was just to get a different cache name
|
|
key: ${{ runner.os }}-pip-${{ matrix.python-version }}-
|
|
restore-keys: |
|
|
${{ runner.os }}-pip-${{ matrix.python-version }}-
|
|
- name: cache-pip-win
|
|
if: startsWith(runner.os, 'Windows')
|
|
uses: actions/cache@v1
|
|
with:
|
|
path: ~\AppData\Local\pip\Cache
|
|
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
|
|
restore-keys: |
|
|
${{ runner.os }}-pip-${{ matrix.python-version }}
|
|
- name: install python dependencies
|
|
run: |
|
|
pip3 install wheel
|
|
pip3 install pytest pyyaml tox
|
|
- name: run tox
|
|
working-directory: scripts/dts/python-devicetree
|
|
run: |
|
|
tox
|