- Определена архитектура managed IoT service - Согласовано решение: RabbitMQ (MVP), потом Kafka; EMQX + CRD контроллер - Создан подробный план для Sonnet (doc/iot-mvp-plan.md) - Добавлено правило в copilot-instructions: лог мышления в doc/thinking/ по датам - Полный ход рассуждений в doc/thinking/2026-04-04.md Ключевые решения: - IoT код в iot/ (легко вынести потом) - CRD IoTDevice + контроллер (как все остальное в sless) - EMQX HTTP Auth Backend для динамической аутентификации устройств - Архитектура broker-agnostic (легко переключить на Kafka) - Terraform: расширяем текущий provider (sless_iot_device ресурс)
55 lines
2.4 KiB
Plaintext
55 lines
2.4 KiB
Plaintext
# =============================================================================
|
|
# 2026-04-01 — terraform.tfvars
|
|
#
|
|
# ЕДИНСТВЕННЫЙ файл, который нужно заполнить перед запуском.
|
|
# Остальные .tf-файлы не трогать.
|
|
#
|
|
# Как запустить:
|
|
# 1. Скопировать этот файл: cp terraform.tfvars.example terraform.tfvars
|
|
# 2. Заполнить три обязательных поля ниже (ЗАПОЛНИТЬ)
|
|
# 3. terraform init
|
|
# 4. terraform apply
|
|
#
|
|
# После apply — увидеть данные подключения:
|
|
# terraform output pg_host
|
|
# terraform output pg_database
|
|
# terraform output pg_username
|
|
# terraform output -raw pg_password # пароль (показывается явно только с -raw)
|
|
# terraform output -raw pg_dsn # полная строка подключения
|
|
# =============================================================================
|
|
|
|
|
|
# =============================================================================
|
|
# ОБЯЗАТЕЛЬНО ЗАПОЛНИТЬ
|
|
# =============================================================================
|
|
|
|
# API-токен из личного кабинета Nubes.
|
|
# Где взять: https://deck-test.ngcloud.ru/ → Профиль → API-токены
|
|
api_token = "ЗАПОЛНИТЬ"
|
|
|
|
# UUID вашего S3-бакета — нужен PostgreSQL для хранения бэкапов.
|
|
# Пример: "332cdb0d-****-43bf-****-4adcc3b5****"
|
|
s3_uid = "ЗАПОЛНИТЬ"
|
|
|
|
# Realm — идентификатор вашей зоны/проекта.
|
|
# Пример: "k8s-3-sandbox-nubes-ru"
|
|
realm = "ЗАПОЛНИТЬ"
|
|
|
|
|
|
# =============================================================================
|
|
# МОЖНО ОСТАВИТЬ КАК ЕСТЬ (изменить при необходимости)
|
|
# =============================================================================
|
|
|
|
# Имя PostgreSQL-инстанса в Nubes.
|
|
# Должно быть уникальным в рамках realm. Менять если создаёте несколько стендов.
|
|
pg_resource_name = "pg-test-01"
|
|
|
|
# Имя пользователя базы данных.
|
|
pg_username = "pgtest_user"
|
|
|
|
# Имя базы данных.
|
|
pg_db_name = "pgtest_db"
|
|
|
|
# Роль пользователя.
|
|
pg_role = "ddl_user"
|