Skip to content

release: Build an arm64 wheel alongside the x86_64 one #121

release: Build an arm64 wheel alongside the x86_64 one

release: Build an arm64 wheel alongside the x86_64 one #121

Workflow file for this run

name: Python linting and testing
on:
push:
pull_request:
jobs:
lint_and_test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.9", "3.10"]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install Poetry
uses: snok/install-poetry@v1
with:
version: 1.8.5
virtualenvs-create: true
virtualenvs-in-project: true
virtualenvs-path: .venv
installer-parallel: true
- name: Install musl-tools
run: |
sudo apt-get update
sudo apt-get install -y musl-tools
- name: Build init binary
run: |
make
- name: Install dependencies
run: |
# pylibfdt builds its SWIG wrapper from source, and swig 4.5 dropped
# the PyInt_* macros that wrapper still uses. Poetry builds sdists
# with "pip --isolated", which ignores PIP_CONSTRAINT, so build
# pylibfdt ourselves with a pinned swig and let poetry find it.
poetry run python -m pip install "swig<4.5" setuptools setuptools_scm
poetry run python -m pip install --no-build-isolation "pylibfdt>=1.7.0,<2"
poetry install --no-interaction
- name: Analysing the code with pylint
run: |
source .venv/bin/activate
pylint $(git ls-files '*.py')
- name: Running the tests with pytest
run: |
source .venv/bin/activate
python -m pytest