Skip to content

Improve CI Pipelines: Linting, Formatting, Pre-commits, and Testing #458

@TineoC

Description

@TineoC

The current CI workflows in .github/workflows/frontend-ci.yml and .github/workflows/python-app.yml are missing several critical quality checks.

Proposed Improvements:

1. Frontend (frontend-ci.yml)

  • Strict Checks: Remove continue-on-error: true from Lint and Build steps so that PRs cannot be merged with failures.
  • Formatting: Add a step to verify formatting using Prettier (e.g., npx prettier --check .).
  • Testing: Add a step to run tests if any exist (e.g., npm test).
  • Dependency Cache: Ensure Node.js cache is working correctly (already present but should be verified).

2. Python Backend (python-app.yml)

  • Formatting: Add Ruff formatting check (ruff format --check).
  • Testing: Add a step to run Django tests (python manage.py test).
  • Branch Triggers: Update branch triggers to include develop or the main branch (currently points to listOfMed).
  • Linting: Improve Ruff linting configuration or ensure it's running with the desired rules.

3. General Enhancements

  • Pre-commit Hooks: Integrate pre-commit into CI to ensure all hooks pass before merging.
  • Consistency: Align branch triggers across all CI workflows.

Why is this needed?

To ensure code quality, consistency, and prevent regressions from being merged into the main branches.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions