docs: пароль БД через vault_secrets["users"] — задокументировано, чтобы не искать

Проверено по API 2026-10-01 (pg4crud2, TEST):
GET /instances/<uid>/vault/users -> {"users":{"user4crudpg":{"password":"..."}}}.
Пароль ЕСТЬ; state.out.users — метаданные без пароля (их легко перепутать).

- README.md: строка навигации «Пароль БД / секреты Vault» + раздел «Грабли, на которые уже наступали»
  (Invalid index из-за одного apply; errorLog врёт — смотреть stages; лишний sensitive).
- docs/curated/postgres/pg_user_db.md: раздел «Пароль пользователя БД и секреты Vault» (ловушки,
  два apply, диагностика через /instanceOperations?fields=stages); исправлено утверждение «все 4 ресурса
  за один apply» — для приложений, читающих пароль, нужен второй apply.
- docs/30_registry/guides/getting-started.md: помечены устаревшие ключи adminUser/adminPass (сейчас 404).
- HISTORY/2026-10-01_...: дополнение с фактами и указанием, что первый разбор ошибся.
This commit is contained in:
Repinoid
2026-10-01 14:06:06 +03:00
parent 9c1acabb4e
commit 61405dd3dd
4 changed files with 79 additions and 0 deletions
@@ -107,3 +107,19 @@ id=1094 {"certCA":"","certServer":"","durationCA":"175200","durationServer":"87
2. **Действие за пределами прямого поручения** (`TEST_STAND/CRUD/README.md`): по команде «замени
`Nail` → `terraform` в путях реп» заменён и владелец репозитория `tf_examples`, который остался
у `Nail` (`/terraform/tf_examples` → 301 → `/Nail/tf_examples`).
## Дополнение: где пароль и почему падало (проверено по API)
- Пароль пользователя **есть**. `GET /instances/8d5b240c-fce6-4b01-8c6b-04c6bf732ba8/vault/users` →
`{"name":"users","value":{"user4crudpg":{"password":"<64 символа>"}}}`.
То же читает провайдер: `provider/internal/core/instance_outputs.go:94` (`/instances/{uid}/vault/{name}`).
- `state.out.users` — **метаданные** (`role`, `rights`, `username`, `mtlsAccess`), пароля там нет.
Именно этот объект легко принять за секрет и сделать вывод «пароля нет» — так и произошло при первом разборе.
- `vault.fields = ["users"]`; имена `adminPass`, `adminUser`, `standbyPass`, `standbyUser`, `password` → 404.
- Причина `Invalid index` в locals приложений (Lucee/Flask/Node.js): PostgreSQL и пользователь создавались
**одним** `apply`, `vault_secrets` читались на этапе Create PG, когда пользователя ещё не существовало.
Нужны два `apply` — об этом же прямо написано в `TEST_STAND/CRUD/README.md`.
- Документация расходится с фактом: `docs/30_registry/guides/getting-started.md:199-200` использует
`vault_secrets["adminUser"]` / `["adminPass"]`; актуальный формат `users.<username>.password`
не был описан нигде. Исправлено 2026-10-01: добавлен раздел в `docs/curated/postgres/pg_user_db.md`,
ссылка в корневом `README.md`, предупреждение в самом гайде.