Files
tf_provider/TEST_STAND/IOT_KAFKA_DEMO/producer.tf
T

48 lines
1.5 KiB
Terraform

# =============================================================================
# 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]
}