WIP: CI(GHActions): Limit tests #131
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Test, build, publish | |
# Run tests (all branches), | |
# for tags build wheels, publish wheels to PyPI and Github Releases. | |
on: [push, pull_request] | |
jobs: | |
run-tests: | |
env: | |
not_in_conda: "[]" | |
not_in_aarch64: "['3.5', 'pypy3.7']" | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
python-version: ["2.7"] | |
include: | |
- os: ubuntu-latest | |
os-name: Linux | |
pip-cache-path: ~/.cache/pip | |
name: Python ${{ matrix.python-version }} @ ${{ matrix.os-name }} | |
runs-on: ${{ matrix.os }} | |
steps: | |
# Setup Python/pip | |
- uses: actions/checkout@v4 | |
- name: Build and publish wheel on Linux/aarch64 | |
uses: uraimo/run-on-arch-action@v2 | |
with: | |
arch: aarch64 | |
distro: ubuntu22.04 | |
env: | | |
PY_VER: "${{ matrix.python-version }}" | |
RUNNER_OS: ${{ runner.os }} | |
install: | | |
set -ex | |
apt-get update -q -y | |
apt-get install -q -y curl gcc patchelf | |
run: | | |
set -ex | |
curl -L -O "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh" | |
bash Miniforge3-$(uname)-$(uname -m).sh -b -u -p "$HOME"/miniforge3 | |
source "$HOME"/miniforge3/etc/profile.d/conda.sh | |
#conda update -n base -c conda-forge --yes conda | |
conda create -n $PY_VER --yes python=$PY_VER | |
conda activate $PY_VER | |
python --version | |
python -m pip || python -m ensurepip --default-pip --upgrade | |
python -m pip install --upgrade pip setuptools wheel | |
pip --version | |
if [ $PY_VER = 2.7 ]; then | |
conda create -n py37 python=3.7 | |
ln -s "$HOME"/miniforge3/envs/py37/bin/python3.7 "$HOME"/miniforge3/envs/py37/bin/pip3.7 "$HOME"/miniforge3/envs/py27/bin/ | |
python3.7 --version | |
pip3.7 --version | |
fi | |
exec devscripts/CI/ghactions-release | |
if: ${{ !contains(fromJSON(env.not_in_aarch64), matrix.python-version) && runner.os == 'Linux' }} | |
- name: Check dist | |
run: exec ls -lAF dist | |
shell: bash | |
if: ${{ !contains(fromJSON(env.not_in_aarch64), matrix.python-version) && runner.os == 'Linux' }} |