docs: TEST_STAND README + clean terraform.tfvars.example

This commit is contained in:
“Naeel”
2026-07-21 08:18:48 +04:00
parent a4a3f8e63c
commit ecace0311b
2 changed files with 64 additions and 17 deletions
+50
View File
@@ -0,0 +1,50 @@
# CRUD Test Stand
Три приложения (Lucee / Flask / Node.js) + общая PostgreSQL. Каждое делает CRUD в одной таблице `crud_items`.
## Что где менять
### 1. `terraform.tfvars` — скопировать из `terraform.tfvars.example`
| Параметр | Где брать |
|---|---|
| `api_token` | ЛК → Профиль → Токены → создать «Технический» |
| `realm` | Кластер Kubernetes: `k8s-3-sandbox-nubes-ru` (песочница) или другой |
| `s3_name` | ЛК → S3 → Пользователи → имя пользователя |
| `s3_user_uid` | Там же — UUID. **ИЛИ** `s3_name` — любое одно, провайдер сам найдёт пару |
### 2. `locals.tf` — сменить домены
Каждое приложение должно иметь **уникальный** домен. Замени:
```
lucee_domain = "..." # станет <имя>.luceek8s.dev.nubes.ru
flask_domain = "..." # станет <имя>.pythonk8s.dev.nubes.ru
nodejs_domain = "..." # станет <имя>.<суффикс>.dev.nubes.ru
```
### 3. `locals.tf` — git_revision
При изменении кода в репозиториях (`tfluceecrud`, `tfflaskcrud`, `tfnodejscrud`) — обновить `*_git_revision` на новый хеш коммита. Terraform сам сделает redeploy.
## Порядок запуска
```bash
terraform init
terraform apply # PG + user + DB
terraform apply # Lucee + Flask + Node.js (PG уже в стейте)
```
Два apply нужно только при первом создании. Дальше — один.
## Состав
| Файл | Ресурс |
|---|---|
| `main.tf` | Провайдер (`nubes-test/nubes`) + переменные |
| `postgres.tf` | `nubes_postgres.main_pg` |
| `postgres_user_db.tf` | Пользователь + БД |
| `lucee.tf` | `nubes_lucee.applucee` |
| `flask.tf` | `nubes_flask.appflask` |
| `nodejs.tf` | `nubes_nodejs.appnodejs` |
| `locals.tf` | Все настраиваемые значения |
+14 -17
View File
@@ -1,20 +1,17 @@
# =============================================================================
# terraform.tfvars.example — скопировать в terraform.tfvars и заполнить
# terraform.tfvars.example
# Скопировать: cp terraform.tfvars.example terraform.tfvars
# Заполнить своими значениями.
# =============================================================================
#
# Где брать:
# api_token — ЛК → Профиль → Токены → создать «Технический»
# realm — ЛК → Кластеры → выбрать (напр. k8s-3-sandbox-nubes-ru)
# s3_name — ЛК → S3 → Пользователи → имя
# s3_user_uid — там же → UUID. Указать ОДНО из s3_name/s3_user_uid
# =============================================================================
# API-токен Nubes (из ЛК: Профиль → Токены)
api_token = ""
# S3 UID — идентификатор S3-сервиса (UUID, см. ЛК → S3)
s3_uid = ""
# resource_realm — кластер Kubernetes для развёртывания
# Возможные значения: iot-naeel, k8s-3-sandbox-nubes-ru, k8s-4-sandbox-nubes-ru, naeel-test-3
realm = ""
# S3-пользователь: UUID (s3_user_uid) ИЛИ имя (s3_name)
# Можно указать любое одно — провайдер сам найдёт другое по API
# UUID S3-пользователя (из ЛК → S3 → Пользователи)
s3_user_uid = ""
# Имя S3-пользователя (например, "my-s3-user")
s3_name = ""
api_token = "" # JWT-токен
realm = "k8s-3-sandbox-nubes-ru" # кластер Kubernetes
s3_name = "" # имя S3-пользователя
s3_user_uid = "" # UUID S3-пользователя