Skip to content

ci: unify CI jobs

ci: unify CI jobs #2

Workflow file for this run

name: CI
on:
push:
branches:
- master
- dev
pull_request:
schedule:
# run CI every day even if no PRs/merges occur
- cron: '0 12 * * *'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
tests:
name: CI (Python ${{ matrix.python }} on ${{ matrix.os }}, ${{ matrix.type}} test)
runs-on: ${{ matrix.os }}
strategy:
matrix:
python: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]
os: ["ubuntu-latest", "macos-latest", "windows-2022"]
include:
- type: "solc"
- type: "solc_upgrade"
- type: "linux"
os: "ubuntu-latest"
- type: "macos"
os: "macos-latest"
- type: "windows"
os: "windows-2022"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
- name: Install solc-select
run: |
${{ (matrix.os != 'windows-2022' && 'sudo pip install .') || 'pip install . --user' }}
solc-select install all
- name: Run Tests
env:
TEST_TYPE: ${{ matrix.type }}
run: |
bash scripts/test_${TEST_TYPE}.sh