Skip to content

ci: test coffea & dask #13

ci: test coffea & dask

ci: test coffea & dask #13

Workflow file for this run

name: Downstream Tests
on:
pull_request:
paths-ignore:
- README.md
- CONTRIBUTING.md
- CITATION.cff
- LICENSE
- .readthedocs.yml
- docs-img/**
- docs/**
- awkward-cpp/docs/**
- studies/**
schedule:
- cron: 0 12 1 * *
workflow_dispatch:
concurrency:
group: 'downstream-test-${{ github.head_ref || github.run_id }}'
cancel-in-progress: true
env:
# Leverage reproducible builds by setting a constant SOURCE_DATE_EPOCH
# This will ensure that the hash of the awkward-cpp directory remains
# constant for unchanged files, meaning that it can be used for caching
SOURCE_DATE_EPOCH: "1668811211"
jobs:
Linux:
runs-on: ubuntu-20.04
env:
PIP_ONLY_BINARY: cmake
PYTHON_VERSION: "3.10"
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: 'Python ${{ env.PYTHON_VERSION }}'
uses: actions/setup-python@v4
with:
python-version: '${{ env.PYTHON_VERSION }}'
- name: Generate build files
run: pipx run nox -s prepare -- --headers --signatures --tests
- name: Cache awkward-cpp wheel
id: cache-awkward-cpp-wheel
uses: actions/cache@v3
with:
path: ./awkward-cpp/dist
key: ${{ github.job }}-${{ hashFiles('awkward-cpp/**') }}
- name: Build awkward-cpp wheel
if: steps.cache-awkward-cpp-wheel.outputs.cache-hit != 'true'
run: |
python -m pip install build
python -m build -w ./awkward-cpp
- name: Install awkward-cpp
run: python -m pip install -v ./awkward-cpp/dist/*.whl
- name: Build & install awkward
run: python -m pip install -v .
- name: Clone dask-awkward
uses: actions/checkout@v3
with:
repository: dask-contrib/dask-awkward
path: dask-awkward
- name: Install dask-awkward
run: python -m pip install -v "./dask-awkward[test]"
- name: Run dask-awkward tests
env:
DASK_AWKWARD__RAISE_FAILED_META: 1
DASK_AWKWARD__OPTIMIZATION__ON_FAIL: raise
run: python -m pytest -vv -rs tests
working-directory: dask-awkward
- name: Clone coffea
uses: actions/checkout@v3
with:
repository: CoffeaTeam/coffea
path: coffea
- name: Install coffea
run: python -m pip install -v "./coffea[dev,dask]"
- name: Run coffea tests
run: python -m pytest -vv -rs tests/test_dask*
working-directory: coffea