Skip to content

Workflow file for this run

name: Test/Coverage with Python
on:
push:
pull_request:
branches:
- main
schedule:
# Run every night at 04:00 (GitHub Actions timezone)
# in order to catch when unfrozen dependency updates
# break the use of the library.
- cron: '4 0 * * *'
jobs:
build:
strategy:
matrix:
python-version: [ "3.9", "3.10", "3.11", "3.12" ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- run: sudo apt-get install -y python3-pip libsecp256k1-dev libgmp-dev
- run: |
python3 -m venv /tmp/venv
python -m pip install --upgrade pip
/tmp/venv/bin/python -m pip install --upgrade pip hatch hatchling coverage
- name: Install secp256k1 for Python 3.12
if: matrix.python-version == '3.12'
run: |
python -m pip install secp256k1
- run: |
/tmp/venv/bin/pip freeze
/tmp/venv/bin/hatch run testing:test
if: matrix.python-version != '3.11'
- run: /tmp/venv/bin/hatch run testing:cov
if: matrix.python-version == '3.11'
- uses: codecov/codecov-action@v4.0.1
if: matrix.python-version == '3.11'
with:
token: ${{ secrets.CODECOV_TOKEN }}
slug: aleph-im/aleph-sdk-python