# ============================================================================= # Flask Producer — генерирует IoT-события, шлёт в RabbitMQ # ============================================================================= locals { producer_rabbit_host = try(nubes_rabbitmq.main.state_out_flat["internalConnect"], "") producer_rabbit_user = try(nonsensitive(nubes_rabbitmq.main.vault_secrets["adminUser"]), "admin") producer_rabbit_password = try(nonsensitive(nubes_rabbitmq.main.vault_secrets["adminPass"]), "") } resource "nubes_flask" "producer" { resource_name = local.producer_resource_name startup_configuration = { resource_realm = var.realm } cluster_configuration = { cpu = local.producer_cpu memory = local.producer_memory replicas = local.producer_replicas } access_configuration = { domain = local.producer_domain } app_configuration = { version = "3.12" git_path = local.producer_git_path health_path = "/health" } git_revision = local.producer_git_revision operation_timeout = local.producer_timeout adopt_existing_on_create = true json_env = jsonencode({ RABBIT_HOST = local.producer_rabbit_host RABBIT_PORT = "5672" RABBIT_USER = local.producer_rabbit_user RABBIT_PASSWORD = local.producer_rabbit_password RABBIT_QUEUE = local.rabbit_queue PRODUCE_INTERVAL = "3" }) depends_on = [nubes_rabbitmq.main] }