name: CI on: push: branches: - main pull_request: paths-ignore: - 'doc/*.rst' schedule: - cron: '17 3 * * 0' jobs: flake8: name: Flake8 runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v1 with: # matches compat target in setup.py python-version: '3.6' - name: "Main Script" run: | curl -L -O https://gitlab.tiker.net/inducer/ci-support/raw/main/prepare-and-run-flake8.sh . ./prepare-and-run-flake8.sh "$(basename $GITHUB_REPOSITORY)" ./test validate_cff: name: Validate CITATION.cff runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v1 - run: | pip install cffconvert cffconvert -i CITATION.cff --validate pylint: name: Pylint 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="pymbolic" curl -L -O 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 https://gitlab.tiker.net/inducer/ci-support/raw/main/prepare-and-run-mypy.sh . ./prepare-and-run-mypy.sh python3 mypy pytest: name: Pytest on Py${{ matrix.python-version }} runs-on: ubuntu-latest strategy: matrix: python-version: ["3.6", "3.8", "3.9", "3.x", pypy3] steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v1 with: python-version: ${{ matrix.python-version }} - name: "Main Script" run: | # 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 # AK, 2020-12-13 rm pytools/log.py EXTRA_INSTALL="numpy" curl -L -O 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 https://tiker.net/ci-support-v0 # . ./ci-support-v0 # 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 https://tiker.net/ci-support-v0 . ./ci-support-v0 test_downstream "$DOWNSTREAM_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 https://tiker.net/ci-support-v0 . ci-support-v0 build_py_project_in_venv build_docs # vim: sw=4