Руководство по разработке
Это руководство содержит инструкции по настройке локальной среды разработки, запуску тестов и участию в проекте Ordinaut.
Настройка локальной среды разработки
Предварительные требования
- Python 3.12+
- Docker и Docker Compose
- Git
Настройка среды
-
Клонируйте репозиторий:
git clone https://github.com/yoda-digital/ordinaut.git cd ordinaut
-
Создайте виртуальное окружение Python:
python3 -m venv .venv source .venv/bin/activate
-
Установите зависимости:
pip install -r requirements.txt pip install -r observability/requirements.txt pip install black flake8 pytest
-
Запустите фоновые службы (PostgreSQL, Redis):
cd ops/ docker compose up -d postgres redis
Запуск компонентов по отдельности
-
API-сервер:
uvicorn api.main:app --host 0.0.0.0 --port 8080 --reload
-
Планировщик:
python scheduler/tick.py
-
Воркер:
python workers/runner.py
Фреймворк для тестирования
Ordinaut использует pytest
для тестирования.
Состояние набора тестов
В настоящее время набор тестов находится на серьезном обслуживании. Известно, что многие тесты не работают. Как подробно описано в test_verification_report.md
, фактическое покрытие тестами составляет около 11%.
Участникам следует сосредоточиться на написании новых, работающих тестов для своих функций.
Запуск тестов
# Запустить все тесты (ожидаются сбои)
pytest
# Запустить конкретный рабочий тестовый файл
pytest tests/test_rruler.py
Качество и стандарты кода
Мы используем black
для форматирования кода и flake8
для линтинга.
- Форматировать код:
black .
- Проверить на ошибки:
flake8 .
Участие в проекте
- Создайте ветку для новой функциональности из
main
. - Напишите код и включите новые, рабочие тесты для вашей функциональности.
- Убедитесь, что проверки качества кода проходят.
- Отправьте Pull Request.