diff --git a/DEV_STAND/CRUD/flask.tf b/DEV_STAND/CRUD/flask.tf index 70f1b5f..65eaa8f 100644 --- a/DEV_STAND/CRUD/flask.tf +++ b/DEV_STAND/CRUD/flask.tf @@ -12,6 +12,8 @@ locals { resource "nubes_flask" "appflask" { resource_name = local.flask_resource_name + adopt_existing_on_create = true + startup_configuration = { resource_realm = var.realm } @@ -32,16 +34,14 @@ resource "nubes_flask" "appflask" { health_path = "/" } - git_revision = local.flask_git_revision - json_env = jsonencode({ - TABLE_NAME = local.crud_table_name - PGHOST = local.flask_pg_host - PGPORT = local.pg_port - PGUSER = local.flask_pg_user - PGPASSWORD = local.flask_pg_pass - PGDATABASE = local.flask_pg_db - PGSSLMODE = local.pg_ssl_mode + TABLE_NAME = local.crud_table_name + PGHOST = local.flask_pg_host + PGPORT = local.pg_port + PGUSER = local.flask_pg_user + PGPASSWORD = local.flask_pg_pass + PGDATABASE = local.flask_pg_db + PGSSLMODE = local.pg_ssl_mode }) depends_on = [nubes_postgres.main_pg] diff --git a/DEV_STAND/CRUD/locals.tf b/DEV_STAND/CRUD/locals.tf index aa535f7..628a6fe 100644 --- a/DEV_STAND/CRUD/locals.tf +++ b/DEV_STAND/CRUD/locals.tf @@ -9,67 +9,64 @@ locals { # PostgreSQL — общая БД для всех трёх приложений # ═══════════════════════════════════════════════════════════════════════════ - pg_resource_name = "pg4crud" # имя ресурса в Nubes - pg_cpu = 500 # CPU в millicores (500 = 0.5 ядра) - pg_memory = 512 # память в MB - pg_replicas = 1 # количество реплик - pg_disk = 10 # диск в GB - pg_version = "17" # версия PostgreSQL - pg_retain = 14 # дней хранения бэкапов - pg_schedule = "0 0 * * *" # cron расписание бэкапов (ежедневно в полночь) - pg_timeout = "11m" # таймаут операций create/modify + pg_resource_name = "pg4crud" # имя ресурса в Nubes + pg_cpu = 500 # CPU в millicores (500 = 0.5 ядра) + pg_memory = 512 # память в MB + pg_replicas = 1 # количество реплик + pg_disk = 10 # диск в GB + pg_version = "17" # версия PostgreSQL + pg_retain = 14 # дней хранения бэкапов + pg_schedule = "0 0 * * *" # cron расписание бэкапов (ежедневно в полночь) + pg_timeout = "11m" # таймаут операций create/modify # ═══════════════════════════════════════════════════════════════════════════ # PostgreSQL — пользователь и база данных # ═══════════════════════════════════════════════════════════════════════════ - pg_username = "user4crudpg" # имя пользователя БД - pg_role = "ddl_user" # роль (ddl_user = может создавать таблицы) - pg_db_name = "db4crudpg" # имя базы данных + pg_username = "user4crudpg" # имя пользователя БД + pg_role = "ddl_user" # роль (ddl_user = может создавать таблицы) + pg_db_name = "db4crudpg" # имя базы данных # ═══════════════════════════════════════════════════════════════════════════ # Lucee — CFML-приложение (сервис 94) # ═══════════════════════════════════════════════════════════════════════════ - lucee_git_revision = "94d6677" # коммит/тег в git (менять для редеплоя) - lucee_resource_name = "luceecrud" # имя ресурса в Nubes - lucee_domain = "tfluceedev" # домен (станет tfluceedev.luceek8s.dev.nubes.ru). Имя должно быть уникальным — заменяйте на своё! - lucee_version = "5.4" # версия Lucee (CFML engine) - lucee_git_path = "https://gitea.services.ngcloud.ru/Nail/tfluceecrud.git" - lucee_cpu = 300 # CPU в millicores - lucee_memory = 512 # память в MB - lucee_replicas = 1 # количество реплик + lucee_resource_name = "luceecrud" # имя ресурса в Nubes + lucee_domain = "tfluceedev" # домен (станет tfluceedev.luceek8s.dev.nubes.ru). Имя должно быть уникальным — заменяйте на своё! + lucee_version = "5.4" # версия Lucee (CFML engine) + lucee_git_path = "https://gitea.services.ngcloud.ru/terraform/tfluceecrud.git" + lucee_cpu = 300 # CPU в millicores + lucee_memory = 512 # память в MB + lucee_replicas = 1 # количество реплик # ═══════════════════════════════════════════════════════════════════════════ # Таблица CRUD — общая для всех трёх приложений # ═══════════════════════════════════════════════════════════════════════════ - crud_table_name = "crud_items" # имя таблицы (TABLE_NAME в env) + crud_table_name = "crud_items" # имя таблицы (TABLE_NAME в env) # ═══════════════════════════════════════════════════════════════════════════ # Flask — Python-приложение (сервис 89) # ═══════════════════════════════════════════════════════════════════════════ - flask_git_revision = "34c030c" # коммит/тег в git (менять для редеплоя) - flask_resource_name = "flaskcrud" # имя ресурса в Nubes - flask_domain = "tfflaskdev" # домен (станет tfflaskdev.pythonk8s.dev.nubes.ru). Имя должно быть уникальным — заменяйте на своё! - flask_git_path = "https://gitea.services.ngcloud.ru/Nail/tfflaskcrud.git" - flask_cpu = 300 # CPU в millicores - flask_memory = 512 # память в MB - flask_replicas = 1 # количество реплик + flask_resource_name = "flaskcrud" # имя ресурса в Nubes + flask_domain = "tfflaskdev" # домен (станет tfflaskdev.pythonk8s.dev.nubes.ru). Имя должно быть уникальным — заменяйте на своё! + flask_git_path = "https://gitea.services.ngcloud.ru/terraform/tfflaskcrud.git" + flask_cpu = 300 # CPU в millicores + flask_memory = 512 # память в MB + flask_replicas = 1 # количество реплик # ═══════════════════════════════════════════════════════════════════════════ # Node.js — Express-приложение (сервис 95) # ═══════════════════════════════════════════════════════════════════════════ - nodejs_git_revision = "1c646c6" # коммит/тег в git (менять для редеплоя) nodejs_resource_name = "nodejscrud" # имя ресурса в Nubes nodejs_domain = "tfnodejsdev" # домен (станет tfnodejsdev.<суффикс>.dev.nubes.ru). Имя должно быть уникальным — заменяйте на своё! - nodejs_git_path = "https://gitea.services.ngcloud.ru/Nail/tfnodejscrud.git" - nodejs_cpu = 300 # CPU в millicores - nodejs_memory = 512 # память в MB - nodejs_replicas = 1 # количество реплик - nodejs_timeout = "15m" # таймаут операций create/modify + nodejs_git_path = "https://gitea.services.ngcloud.ru/terraform/tfnodejscrud.git" + nodejs_cpu = 300 # CPU в millicores + nodejs_memory = 512 # память в MB + nodejs_replicas = 1 # количество реплик + nodejs_timeout = "15m" # таймаут операций create/modify # ═══════════════════════════════════════════════════════════════════════════ # JDBC — параметры подключения Lucee к PostgreSQL @@ -78,14 +75,14 @@ locals { jdbc_class = "org.postgresql.Driver" jdbc_bundle_name = "org.postgresql.jdbc" jdbc_bundle_version = "42.6.0" - jdbc_conn_limit = "5" # макс. количество соединений - jdbc_live_timeout = "15" # таймаут неактивного соединения (минут) - jdbc_validate = "false" # валидация соединения при выдаче из пула + jdbc_conn_limit = "5" # макс. количество соединений + jdbc_live_timeout = "15" # таймаут неактивного соединения (минут) + jdbc_validate = "false" # валидация соединения при выдаче из пула # ═══════════════════════════════════════════════════════════════════════════ # PostgreSQL — общие параметры подключения # ═══════════════════════════════════════════════════════════════════════════ - pg_port = "5432" # порт PostgreSQL - pg_ssl_mode = "require" # SSL-режим (require = обязательно TLS) + pg_port = "5432" # порт PostgreSQL + pg_ssl_mode = "require" # SSL-режим (require = обязательно TLS) } diff --git a/DEV_STAND/CRUD/lucee.tf b/DEV_STAND/CRUD/lucee.tf index 85d2e25..be7a899 100644 --- a/DEV_STAND/CRUD/lucee.tf +++ b/DEV_STAND/CRUD/lucee.tf @@ -8,6 +8,8 @@ locals { resource "nubes_lucee" "applucee" { resource_name = local.lucee_resource_name + adopt_existing_on_create = true + startup_configuration = { resource_realm = var.realm } @@ -23,12 +25,10 @@ resource "nubes_lucee" "applucee" { } app_configuration = { - version = local.lucee_version - git_path = local.lucee_git_path + version = local.lucee_version + git_path = local.lucee_git_path } - git_revision = local.lucee_git_revision - json_env = jsonencode({ TABLE_NAME = local.crud_table_name testds_class = local.jdbc_class diff --git a/DEV_STAND/CRUD/nodejs.tf b/DEV_STAND/CRUD/nodejs.tf index 50e7fee..38fc007 100644 --- a/DEV_STAND/CRUD/nodejs.tf +++ b/DEV_STAND/CRUD/nodejs.tf @@ -11,6 +11,8 @@ locals { resource "nubes_nodejs" "appnodejs" { resource_name = local.nodejs_resource_name + adopt_existing_on_create = true + startup_configuration = { resource_realm = var.realm } @@ -31,17 +33,16 @@ resource "nubes_nodejs" "appnodejs" { health_path = "/" } - git_revision = local.nodejs_git_revision operation_timeout = local.nodejs_timeout json_env = jsonencode({ - TABLE_NAME = local.crud_table_name - PGHOST = local.nodejs_pg_host - PGPORT = local.pg_port - PGUSER = local.nodejs_pg_user - PGPASSWORD = local.nodejs_pg_pass - PGDATABASE = local.nodejs_pg_db - PGSSLMODE = local.pg_ssl_mode + TABLE_NAME = local.crud_table_name + PGHOST = local.nodejs_pg_host + PGPORT = local.pg_port + PGUSER = local.nodejs_pg_user + PGPASSWORD = local.nodejs_pg_pass + PGDATABASE = local.nodejs_pg_db + PGSSLMODE = local.pg_ssl_mode }) depends_on = [nubes_postgres.main_pg] diff --git a/DEV_STAND/CRUD/terraform.tfvars.example b/DEV_STAND/CRUD/terraform.tfvars.example index e65dbeb..63ae1ea 100644 --- a/DEV_STAND/CRUD/terraform.tfvars.example +++ b/DEV_STAND/CRUD/terraform.tfvars.example @@ -13,4 +13,4 @@ api_token = "" # JWT-токен realm = "k8s-3-sandbox-nubes-ru" # кластер Kubernetes s3_name = "" # имя S3-экземпляра -s3_user_uid = "" # UUID S3-экземпляра +s3_user_uid = "" # UUID S3-пользователя