Files
dlt/.github/workflows/lint.yml
rudolfix 06bc05848b (chore) adds hub extra (#3428)
* adds hub extra

* makes hub module more user friendly when hub not installed

* test and lint fixes

* adds plugin version check util function

* adds dlt-runtime to hub extra, minimal import tests

* bumps to dlthub 0.20.0 alpha

* lists pipelines with cli using the same functions as dashboard, dlt pipeline will list pipelines by default

* adds configured propfiles method on context so only profiles with configs or pipelines are listed

* adds list of locations that contained actual configs to provider interface

* improves workspace and profile commands

* test fixes

* fixes tests
2025-12-05 16:15:19 +01:00

78 lines
1.9 KiB
YAML

name: lint | code & tests
on:
workflow_call:
workflow_dispatch:
jobs:
run_lint:
name: lint
strategy:
fail-fast: true
matrix:
os:
- ubuntu-latest
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
defaults:
run:
shell: bash
runs-on: ${{ matrix.os }}
steps:
- name: Check out
uses: actions/checkout@master
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
python-version: ${{ matrix.python-version }}
activate-environment: true
enable-cache: true
- name: Check lockfile
run: uv lock --check
- name: Install dependencies
run: uv sync --all-extras --no-extra hub --group airflow --group providers --group pipeline --group sources --group sentry-sdk --group dbt --group streamlit
- name: Run make lint
run: |
export PATH=$PATH:"/c/Program Files/usr/bin" # needed for Windows
make lint
- name: Check that cli docs are up to date
run: make check-cli-docs
if: ${{ matrix.python-version == '3.11' }}
- name: Check filesizes
uses: ppremk/lfs-warning@v3.2
with:
filesizelimit: 50000
exclusionPatterns: |
**/*.py
**/*.lock
**/*.md
**/*.ipynb
**/package-lock.json
matrix_job_required_check:
name: lint | code & tests
needs: run_lint
runs-on: ubuntu-latest
if: always()
steps:
- name: Check matrix job results
if: contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled')
run: |
echo "One or more matrix job tests failed or were cancelled. You may need to re-run them." && exit 1