fix(postgres): исправлен api_endpoint nubes, try() для vault_secrets, стресс-скрипт, документация ошибок

This commit is contained in:
Naeel
2026-03-20 20:14:36 +03:00
parent 861a26cd51
commit 1b3c8376c0
6 changed files with 177 additions and 8 deletions
+9 -5
View File
@@ -2,16 +2,20 @@
# Актуальные credentials из vault_secrets (authoritatively) — vault синхронизирован с кластером.
# Структура vault_secrets["users"]: JSON-строка {"username": {"password": "...", "username": "..."}}
locals {
pg_creds_map = jsondecode(nubes_postgres.npg.vault_secrets["users"])
# try() нужен: vault_secrets["users"] появляется только ПОСЛЕ создания первого пользователя.
# На первом apply ключа ещё нет → пустая map. Пароль подтянется при следующем apply.
pg_creds_map = try(jsondecode(lookup(nubes_postgres.npg.vault_secrets, "users", "{}")), {})
pg_username = nubes_postgres_user.pg_user.username
pg_password = local.pg_creds_map[local.pg_username]["password"]
pg_password = try(local.pg_creds_map[local.pg_username]["password"], "")
pg_host = nubes_postgres.npg.state_out_flat["internalConnect.master"]
pg_database = nubes_postgres_database.db.db_name
}
resource "nubes_postgres" "npg" {
resource_name = "teststand-pg-2"
resource_name = "pg-sless-demo"
# s3_uid = "s01325"
s3_uid = var.s3_uid
resource_realm = var.realm
@@ -40,14 +44,14 @@ resource "nubes_postgres" "npg" {
resource "nubes_postgres_user" "pg_user" {
postgres_id = nubes_postgres.npg.id
username = "u-user0"
username = "user0"
role = "ddl_user"
adopt_existing_on_create = true
}
resource "nubes_postgres_database" "db" {
postgres_id = nubes_postgres.npg.id
db_name = "db_terra"
db_name = "db0"
db_owner = nubes_postgres_user.pg_user.username
adopt_existing_on_create = true
# suspend_on_destroy = false