Control plane для CI и инфраструктуры:
процесс и ресурс в одной модели.
Graphene нужен для автоматизации, где вместе управляются работа и инфраструктура, на которой она выполняется. Pipeline — типизированная Go-программа. Машины, контейнеры, Kubernetes-объекты, файлы и artifacts — durable-ресурсы с состоянием, owner и временем жизни.
Общая модель закрывает разрыв между CI, который обычно видит только steps, и IaC, который обычно видит только desired state.
Что меняется на практике
| Задача | Модель Graphene |
|---|---|
| Создать среду для одного тестового run | Run владеет деревом ресурсов; терминальное завершение финализирует его |
| Сохранить упавшую среду для разбора | Передать её поддерево pipeline stand, при необходимости с TTL |
| Работать на удалённой или существующей машине | Её agent подключается наружу; actions не требуют входного управляющего порта |
| Передать данные между pipelines | Опубликовать и присоединить durable artifact record |
| Восстановиться после падения worker | Продолжить исполнение по записанным ресурсам, не пересоздавая их вслепую |
| Объяснить сбой | Читать state, events, logs, metrics и traces одной записи |
Resource libraries добавляют типизированные реализации, не меняя эту модель. Сейчас есть библиотеки для Docker, Kubernetes и Crossplane, Git и файлов.
Выберите путь
| Если нужно… | Начните здесь |
|---|---|
| Понять продукт и его текущую границу | Текущее состояние → Какие задачи можно решать |
| Попробовать без запуска сервера | Первый локальный план |
| Пройти полный локальный сценарий | Первый запуск в dev-инсталляции |
| Написать pipeline | Команды pipeline binary → Main → Справочник SDK |
| Работать из командной строки | graphenectl |
| Работать визуально | Graphene Studio |
| Подключить другой клиент | Management API |
| Настроить или диагностировать инсталляцию | Эксплуатация |
Текущая граница
В репозитории есть полная dev-инсталляция, но нет hardened production distribution. Go — единственный встроенный API авторинга pipeline. Pkl/KCL и language-neutral YAML-формат pipeline не входят в текущий продукт. Точный список готовых и незавершённых возможностей поддерживается в разделе Текущее состояние.