feat(): Task links #1056
Workflow file for this run
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: Tests | |
on: | |
push: | |
paths-ignore: | |
- 'docs/**' | |
branches: | |
- '**' | |
pull_request: | |
paths-ignore: | |
- 'docs/**' | |
branches: | |
- '**' | |
env: | |
DEBUG: ${{ secrets.ACTIONS_RUNNER_DEBUG }} | |
jobs: | |
lint: | |
name: "Linting - pre-commit hooks - Python 3.9" | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- name: Checkout branch | |
uses: actions/checkout@v4 | |
- name: Install Python 3.9 | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3.9 | |
- name: Linting - Run pre-commit checks | |
uses: pre-commit/action@v3.0.1 | |
smoke_test: | |
name: 'Smoke Test - Python 3.11 - postgres' | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Environment | |
uses: ./.github/actions/setup | |
with: | |
python-version: 3.11 | |
docker-services: | | |
postgres | |
zoo | |
- name: Run Tests | |
uses: ./.github/actions/test | |
with: | |
arguments: --workers 4 | |
postgres_test: | |
name: "Postgres Tests - ${{ matrix.os }} / ${{ matrix.python-version }}" | |
needs: [smoke_test] | |
runs-on: ${{ matrix.os }}-latest | |
timeout-minutes: 10 | |
strategy: | |
matrix: | |
os: [Ubuntu] | |
python-version: ['3.9', '3.10', '3.11'] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Environment | |
uses: ./.github/actions/setup | |
with: | |
python-version: ${{ matrix.python-version }} | |
poetry-flags: --all-extras --with=tests | |
docker-services: | | |
postgres | |
zoo | |
- name: Run Tests | |
uses: ./.github/actions/test | |
with: | |
arguments: --workers 4 --polars --ibis --pdtransform | |
duckdb_test: | |
name: "DuckDB Tests - ${{ matrix.os }} / ${{ matrix.python-version }}" | |
needs: [smoke_test] | |
runs-on: ${{ matrix.os }}-latest | |
timeout-minutes: 15 | |
strategy: | |
matrix: | |
os: [Ubuntu] | |
python-version: ['3.9', '3.11'] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Environment | |
uses: ./.github/actions/setup | |
with: | |
python-version: ${{ matrix.python-version }} | |
poetry-flags: --all-extras --with=tests | |
docker-services: | | |
zoo | |
- name: Run Tests | |
uses: ./.github/actions/test | |
with: | |
arguments: --workers 4 --duckdb -m duckdb --polars --ibis --pdtransform | |
db2_test: | |
name: "DB2 Tests - ${{ matrix.os }} / ${{ matrix.python-version }}" | |
needs: [smoke_test] | |
runs-on: ${{ matrix.os }}-latest | |
timeout-minutes: 15 | |
strategy: | |
matrix: | |
os: [Ubuntu] | |
python-version: ['3.11'] | |
services: | |
ibm_db2: | |
image: icr.io/db2_community/db2 | |
env: | |
LICENSE: accept | |
DB2INSTANCE: db2inst1 | |
DB2INST1_PASSWORD: password | |
DBNAME: testdb | |
UPDATEAVAIL: "NO" | |
options: --privileged | |
ports: | |
- 50000:50000 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Environment | |
uses: ./.github/actions/setup | |
with: | |
python-version: ${{ matrix.python-version }} | |
poetry-flags: --all-extras --with=tests | |
docker-services: | | |
zoo | |
- name: Wait for DB/2 | |
timeout-minutes: 2 | |
run: | | |
until docker logs "${{ job.services.ibm_db2.id }}" 2>&1 | grep -q "Setup has completed"; do | |
sleep 1 | |
done | |
- name: Run Tests | |
uses: ./.github/actions/test | |
with: | |
# --polars and --ibis not supported | |
arguments: --workers 4 --ibm_db2 -m ibm_db2 --pdtransform | |
mssql_test: | |
name: "MSSql Tests - ${{ matrix.os }} / ${{ matrix.python-version }}" | |
needs: [smoke_test] | |
runs-on: ${{ matrix.os }}-latest | |
timeout-minutes: 15 | |
strategy: | |
matrix: | |
os: [Ubuntu] | |
python-version: ['3.9', '3.11'] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Environment | |
uses: ./.github/actions/setup | |
with: | |
python-version: ${{ matrix.python-version }} | |
poetry-flags: --all-extras --with=tests | |
docker-services: | | |
mssql | |
zoo | |
- name: Install Microsoft ODBC | |
run: sudo ACCEPT_EULA=Y apt-get install -y msodbcsql18 | |
- name: Run Tests | |
uses: ./.github/actions/test | |
with: | |
arguments: --workers 4 --mssql -m mssql --polars --ibis --pdtransform | |
orchestration_tests: | |
name: "Orchestration Tests - ${{ matrix.os }} / ${{ matrix.python-version }}" | |
needs: [ smoke_test ] | |
runs-on: ${{ matrix.os }}-latest | |
timeout-minutes: 10 | |
strategy: | |
matrix: | |
os: [ Ubuntu ] | |
python-version: [ '3.11' ] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Environment | |
uses: ./.github/actions/setup | |
with: | |
python-version: ${{ matrix.python-version }} | |
poetry-flags: --all-extras --with=tests | |
docker-services: | | |
postgres | |
zoo | |
- name: Run Tests | |
uses: ./.github/actions/test | |
with: | |
arguments: --workers 4 --dask --prefect -m "dask or prefect" | |
snowflake_test: | |
name: "Snowflake Tests - ${{ matrix.os }} / ${{ matrix.python-version }}" | |
needs: [smoke_test] | |
runs-on: ${{ matrix.os }}-latest | |
timeout-minutes: 10 | |
strategy: | |
matrix: | |
os: [Ubuntu] | |
python-version: ['3.11'] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Environment | |
uses: ./.github/actions/setup | |
with: | |
python-version: ${{ matrix.python-version }} | |
poetry-flags: --all-extras --with=tests | |
pip-install: "'SQLAlchemy<2' 'pandas<2' snowflake-sqlalchemy" | |
docker-services: | | |
postgres | |
zoo | |
- name: Run Tests | |
uses: ./.github/actions/test | |
with: | |
arguments: --workers 4 --polars --ibis --pdtransform |