Product blueprint

Платформа, которая растёт вместе с кодом.

Ниже — будущие сценарии и предварительный контракт API. Он опирается на ресурсную модель GitLab, предсказуемые REST-эндпоинты и webhooks для событий.

Примеры использования

Один контур.
Разные команды.

От небольшой библиотеки до платформенной инженерии — права и процессы усложняются только тогда, когда это нужно.

MR

Продуктовая команда

Issue → branch → merge request → preview environment. Дизайн, код и acceptance остаются в одной цепочке.

CI

Платформенная команда

Переиспользуемые pipeline-компоненты, protected environments и runners для разных классов нагрузки.

OS

Open source

Публичные проекты, fork workflow, contribution rules, releases и понятная история решений.

Предсказуемый интерфейс для автоматизации.

Базовый адрес планируется как https://kernel.barebrave.online/api/v1. Клиент передаёт personal, project или OAuth token в заголовке Authorization: Bearer …. Ответы — JSON; списки используют cursor pagination; мутации поддерживают idempotency key.

Projects & repositories
GET/projects/:idметаданные проекта
POST/projectsсоздать проект
GET/projects/:id/repository/treeдерево файлов
POST/projects/:id/repository/commitsсоздать commit
Collaboration & delivery
GET/projects/:id/merge_requestsсписок MR
POST/projects/:id/merge_requestsоткрыть MR
GET/projects/:id/pipelinesистория CI
POST/projects/:id/pipelineзапустить pipeline

Принцип работы

Project — центральный ресурс. В нём живут repository, issues, merge requests, pipelines, packages и environments. Group объединяет проекты и наследуемые роли. События вроде push, merge_request.merged и pipeline.failed доставляются подписчикам через подписанные webhooks.

Контроль доступа

Роли будут следовать лестнице Guest → Reporter → Developer → Maintainer → Owner. Токены получают точные scopes: например, read_repository, write_registry или manage_runner. Protected branches и environments добавляют policy поверх роли.

Git и CI/CD

Git transport будет доступен по HTTPS и SSH. Pipeline описывается YAML-файлом в репозитории: stages, jobs, rules, artifacts, cache и environments. Runner запрашивает job, исполняет его изолированно и потоково возвращает лог и артефакты.

API ещё формируется. Повлияйте на контракт.

Обсудить API