Skip to content

Fix orchestration tests by upgrading to newer prefect. #1411

Fix orchestration tests by upgrading to newer prefect.

Fix orchestration tests by upgrading to newer prefect. #1411

Workflow file for this run

name: Tests
on:
push:
paths-ignore:
- 'docs/**'
branches:
- main
pull_request:
paths-ignore:
- 'docs/**'
branches:
- '**'
# Automatically stop old builds on the same branch/PR
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event.number }}
cancel-in-progress: true
jobs:
lint:
name: Pre-commit Checks
timeout-minutes: 5
runs-on: ubuntu-latest
steps:
- name: Checkout branch
uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493 # v4.2.1
- name: Set up pixi
uses: prefix-dev/setup-pixi@194d461b21b6c5717c722ffc597fa91ed2ff29fa # v0.8.1
- name: Install repository
# needed for generate-col-ops hook
run: pixi run postinstall
- name: pre-commit
run: pixi run pre-commit run -a --color=always --show-diff-on-failure
- name: Check pyproject.toml dependencies
run: pixi run check-deps
# one_test:
# name: One Test
# strategy:
# matrix:
# os:
# - ubuntu-latest
# environment:
# - py310mssqlpdt
# uses: ./.github/workflows/test.yml
# with:
# os: ${{ matrix.os }}
# environment: ${{ matrix.environment }}
# docker-services: |
# mssql
# zoo
# pytest-arguments: -m mssql --mssql tests/test_cache/test_basic_cache_invalidation.py::test_change_task_version_table
smoke_test:
name: Smoke Test
# needs: [one_test]
strategy:
matrix:
os:
- ubuntu-latest
environment:
- py312
uses: ./.github/workflows/test.yml
with:
os: ${{ matrix.os }}
environment: ${{ matrix.environment }}
docker-services: |
postgres
zoo
minio
postgres_test:
name: Postgres Tests
needs: [smoke_test]
strategy:
matrix:
os:
- ubuntu-latest
environment:
- py310all
- py311all
- py312all
- py313all
- py310pdt
- py313pdt
- py311cspdt
- py313cspdt
uses: ./.github/workflows/test.yml
with:
os: ${{ matrix.os }}
environment: ${{ matrix.environment }}
docker-services: |
postgres
zoo
pytest-arguments: --ibis --pdtransform --no-duckdb
duckdb_test:
name: DuckDB Tests
needs: [smoke_test]
strategy:
matrix:
os:
- ubuntu-latest
environment:
- py310all
- py312all
- py310pdt
- py313pdt
- py311cspdt
- py313cspdt
uses: ./.github/workflows/test.yml
with:
os: ${{ matrix.os }}
environment: ${{ matrix.environment }}
docker-services: |
zoo
minio
pytest-arguments: --ibis --pdtransform --no-postgres
s3_test:
name: S3 Tests
needs: [smoke_test]
strategy:
matrix:
os:
- ubuntu-latest
environment:
- py310all
- py311all
- py312all
- py313all
- py311cspdt
- py313cspdt
uses: ./.github/workflows/test.yml
with:
os: ${{ matrix.os }}
environment: ${{ matrix.environment }}
docker-services: |
postgres
minio
zoo
pytest-arguments: --s3 --ibis --pdtransform --no-duckdb --no-postgres --no-lock_tests
colspec_test:
name: ColSpec Tests
needs: [smoke_test]
strategy:
matrix:
os:
- ubuntu-latest
environment:
- py311cs
- py313cs
- py311csdy
- py313csdy
- py311dy
- py313dy
uses: ./.github/workflows/test.yml
with:
os: ${{ matrix.os }}
environment: ${{ matrix.environment }}
docker-services: |
postgres
zoo
minio
pytest-arguments: --pdtransform --no-lock_tests
db2_test:
name: DB2 Tests
needs: [smoke_test]
strategy:
matrix:
os:
- ubuntu-latest
environment:
- py310ibm
- py312ibm
uses: ./.github/workflows/test.yml
with:
os: ${{ matrix.os }}
environment: ${{ matrix.environment }}
docker-services: |
ibm_db2
# and --ibis not supported
pytest-arguments: --ibm_db2 -m ibm_db2 --pdtransform --no-postgres --no-duckdb
mssql_test:
name: MSSql Tests
needs: [smoke_test]
strategy:
matrix:
os:
- ubuntu-latest
environment:
- py310all
- py311all
- py310mssqlpdt
- py313mssqlpdt
- py311mssqldy
- py313mssqldy
uses: ./.github/workflows/test.yml
with:
os: ${{ matrix.os }}
environment: ${{ matrix.environment }}
docker-services: |
mssql
zoo
pytest-arguments: --mssql -m mssql --ibis --pdtransform --no-postgres --no-duckdb
orchestration_test:
name: Orchestration Tests
needs: [smoke_test]
strategy:
matrix:
os:
- ubuntu-latest
environment:
- py310dapre
- py313dapre
- py311all
# - py311pdsa1all # prefect and pydantac tend to cause trouble for old versions
uses: ./.github/workflows/test.yml
with:
os: ${{ matrix.os }}
environment: ${{ matrix.environment }}
docker-services: |
prefect
postgres
zoo
minio
pytest-arguments: --dask --prefect -m "dask or prefect"
pandas1_sqlalchemy1_test:
name: Pandas 1.x and SQLAlchemy 1.x Tests
needs: [smoke_test]
strategy:
matrix:
os:
- ubuntu-latest
environment:
- py310pdsa1all
- py311pdsa1all
uses: ./.github/workflows/test.yml
with:
os: ${{ matrix.os }}
environment: ${{ matrix.environment }}
docker-services: |
postgres
zoo
minio
pytest-arguments: --ibis --pdtransform
snowflake_test:
name: Snowflake Tests
needs: [smoke_test]
# snowflake tests are currently not passing
# TODO: investigate and fix
if: false
strategy:
matrix:
os:
- ubuntu-latest
environment:
- py311pdsa1all
uses: ./.github/workflows/test.yml
secrets:
SNOWFLAKE_PASSWORD: ${{ secrets.SNOWFLAKE_PASSWORD }}
SNOWFLAKE_ACCOUNT: ${{ secrets.SNOWFLAKE_ACCOUNT }}
SNOWFLAKE_USER: ${{ secrets.SNOWFLAKE_USER }}
with:
os: ${{ matrix.os }}
environment: ${{ matrix.environment }}
workers: 1 # tests are often waiting on snowflake
timeout-minutes: 40
docker-services: |
postgres
zoo
pytest-arguments: --ibis --pdtransform --snowflake --no-postgres --no-duckdb