Files
tf_provider/PROD_STAND/PG1/resources.tf
T
2026-06-30 15:46:24 +04:00

142 lines
4.6 KiB
Terraform

resource "nubes_postgres" "db2" {
# Основной Postgres-кластер для демо.
resource_name = "pg-testing"
s3_uid = "6d6061cb-b0c1-44b9-8969-a70f08fe673c"
# s3_uid = "6d6061cb-b0c1-44b9-8969-a70f08fe673c"
resource_realm = "k8s-3.ext.nubes.ru"
resource_instances = 1
resource_memory = 1024
resource_c_p_u = 1000
resource_disk = "1"
app_version = "17"
json_parameters = jsonencode({
# Выключаем подробные логи подключений в демо.
log_connections = "off"
log_disconnections = "off"
})
enable_pg_pooler_master = false
enable_pg_pooler_slave = false
allow_no_s_s_l = false
auto_scale = false
auto_scale_percentage = 10
auto_scale_tech_window = 0
auto_scale_quota_gb = "1"
need_external_address_master = false
adopt_existing_on_create = true
}
# output "pg_vault_secrets" {
# value = nubes_postgres.db2.vault_secrets
# sensitive = true
# }
resource "nubes_lucee" "app1" {
# Lucee UI, который читает/пишет в Postgres.
resource_name = "lucy11"
resource_realm = nubes_postgres.db2.resource_realm
domain = "web07"
git_path = "https://gitea-naeel.giteak8s.services.ngcloud.ru/naeel/testlucee.git"
json_env = jsonencode({
# JDBC datasource для Lucee.
testds_class = "org.postgresql.Driver"
testds_bundleName = "org.postgresql.jdbc"
testds_bundleVersion = "42.6.0"
testds_connectionString = "jdbc:postgresql://${nubes_postgres.db2.state_out_flat["internalConnect.master"]}:5432/postgres?sslmode=require"
testds_username = nubes_postgres.db2.vault_secrets["adminUser"]
testds_password = nubes_postgres.db2.vault_secrets["adminPass"]
testds_connectionLimit = "7"
testds_liveTimeout = "15"
testds_validate = "false"
})
resource_c_p_u = 300
resource_memory = 512
resource_instances = 1
app_version = "5.4"
depends_on = [nubes_postgres.db2]
adopt_existing_on_create = true
}
resource "nubes_s3bucket" "baba_bucket" {
resource_name = "baba-buck-test2"
s3_user_uid = "6d6061cb-b0c1-44b9-8969-a70f08fe673c"
bucket_name = "baba0"
# adopt_existing_on_create=true
}
resource "nubes_nodejs" "app3" {
# NodeJS демо, работающий с тем же Postgres.
resource_name = "node_0111"
resource_realm = nubes_postgres.db2.resource_realm
domain = "node07"
git_path = "https://gitea-naeel.giteak8s.services.ngcloud.ru/naeel/testnode.git"
health_path = "/healthz"
app_version = "23"
json_env = jsonencode({
# Переменные подключения к Postgres.
PGHOST = nubes_postgres.db2.state_out_flat["internalConnect.master"]
PGPORT = "5432"
PGUSER = nubes_postgres.db2.vault_secrets["adminUser"]
PGPASSWORD = nubes_postgres.db2.vault_secrets["adminPass"]
PGSSLMODE = "require"
DATABASE_URL = format(
"postgresql://%s:%s@%s:5432/postgres",
nubes_postgres.db2.vault_secrets["adminUser"],
nubes_postgres.db2.vault_secrets["adminPass"],
nubes_postgres.db2.state_out_flat["internalConnect.master"]
)
})
resource_c_p_u = 300
resource_memory = 256
resource_instances = 1
adopt_existing_on_create = true
# suspend_on_destroy = true
depends_on = [nubes_postgres.db2]
}
# resource "nubes_nodejs" "app4" {
# # NodeJS демо, работающий с тем же Postgres.
# resource_name = "node_0113"
# resource_realm = nubes_postgres.db2.resource_realm
# domain = "node07"
# git_path = "https://gitea-naeel.giteak8s.services.ngcloud.ru/naeel/testnode.git"
# health_path = "/healthz"
# app_version = "23"
# json_env = jsonencode({
# # Переменные подключения к Postgres.
# PGHOST = nubes_postgres.db2.state_out_flat["internalConnect.master"]
# PGPORT = "5432"
# PGUSER = nubes_postgres.db2.vault_secrets["adminUser"]
# PGPASSWORD = nubes_postgres.db2.vault_secrets["adminPass"]
# PGSSLMODE = "require"
# DATABASE_URL = format(
# "postgresql://%s:%s@%s:5432/postgres",
# nubes_postgres.db2.vault_secrets["adminUser"],
# nubes_postgres.db2.vault_secrets["adminPass"],
# nubes_postgres.db2.state_out_flat["internalConnect.master"]
# )
# })
# resource_c_p_u = 300
# resource_memory = 256
# resource_instances = 1
# adopt_existing_on_create = true
# # suspend_on_destroy = true
# depends_on = [nubes_postgres.db2]
# }