From eeb142d40976eec4edcd1a6e144a6d23e4f9d50c Mon Sep 17 00:00:00 2001 From: Lukasz Mrugala Date: Thu, 5 Oct 2023 13:45:28 +0200 Subject: [PATCH] .github: workflows: Workflow for build_helpers PR #63195 has managed to change code under test without triggering those tests. This change should remedy that by creating a new workflow, based on twister_tests.yaml, that runs tests in scripts/tests/build_helpers if build_helpers are modified. Such a workflow should be easily extendable if we ever have more non-Twister things to test in scripts/pylib. Signed-off-by: Lukasz Mrugala --- .github/workflows/pylib_tests.yml | 54 +++++++++++++++++++ .../test_domains.py | 2 +- 2 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/pylib_tests.yml rename scripts/tests/{twister => build_helpers}/test_domains.py (98%) diff --git a/.github/workflows/pylib_tests.yml b/.github/workflows/pylib_tests.yml new file mode 100644 index 0000000000..06f61f32c2 --- /dev/null +++ b/.github/workflows/pylib_tests.yml @@ -0,0 +1,54 @@ +# Copyright (c) 2023 Intel Corporation. +# SPDX-License-Identifier: Apache-2.0 + +name: Misc. Pylib Scripts TestSuite + +on: + push: + branches: + - main + - v*-branch + paths: + - 'scripts/pylib/build_helpers/**' + - '.github/workflows/pylib_tests.yml' + pull_request: + branches: + - main + - v*-branch + paths: + - 'scripts/pylib/build_helpers/**' + - '.github/workflows/pylib_tests.yml' + +jobs: + pylib-tests: + name: Misc. Pylib Unit Tests + runs-on: ${{ matrix.os }} + strategy: + matrix: + python-version: [3.8, 3.9, '3.10'] + os: [ubuntu-22.04] + steps: + - name: checkout + uses: actions/checkout@v3 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + - name: cache-pip-linux + if: startsWith(runner.os, 'Linux') + uses: actions/cache@v3 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ matrix.python-version }} + restore-keys: | + ${{ runner.os }}-pip-${{ matrix.python-version }} + - name: install-packages + run: | + pip3 install -r scripts/requirements-base.txt -r scripts/requirements-build-test.txt + - name: Run pytest for build_helpers + env: + ZEPHYR_BASE: ./ + ZEPHYR_TOOLCHAIN_VARIANT: zephyr + run: | + echo "Run build_helpers tests" + PYTHONPATH=./scripts/tests pytest ./scripts/tests/build_helpers diff --git a/scripts/tests/twister/test_domains.py b/scripts/tests/build_helpers/test_domains.py similarity index 98% rename from scripts/tests/twister/test_domains.py rename to scripts/tests/build_helpers/test_domains.py index 2222b14269..0ebdeaf6cb 100644 --- a/scripts/tests/twister/test_domains.py +++ b/scripts/tests/build_helpers/test_domains.py @@ -12,7 +12,7 @@ import pytest import sys ZEPHYR_BASE = os.getenv("ZEPHYR_BASE") -sys.path.insert(0, os.path.join(ZEPHYR_BASE, "scripts/pylib/twister")) +sys.path.insert(0, os.path.join(ZEPHYR_BASE, "scripts/pylib/build_helpers")) import domains