docs: update history — SSL, import, tf_examples, lessons learned

This commit is contained in:
“Naeel”
2026-07-21 16:09:43 +04:00
parent f0e01dad6e
commit 399745c177
+27 -2
View File
@@ -33,8 +33,33 @@
### Баги исправлены
1. **Lucee DROP TABLE** — при каждом старте приложения таблица дропалась, данные терялись
2. **Flask init_db** — только в `__main__`, под gunicorn таблица не создавалась
3. **Node.js startup**`app.listen` внутри `.then()` — если PG не ответил, сервер не стартовал
4. **Node.js SSL** `PGSSLMODE` не передавался в `json_env`
3. **Node.js startup**`app.listen` внутри `.then()` — если PG не ответил, сервер не стартовал. Исправлено: `app.listen` вынесен наружу, `initDB` с `.catch()`
4. **Node.js PGSSLMODE** — не передавался в `json_env` (только Lucee/Flask). PG требовал SSL → `pg_hba.conf rejects connection ... no encryption`
5. **Flask sslmode** — пытались добавить в `psycopg2.connect()`, но Flask работал и без него (PG в том же кластере). Откачено.
6. **s3_name в документации** — исправлено «S3 → Пользователи» → «S3 → Имя экземпляра»
7. **Домены в комментариях** — везде `.dev.nubes.ru`, убрано ошибочное `.test.nubes.ru`
### tf_examples — репозиторий примеров
- Создан `https://gitea.services.ngcloud.ru/Nail/tf_examples.git`
- `CRUD/` — копия `TEST_STAND/CRUD/`, без токенов (`.gitignore *.tfvars`)
- `SHTURVAL_MGMT/` — management-кластер Штурвал (сервис 148), подробный README
- Корневой README с перечнем примеров
### Импорт инстансов в Terraform
- `terraform import nubes_<тип>.<имя> <instance-uid>`
- UUID из URL: `deck-.../services/instance/detail/<uuid>`
- Импорт работает, но **Read падает с 404 если инстанс создан другим пользователем** — API возвращает 403/404
- Чужие инстансы импортировать нельзя
### README во всех репо
- Три репо приложений — одна строка: «Деплоится через Terraform (nubes_...)»
- Убраны `npm install`, `pip install`, `gunicorn` — всё делает платформа
### Известное ограничение
PG+user+DB и приложения нельзя создать за один apply — `vault_secrets["users"]` не заполнен на момент создания приложений. Два apply. Подробнее в README.
## Важные выводы
- **Не менять код без «делай»** — нарушал неоднократно (Flask sslmode, try() в tf)
- **Проверять YAML перед созданием кода** — структура папок (Flask `site/`, Node.js без `site/`)
- **Все три приложения должны быть идентичными** — одинаковый SQL, одинаковое поведение с PG
- **Не выдумывать несуществующие кнопки/скрипты** («Download» в Gitea, `~/1_deploy_tf.sh`)