Configure CI/CD pipelines for Syndarix #15

Closed
opened 2025-12-29 23:45:58 +00:00 by cardosofelipe · 0 comments

Description

Set up Gitea Actions CI/CD pipeline for the Syndarix repository.

Requirements

Backend Pipeline

  • Run uv run ruff check app (linting)
  • Run uv run mypy app (type checking)
  • Run IS_TEST=True uv run pytest --cov=app (tests with coverage)
  • Coverage threshold: 90% for new code

Frontend Pipeline

  • Run npm run lint (ESLint)
  • Run npm run type-check (TypeScript)
  • Run npm test (Jest unit tests)

Pipeline Structure

  1. lint job (fast feedback)
  2. test job (depends on lint)
  3. build job (depends on test)
  4. deploy job (only on main, depends on build)

Acceptance Criteria

  • .gitea/workflows/ci.yaml created
  • Backend linting, typing, and tests pass
  • Frontend linting, typing, and tests pass
  • Coverage reports generated
  • Pipeline fails on any check failure
  • Documentation updated

Technical Notes

  • Use uv for Python dependency management
  • Reference: ADR-003 (Celery/Redis architecture)

Assignable To

devops-engineer agent

## Description Set up Gitea Actions CI/CD pipeline for the Syndarix repository. ## Requirements ### Backend Pipeline - Run `uv run ruff check app` (linting) - Run `uv run mypy app` (type checking) - Run `IS_TEST=True uv run pytest --cov=app` (tests with coverage) - Coverage threshold: 90% for new code ### Frontend Pipeline - Run `npm run lint` (ESLint) - Run `npm run type-check` (TypeScript) - Run `npm test` (Jest unit tests) ### Pipeline Structure 1. `lint` job (fast feedback) 2. `test` job (depends on lint) 3. `build` job (depends on test) 4. `deploy` job (only on main, depends on build) ## Acceptance Criteria - [ ] `.gitea/workflows/ci.yaml` created - [ ] Backend linting, typing, and tests pass - [ ] Frontend linting, typing, and tests pass - [ ] Coverage reports generated - [ ] Pipeline fails on any check failure - [ ] Documentation updated ## Technical Notes - Use `uv` for Python dependency management - Reference: ADR-003 (Celery/Redis architecture) ## Assignable To devops-engineer agent
cardosofelipe added the devopsphase-0 labels 2025-12-29 23:49:39 +00:00
Sign in to join this conversation.