feat: implement CI/CD pipeline with Gitea Actions

- Add Gitea Actions workflow with 4 stages: lint, test, build, push
- Configure ruff linting and formatting checks
- Set up Django tests with PostgreSQL and Redis services
- Implement Docker image building for web and celery services
- Add requirements.txt and requirements-dev.txt generation
- Fix ipdb compatibility issues in test runner
- Update ruff configuration for Django compatibility
- Add comprehensive CI/CD documentation
This commit is contained in:
2026-01-19 14:24:48 +01:00
parent cbfbd8652d
commit 06b30fca02
26 changed files with 1769 additions and 726 deletions

View File

@@ -13,6 +13,10 @@ select = [
extend-ignore = [
"E501", # line too long, handled by formatter
"DJ01", # Missing docstring (too strict for Django)
"DJ001", # null=True on string fields (architectural decision)
"F403", # star imports (common in Django settings)
"F405", # name may be undefined from star imports (Django settings)
"E402", # module level import not at top (Django settings)
]
# Allow autofix for all enabled rules (when `--fix`) is provided.
@@ -62,6 +66,11 @@ max-complexity = 10
[per-file-ignores]
# Ignore `E402` (import violations) in all `__init__.py` files
"__init__.py" = ["E402"]
# Ignore star imports and related errors in settings
"src/config/settings/*" = ["F403", "F405", "E402"]
# Ignore star imports in test runner files
"check_tests.py" = ["F403"]
"run_tests.py" = ["F403"]
# Ignore complexity issues in tests
"tests/*" = ["C901"]
"**/test_*" = ["C901"]