-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Что это
seldb — Go CLI утилита для управления базами данных в Selectel DBaaS (Managed Databases).
Зачем
Основные пользователи — AI агенты
Утилита разрабатывается в первую очередь для агентного управления инфраструктурой. AI-агенты (Claude Code, Cursor, Copilot Workspace) смогут вызывать seldb через Bash для автоматизации рутинных операций:
- Создание баз данных для новых staging окружений
- Управление пользователями и правами доступа
- Диагностика состояния datastore (disk usage, state)
- Очистка неиспользуемых ресурсов
Почему не curl/API напрямую
- Типобезопасность — Go SDK валидирует параметры
- Удобный вывод — table/json/quiet форматы из коробки
- Единый интерфейс — не нужно помнить endpoints и структуру запросов
- Один бинарник — без внешних зависимостей (Python, Node.js)
Почему не Terraform
Terraform отлично подходит для декларативного управления инфраструктурой, но для ad-hoc операций агентов нужен императивный CLI:
# Агент создаёт staging для новой фичи
seldb databases create feature_123_db
seldb grants create --user staging --database feature_123_dbТехнологии
- Go — компилируется в один бинарник
- selectel/dbaas-go — официальный SDK
- spf13/cobra — CLI framework
MVP команды
# Datastores
seldb datastores list
# Databases
seldb databases list
seldb databases create NAME
seldb databases delete NAME|ID
# Users
seldb users list
seldb users create NAME --password PASSWORD
seldb users delete NAME|ID
# Grants
seldb grants list
seldb grants create --user USER --database DATABASE
seldb grants delete GRANT_ID
# Status
seldb statusСвязанные задачи
- alfagen/infra#51 — исходная задача
Metadata
Metadata
Assignees
Labels
No labels