diff --git a/.github/workflows/west_cmds.yml b/.github/workflows/west_cmds.yml new file mode 100644 index 00000000000..63f1208bc1d --- /dev/null +++ b/.github/workflows/west_cmds.yml @@ -0,0 +1,65 @@ +# Copyright (c) 2020 Linaro Limited. +# SPDX-License-Identifier: Apache-2.0 + +name: Zephyr West Command Tests + +on: + push: + paths: + - 'scripts/west-commands.yml' + - 'scripts/west_commands/**' + pull_request: + paths: + - 'scripts/west-commands.yml' + - 'scripts/west_commands/**' + +jobs: + build: + 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 pytest + run: | + pip3 install pytest west + - name: run pytest-win + if: runner.os == 'Windows' + run: | + cmd /C "set PYTHONPATH=.\scripts\west_commands && pytest ./scripts/west_commands/tests/" + - name: run pytest-mac-linux + if: runner.os != 'Windows' + run: | + PYTHONPATH=./scripts/west_commands pytest ./scripts/west_commands/tests/ diff --git a/CODEOWNERS b/CODEOWNERS index cf7eac8906a..00ba7f48152 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -14,6 +14,7 @@ # * @galak @nashif /.known-issues/ @inakypg @nashif +/.github/workflows/ @galak @nashif /arch/arc/ @vonhust @ruuddw /arch/arm/ @MaureenHelm @galak @ioannisg /arch/arm/core/aarch32/cortex_m/cmse/ @ioannisg diff --git a/scripts/ci/run_ci.sh b/scripts/ci/run_ci.sh index a9c7d288afb..d79f974e957 100755 --- a/scripts/ci/run_ci.sh +++ b/scripts/ci/run_ci.sh @@ -110,11 +110,6 @@ function on_complete() { cp ${bsim_bt_test_results_file} shippable/testresults/ fi - if [ -e ${west_commands_results_file} ]; then - echo "Copy ${west_commands_results_file}" - cp ${west_commands_results_file} shippable/testresults - fi - if [ "$matrix" = "1" ]; then echo "Skip handling coverage data..." #handle_coverage @@ -245,20 +240,6 @@ if [ -n "$main_ci" ]; then echo "Skipping BT simulator tests" fi - if [ "$matrix" = "1" ]; then - # Run pytest-based testing for Python in matrix - # builder 1. For now, this is just done for the west - # extension commands, but additional directories which - # run pytest could go here too. - pytest=$(type -p pytest-3 || echo "pytest") - mkdir -p $(dirname ${west_commands_results_file}) - PYTHONPATH=./scripts/west_commands "${pytest}" \ - --junitxml=${west_commands_results_file} \ - ./scripts/west_commands/tests - else - echo "Skipping west command tests" - fi - # cleanup rm -f test_file.txt touch test_file_1.txt test_file_2.txt