Add optional file-based listings caching #14
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: CI | |
on: | |
push: | |
branches: ["*"] | |
pull_request: | |
branches: [master] | |
jobs: | |
linux: | |
name: ${{ matrix.PY }}-pytest | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
PY: ["3.8", "3.9", "3.10", "3.11", "3.12"] | |
env: | |
CIRUN: true | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Setup conda | |
uses: mamba-org/setup-micromamba@v1 | |
with: | |
environment-file: ci/environment-py38.yml | |
create-args: >- | |
python=${{ matrix.PY }} | |
- name: Run Tests | |
shell: bash -l {0} | |
run: | | |
pip install s3fs | |
pip uninstall s3fs | |
pip install -e .[test_full] | |
pip install s3fs --no-deps | |
pytest -v | |
win: | |
name: pytest-win | |
runs-on: windows-2019 | |
env: | |
CIRUN: true | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Setup conda | |
uses: mamba-org/setup-micromamba@v1 | |
with: | |
environment-file: ci/environment-win.yml | |
- name: Run Tests | |
shell: bash -l {0} | |
run: | | |
pip install s3fs | |
pip uninstall s3fs | |
pip install -e .[test] | |
pip install s3fs --no-deps | |
pytest -v | |
lint: | |
name: lint | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@main | |
- uses: actions/setup-python@main | |
with: | |
python-version: "3.11" | |
- uses: pre-commit/action@main | |
# typecheck: | |
# runs-on: ubuntu-latest | |
# steps: | |
# - name: Checkout | |
# uses: actions/checkout@v4 | |
# | |
# - name: Setup conda | |
# uses: mamba-org/setup-micromamba@v1 | |
# with: | |
# environment-file: ci/environment-typecheck.yml | |
# | |
# - name: mypy | |
# shell: bash -l {0} | |
# run: | | |
# mypy fsspec | |
# | |
downstream: | |
name: downstream | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Setup conda | |
uses: mamba-org/setup-micromamba@v1 | |
with: | |
environment-file: ci/environment-downstream.yml | |
- name: Local install | |
shell: bash -l {0} | |
run: | | |
sh install_s3fs.sh | |
pip install -e .[test,test_downstream] | |
pip list | |
- name: Run fsspec tests | |
shell: bash -l {0} | |
run: | | |
pytest -v fsspec/tests/test_downstream.py | |
- name: Run dask tests | |
shell: bash -l {0} | |
run: | | |
dask_test_path=$(python -c "import dask.bytes;print(dask.bytes.__path__[0])") | |
pytest -v $dask_test_path | |
fsspec_friends: | |
name: ${{ matrix.FRIEND }}-pytest | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
FRIEND: [gcsfs, s3fs] | |
env: | |
CIRUN: true | |
BOTO_CONFIG: /dev/null | |
AWS_ACCESS_KEY_ID: foobar_key | |
AWS_SECRET_ACCESS_KEY: foobar_secret | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup conda | |
uses: mamba-org/setup-micromamba@v1 | |
with: | |
environment-file: ci/environment-friends.yml | |
- name: Clone | |
shell: bash -l {0} | |
run: git clone https://github.com/fsspec/${{ matrix.FRIEND }} | |
- name: Install | |
shell: bash -l {0} | |
run: | | |
pip install -e . --no-deps | |
pip install -e ./${{ matrix.FRIEND }} --no-deps | |
- name: Test | |
shell: bash -l {0} | |
run: pytest -v ${{ matrix.FRIEND }} |