name: CI on: push: branches: - main pull_request: schedule: - cron: '17 3 * * 0' concurrency: group: ${{ github.head_ref || github.ref_name }} cancel-in-progress: true jobs: typos: name: Typos runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: crate-ci/typos@master ruff: name: Ruff runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 - name: "Main Script" run: | pip install ruff ruff check pylint: name: Pylint runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: "Main Script" run: | USE_CONDA_BUILD=1 curl -L -O https://gitlab.tiker.net/inducer/ci-support/raw/master/prepare-and-run-pylint.sh . ./prepare-and-run-pylint.sh "$(basename $GITHUB_REPOSITORY)" examples/*.py test/test_*.py mypy: name: Mypy runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: "Main Script" run: | curl -L -O https://tiker.net/ci-support-v0 . ./ci-support-v0 build_py_project_in_conda_env python -m pip install mypy pytest ./run-mypy.sh pytest3_pocl: name: Pytest Conda Py3 POCL runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: "Main Script" run: | curl -L -O https://tiker.net/ci-support-v0 . ./ci-support-v0 build_py_project_in_conda_env test_py_project pytest3_intel_cl: name: Pytest Conda Py3 Intel runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: "Main Script" run: | curl -L -O https://raw.githubusercontent.com/illinois-scicomp/machine-shop-maintenance/main/install-intel-icd.sh sudo bash ./install-intel-icd.sh CONDA_ENVIRONMENT=.test-conda-env-py3.yml echo "- ocl-icd-system" >> "$CONDA_ENVIRONMENT" sed -i "/pocl/ d" "$CONDA_ENVIRONMENT" export PYOPENCL_TEST=intel source /opt/enable-intel-cl.sh curl -L -O https://tiker.net/ci-support-v0 . ./ci-support-v0 build_py_project_in_conda_env test_py_project examples3: name: Examples Conda Py3 runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: "Main Script" run: | export MPLBACKEND=Agg USE_CONDA_BUILD=1 curl -L -O https://gitlab.tiker.net/inducer/ci-support/raw/main/build-py-project-and-run-examples.sh . ./build-py-project-and-run-examples.sh docs: name: Documentation runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: python-version: '3.x' - name: "Main Script" run: | curl -L -O https://tiker.net/ci-support-v0 . ci-support-v0 build_py_project_in_conda_env conda install graphviz CI_SUPPORT_SPHINX_VERSION_SPECIFIER=">=4.0" build_docs downstream_tests: strategy: matrix: downstream_project: [meshmode, grudge, mirgecom, mirgecom_examples] fail-fast: false name: Tests for downstream project ${{ matrix.downstream_project }} runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - 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" if [[ "$DOWNSTREAM_PROJECT" = "meshmode" ]]; then python ../examples/simple-dg.py --lazy fi # vim: sw=4