chore: v0.36.0-dev + CI/CD в docs + copilot instructions

This commit is contained in:
Repinoid
2026-05-31 17:44:52 +03:00
parent 7f71cb1709
commit f4475c441f
3 changed files with 94 additions and 17 deletions
+37 -15
View File
@@ -1,6 +1,6 @@
# Архитектура elmAI
> v0.28.0-dev, 29 мая 2026
> v0.36.0-dev, 31 мая 2026
## Общая схема
@@ -99,24 +99,46 @@ elmer-android/app/src/main/java/ru/elmer/client/
└── ElmForwardService.kt # (устарел)
```
## Деплой и доставка APK
## CI/CD и деплой
**Никаких сторонних CI/CD-сервисов (GitHub Actions, GitLab CI, Jenkins и т.д.). Всё вручную.**
### Сервер (elmer)
```
Сборка APK (Android Studio / gradlew assembleDebug)
Локально: git push gitea master
│
└── app-debug.apk → вручную на сервер
│
└── scp → obdai.ru:/opt/elmer/web/static/app-debug.apk
▼
Сервер: ssh obdai.ru
cd /opt/elmer && git pull origin master
sudo systemctl restart elmer
```
**APK для пользователей:**
- Сервер: `https://obdai.ru/elmer.apk` → `web/static/app-debug.apk`
- Версия APK: `app/build.gradle.kts` → `versionName`
- Версия на сайте: `web/templates/index.html` (синхронизировать вручную)
**Сервер (obdai.ru, 5.172.178.213):**
- Код: `/opt/elmer` (git clone gitea.services.ngcloud.ru/Nail/elmer)
- Ветка по умолчанию: master
- Сервис: `sudo systemctl restart elmer` → gunicorn -w 4
- Репо: `gitea.services.ngcloud.ru/Nail/elmer`
- Ветка: `master`
- Сервис: `gunicorn -w 4 -b 127.0.0.1:8000 web.app:app`
- Прокси: nginx :443 → 127.0.0.1:8000
- Конфиг: `/opt/elmer/config.yaml`
### Android APK (elmer-android)
```
Локально: cd android && ./gradlew assembleDebug
scp app/build/outputs/apk/debug/app-debug.apk obdai.ru:/opt/elmer/web/static/
```
- Репо: `github.com/Repinoid/elmer-android`
- Сборка: `./gradlew assembleDebug`
- Доставка: `scp` на сервер в `web/static/app-debug.apk`
- Ссылка для пользователей: `https://obdai.ru/elmer.apk`
- APK обновляется **только** при изменениях в Android-коде
### Версионирование
| Где | Файл |
|-----|------|
| APK | `android/app/build.gradle.kts` → `versionName` |
| Сайт | `web/templates/index.html` |
| Документация | заголовки `.md` файлов |
**Версию менять одновременно во всех трёх местах.**