CI / changes (push) Successful in 5s
CI / commitlint (push) Skipped
CI / openapi (push) Successful in 38s
CI / web (push) Successful in 55s
CI / go (push) Successful in 1m4s
CI / bird2 (push) Successful in 17s
CI / release (push) Successful in 4m17s
Перевести CI, semantic-release, bake и compose с git.shts.su на git.shx.one. Co-authored-by: Cursor <cursoragent@cursor.com>
56 lines
3.3 KiB
Markdown
56 lines
3.3 KiB
Markdown
# EvoBGP
|
||
|
||
Control plane для управления префиксами, модулями ingest, ревизиями конфигурации BIRD и выкладкой на BGP-спикеры. Репозиторий включает HTTP API на Go, веб-интерфейс (`web/`), CLI для реплик (`evobgp-node`), агент и Docker Compose для локального и эталонного развёртывания.
|
||
|
||
## Документация
|
||
|
||
| Документ | Содержание |
|
||
|----------|------------|
|
||
| [AGENTS.md](AGENTS.md) | Краткая карта репозитория и советы для ИИ-агентов (экономия контекста) |
|
||
| [docs/README.md](docs/README.md) | Оглавление и навигация по разделам |
|
||
| [docs/overview.md](docs/overview.md) | Ключевые возможности продукта |
|
||
| [docs/quickstart.md](docs/quickstart.md) | Быстрый запуск (Docker, локально, фронтенд) |
|
||
| [docs/architecture.md](docs/architecture.md) | Архитектура компонентов и потоков данных |
|
||
| [docs/api.md](docs/api.md) | Как работать с REST API и OpenAPI |
|
||
| [docs/access.md](docs/access.md) | API-ключи, роли, нода, CORS, безопасность |
|
||
|
||
Контракт HTTP API: [docs/openapi.yaml](docs/openapi.yaml). Человекочитаемый просмотр: [docs/openapi.html](docs/openapi.html) (см. [docs/OPENAPI-GITEA.md](docs/OPENAPI-GITEA.md)).
|
||
|
||
## Быстрый старт (Docker)
|
||
|
||
Из каталога [deploy/compose](deploy/compose) (PowerShell):
|
||
|
||
```powershell
|
||
cd deploy\compose
|
||
Copy-Item .env.example .env -Force # EVOBGP_REGISTRY=git.shx.one/<owner>
|
||
docker login git.shx.one
|
||
docker compose --profile microvps pull
|
||
docker compose --profile microvps up -d
|
||
```
|
||
|
||
Профиль **microvps** поднимает `evobgp-all`, PostgreSQL, BIRD2 и агент (образы из Container Registry, без `--build`). API по умолчанию: `http://localhost:8080`.
|
||
|
||
Эталонный стек (несколько сервисов, NATS, веб UI, Prometheus):
|
||
|
||
```powershell
|
||
docker compose --profile reference pull
|
||
docker compose --profile reference up -d
|
||
```
|
||
|
||
Подробности портов и переменных окружения — в [docs/quickstart.md](docs/quickstart.md) и в комментариях в [deploy/compose/docker-compose.yaml](deploy/compose/docker-compose.yaml).
|
||
|
||
## Разработка
|
||
|
||
- **Go:** модуль `evobgp`, точки входа в `cmd/`.
|
||
- **Веб:** SvelteKit в каталоге `web/` (см. [web/README.md](web/README.md)).
|
||
|
||
## Версионирование и релизы
|
||
|
||
Версии определяются автоматически из Conventional Commits при merge в `main` (semantic-release на Gitea Actions). Первая версия — **1.0.0**; ручной bump не нужен.
|
||
|
||
- [docs/releasing.md](docs/releasing.md) — пайплайн, commit conventions, секреты CI
|
||
- API: `GET /version` и `GET /v1/version` (поле `version`)
|
||
- Docker-образы: теги `latest`, `vX.Y.Z`, `X.Y.Z` — в **том же CI run**, что и релиз (job `release`)
|
||
|
||
Лицензия и условия использования — по политике владельца репозитория.
|