Merge pull request #378 from ds-wizard/hotfix/4.28.4 #1718
Workflow file for this run
This file contains hidden or 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: Code Style | |
| on: | |
| push: | |
| jobs: | |
| # Flake 8 for basic code style checks | |
| flake8: | |
| name: Flake 8 | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v6 | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: 3.13 | |
| cache: pip | |
| cache-dependency-path: | | |
| **/pyproject.toml | |
| **/requirements*.txt | |
| - name: Create build info | |
| run: | | |
| bash scripts/build-info.sh | |
| - name: Install Flake8 (7.3.0) | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install flake8==7.3.0 | |
| - name: Install dependencies | |
| run: | | |
| ROOT=$(pwd) | |
| for package in $(ls packages); do | |
| echo "-------------------------------------------------" | |
| echo "- $package" | |
| echo "-------------------------------------------------" | |
| cd "$ROOT/packages/$package" | |
| pip install -r requirements.txt | |
| make local-deps | |
| echo "=================================================" | |
| done | |
| - name: Install package | |
| run: | | |
| for package in $(ls packages); do | |
| echo "-------------------------------------------------" | |
| echo "- $package" | |
| echo "-------------------------------------------------" | |
| pip install packages/$package | |
| rm -rf packages/$package/build | |
| echo "=================================================" | |
| done | |
| - name: Lint with flake8 | |
| run: | | |
| flake8 packages --count --select=E9,F63,F7,F82 --show-source --statistics | |
| flake8 packages --count --max-complexity=12 --max-line-length=130 --statistics | |
| # Consistency of version tagging | |
| version: | |
| name: Version consts.py | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v6 | |
| - name: Check dsw-data-seeder | |
| run: | | |
| bash scripts/check-version.sh \ | |
| packages/dsw-data-seeder/dsw/data_seeder/consts.py \ | |
| packages/dsw-data-seeder/pyproject.toml | |
| - name: Check dsw-document-worker | |
| run: | | |
| bash scripts/check-version.sh \ | |
| packages/dsw-document-worker/dsw/document_worker/consts.py \ | |
| packages/dsw-document-worker/pyproject.toml | |
| - name: Check dsw-mailer | |
| run: | | |
| bash scripts/check-version.sh \ | |
| packages/dsw-mailer/dsw/mailer/consts.py \ | |
| packages/dsw-mailer/pyproject.toml | |
| - name: Check dsw-tdk | |
| run: | | |
| bash scripts/check-version.sh \ | |
| packages/dsw-tdk/dsw/tdk/consts.py \ | |
| packages/dsw-tdk/pyproject.toml | |
| # Pylint | |
| pylint: | |
| name: Pylint | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v6 | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: 3.13 | |
| cache: pip | |
| cache-dependency-path: | | |
| **/pyproject.toml | |
| **/requirements*.txt | |
| - name: Create build info | |
| run: | | |
| bash scripts/build-info.sh | |
| - name: Install PyLint (3.3.7) | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install pylint==3.3.7 | |
| - name: Install dependencies | |
| run: | | |
| ROOT=$(pwd) | |
| for package in $(ls packages); do | |
| echo "-------------------------------------------------" | |
| echo "- $package" | |
| echo "-------------------------------------------------" | |
| cd "$ROOT/packages/$package" | |
| pip install -r requirements.txt | |
| make local-deps | |
| echo "=================================================" | |
| done | |
| - name: Install packages | |
| run: | | |
| for package in $(ls packages); do | |
| echo "-------------------------------------------------" | |
| echo "- $package" | |
| echo "-------------------------------------------------" | |
| pip install packages/$package | |
| rm -rf packages/$package/build | |
| echo "=================================================" | |
| done | |
| - name: Lint with PyLint | |
| run: | | |
| pylint --rcfile=.pylintrc.ini packages/*/dsw | |
| # CSpell | |
| cspell: | |
| name: CSpell | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v6 | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: '24' | |
| - name: Install CSpell | |
| run: | | |
| npm install -g cspell @cspell/dict-python | |
| - name: Run CSpell | |
| run: | | |
| cspell \ | |
| --no-progress \ | |
| --no-summary \ | |
| --config .cspell/cspell.json \ | |
| packages/**/*.py \ | |
| packages/**/*.md \ | |
| packages/**/*.json \ | |
| packages/**/*.toml \ | |
| packages/**/*.yml \ | |
| packages/**/*.yaml | |
| # Ruff | |
| ruff: | |
| name: Ruff | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v6 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7 | |
| - name: Create build info | |
| run: | | |
| bash scripts/build-info.sh | |
| - name: Install the project | |
| run: uv sync --locked --all-extras --all-packages --no-install-project --dev | |
| - name: Run Ruff | |
| run: | | |
| uv run ruff check | |
| # Ty | |
| ty: | |
| name: Ty | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v6 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7 | |
| - name: Create build info | |
| run: | | |
| bash scripts/build-info.sh | |
| - name: Install the project | |
| run: uv sync --locked --all-extras --all-packages --no-install-project --dev | |
| - name: Run Ruff | |
| run: | | |
| uv run ty check |