Skip to content

feat: Adding filter_cdx and warc_by_cdx commands (2) #13

feat: Adding filter_cdx and warc_by_cdx commands (2)

feat: Adding filter_cdx and warc_by_cdx commands (2) #13

name: CI (only feature)
on:
push:
branches:
- main
pull_request:
branches:
- main
# These permissions are needed to interact with AWS S3 via GitHub's OIDC Token endpoint
permissions:
id-token: write
contents: read
pull-requests: read
jobs:
unit-tests:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
max-parallel: 1 # avoids ever triggering a rate limit
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
os: [ubuntu-latest]
EXTRA: [false] # used to force includes to get included
include:
- python-version: '3.12'
os: ubuntu-latest
EXTRA: true
env:
LOGLEVEL=DEBUG
- python-version: '3.8'
os: ubuntu-22.04 # oldest version on github actions
EXTRA: true
steps:
- name: checkout
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install setuptools on python 3.12+
if: ${{ matrix.python-version >= '3.12' }}
run: |
pip install setuptools
- name: Install cdx_toolkit
run: pip install .[test]
- name: Configure AWS credentials from OIDC
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: arn:aws:iam::837454214164:role/GitHubActions-Role
aws-region: us-east-1
- name: Disable S3 unit tests for Python < 3.9
run: |
if [[ "${{ matrix.python-version }}" < "3.9" ]]; then
echo "CDXT_DISABLE_S3_TESTS=1" >> $GITHUB_ENV
fi
- name: Run tests (feature only)
run: |
PYTHONPATH=. py.test -rA -s --doctest-modules --cov-report=xml --cov-append --cov cdx_toolkit tests/warc_by_cdx tests/unit -v -v
coverage report
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}