SIENTIAPDE-1318

Enhance validation script and CI workflow for code quality checks

- Added support for a --fix option in validate.sh to apply Ruff auto-fixes for formatting and linting.
- Updated GitHub Actions workflow to include separate steps for installing development and runtime dependencies.
- Introduced dedicated steps for code formatting and linting checks using Ruff, along with type checking and security analysis using mypy and Bandit.
This commit is contained in:
vitor-aignosi
2025-10-17 12:50:02 -03:00
parent a834671be4
commit 99fb460ddb
2 changed files with 56 additions and 4 deletions

View File

@@ -57,11 +57,38 @@ jobs:
restore-keys: |
${{ runner.os }}-pip-
- name: 📦 Install Dependencies
- name: 📦 Install Development Dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements-dev.txt
- name: 📦 Install Runtime Dependencies
run: |
pip install -r ${{ steps.prepare-requirements.outputs.PROCESSED_REQUIREMENTS_FILE }}
pip install pytest pytest-cov pytest-asyncio
- name: 📝 Code Formatting Check (Ruff)
run: |
echo "Checking code formatting..."
ruff format --check laborious/ tests/
continue-on-error: false
- name: 🔎 Code Linting (Ruff)
run: |
echo "Running linting checks..."
ruff check laborious/ tests/
continue-on-error: false
- name: 🏷️ Type Checking (mypy)
run: |
echo "Running type checks..."
mypy laborious/
continue-on-error: true
- name: 🔒 Security Analysis (Bandit)
run: |
echo "Running security analysis..."
bandit -r laborious/ -ll -q
continue-on-error: true
- name: 🧪 Run Tests with Pytest
run: |