Newer
Older
pull_request:
paths-ignore:
- 'doc/*.rst'
schedule:
- cron: '17 3 * * 0'
jobs:
name: Flake8
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
uses: actions/setup-python@v1
# matches compat target in setup.py
python-version: '3.6'
- name: "Main Script"
run: |
curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/main/prepare-and-run-flake8.sh
. ./prepare-and-run-flake8.sh "$(basename $GITHUB_REPOSITORY)" ./test
pylint:
name: Pylint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
-
uses: actions/setup-python@v1
with:
- name: "Main Script"
run: |
EXTRA_INSTALL="pymbolic"
curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/main/prepare-and-run-pylint.sh
. ./prepare-and-run-pylint.sh "$(basename $GITHUB_REPOSITORY)" test/test_*.py
mypy:
name: Mypy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
-
uses: actions/setup-python@v1
with:
python-version: '3.x'
- name: "Main Script"
run: |
curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/main/prepare-and-run-mypy.sh
pytest:
name: Pytest on Py${{ matrix.python-version }}
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.6", "3.7", "3.8", "3.9", pypy3]
steps:
- uses: actions/checkout@v2
-
uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
- name: "Main Script"
run: |
Andreas Klöckner
committed
# untested, causes import error with Pytest >= 6.2.0
# AK, 2020-12-13
rm pytools/mpiwrap.py
# just a forwarding shim, causes import error with Pytest >= 6.2.0
Andreas Klöckner
committed
# AK, 2020-12-13
rm pytools/log.py
curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/main/build-and-test-py-project.sh
. ./build-and-test-py-project.sh
#examples:
# name: Examples Py3
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v2
# -
# uses: actions/setup-python@v1
# with:
# python-version: '3.x'
# - name: "Main Script"
# run: |
# EXTRA_INSTALL="numpy pymbolic"
# curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/main/ci-support.sh
# . ./ci-support.sh
# build_py_project_in_venv
# run_examples
downstream_tests:
strategy:
matrix:
downstream_project: [loopy, pytato]
name: Tests for downstream project ${{ matrix.downstream_project }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: "Main Script"
env:
DOWNSTREAM_PROJECT: ${{ matrix.downstream_project }}
run: |
curl -L -O -k https://tiker.net/ci-support-v0
. ./ci-support-v0
git clone "https://github.com/inducer/$DOWNSTREAM_PROJECT.git"
cd "$DOWNSTREAM_PROJECT"
echo "*** $DOWNSTREAM_PROJECT version: $(git rev-parse --short HEAD)"
edit_requirements_txt_for_downstream_in_subdir
# HACK: force overwrite even if it's already there (e.g. as a pyopencl dep)
sed -i '/egg=pytools/ s/^/-e/' requirements.txt
export CONDA_ENVIRONMENT=.test-conda-env-py3.yml
# Avoid slow or complicated tests in downstream projects
export PYTEST_ADDOPTS="-k 'not (slowtest or octave or mpi)'"
build_py_project_in_conda_env
test_py_project
docs:
name: Documentation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
-
uses: actions/setup-python@v1
with:
python-version: '3.x'
- name: "Main Script"
run: |
EXTRA_INSTALL="numpy"
curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/main/ci-support.sh
. ci-support.sh
build_py_project_in_venv
build_docs