2.5 KiB
2.5 KiB
CI/CD Workflows
Forgejo Actions workflows для автоматической сборки, тестирования и развертывания проекта.
Быстрый старт
-
Проверьте готовность:
../../scripts/check_deploy_ready.sh -
Настройте секреты в Forgejo:
DEPLOY_SSH_PRIVATE_KEY # SSH ключ для деплоя -
Протестируйте локально:
../../scripts/test_ci_locally.sh -
Запустите деплой:
git push origin main
Workflows
ci-main.yml- Главный pipeline (координирует все остальные)ci-backend.yml- CI для backend (Dart)ci-web.yml- CI для веб приложения (Flutter Web)ci-mobile.yml- CI для мобильного приложения (Flutter)cd-deploy.yml- CD для развертывания на серверcode-quality.yml- Контроль качества кодаrelease.yml- Автоматические релизыagent.yml- AI-агент для автоматической генерации кода
Процесс CI/CD
1. Code Quality Gate
- Проверка линтинга для всех проектов
- Запуск тестов с покрытием
- Сканирование на наличие секретов
- Проверка зависимостей на уязвимости
2. Сборка компонентов
- Backend: Компиляция в нативный бинарный файл
- Web App: Сборка Flutter web приложения
- Mobile App: Сборка APK для Android и app для iOS
3. Развертывание
- Backend: Автоматическое обновление сервиса на
api.memo-cards.online - Web App: Rsync на веб сервер
memo-cards.online+ перезагрузка Nginx - Mobile App: Создание GitHub релиза с APK
Секреты Forgejo
DEPLOY_SSH_PRIVATE_KEY # SSH ключ для доступа к серверу 147.45.152.129
Ручной запуск
Backend деплой
../../deploy/backend-build_app.sh
Web app деплой
../../deploy/web-app/deploy.sh
Troubleshooting
См. CI_CD_SETUP.md для подробной диагностики проблем.