This commit is contained in:
Work 2026-01-28 14:32:07 +03:00
parent 28b26e1dad
commit 42b6bcedfd
2 changed files with 20 additions and 5 deletions

View File

@ -25,14 +25,21 @@ resource "yandex_mdb_postgresql_user" "this" {
password = random_password.user_password[each.key].result password = random_password.user_password[each.key].result
conn_limit = try(each.value.user.conn_limit, 10) conn_limit = try(each.value.user.conn_limit, 10)
# permissions только для ДРУГИХ существующих БД # Permission на свою БД + дополнительные permissions
# на свою БД user получает права автоматически как owner # Yandex API требует явный permission даже для владельца
dynamic "permission" { dynamic "permission" {
for_each = distinct(compact(try(each.value.user.permissions, []))) for_each = distinct(concat(
[each.value.database.name],
try(each.value.user.permissions, [])
))
content { content {
database_name = permission.value database_name = permission.value
} }
} }
lifecycle {
ignore_changes = [password]
}
} }
resource "yandex_mdb_postgresql_database" "this" { resource "yandex_mdb_postgresql_database" "this" {

View File

@ -86,6 +86,15 @@ ${needs_section}
VALIDATE_JOB VALIDATE_JOB
# Plan needs для secrets - ждём plan зависимостей
plan_needs="validate-${job_prefix}"
if [ "$component" = "secrets" ]; then
plan_needs="validate-${job_prefix}
- plan-${env}-namespace
- plan-${env}-s3
- plan-${env}-database"
fi
cat >> "$OUTPUT_FILE" << PLAN_JOB cat >> "$OUTPUT_FILE" << PLAN_JOB
plan-${job_prefix}: plan-${job_prefix}:
stage: plan stage: plan
@ -94,9 +103,8 @@ plan-${job_prefix}:
TG_ROOT: "${full_component_dir}" TG_ROOT: "${full_component_dir}"
ENVIRONMENT: "${env}" ENVIRONMENT: "${env}"
YC_FOLDER_ID: "\$${folder_var}" YC_FOLDER_ID: "\$${folder_var}"
TG_SKIP_DEPENDENCY_OUTPUTS: "true"
needs: needs:
- validate-${job_prefix} - ${plan_needs}
before_script: before_script:
- cd \$TG_ROOT - cd \$TG_ROOT
- ls -la - ls -la