add: stand configs
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
// 2026-03-19
|
||||
// main.tf — провайдер и переменные для managed RabbitMQ в облаке Nubes.
|
||||
// Тест-стенд: deck-api-test.ngcloud.ru
|
||||
terraform {
|
||||
required_providers {
|
||||
nubes = {
|
||||
source = "terra.k8c.ru/nubes/nubes"
|
||||
version = "5.0.19"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Токен доступа к Nubes API.
|
||||
variable "api_token" {
|
||||
type = string
|
||||
sensitive = true
|
||||
description = "Nubes API token"
|
||||
}
|
||||
|
||||
// Реалм, в котором создаётся RabbitMQ (например, k8s-5.ext.nubes.ru).
|
||||
variable "realm" {
|
||||
type = string
|
||||
sensitive = true
|
||||
description = "resource_realm для nubes_rabbitmq"
|
||||
}
|
||||
|
||||
provider "nubes" {
|
||||
api_token = var.api_token
|
||||
api_endpoint = "https://deck-api-test.ngcloud.ru/api/v1/index.cfm"
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
// 2026-03-19
|
||||
// resources.tf — managed RabbitMQ в облаке Nubes для sless и других сервисов.
|
||||
|
||||
resource "nubes_rabbitmq" "rmq" {
|
||||
// Общий брокер для sless event-triggers и других сервисов облака.
|
||||
resource_name = "sless-rabbit"
|
||||
resource_realm = var.realm
|
||||
resource_instances = 1
|
||||
resource_memory = 512
|
||||
resource_c_p_u = 500
|
||||
resource_disk = 5
|
||||
need_external_address_master = false
|
||||
need_external_address_slave = false
|
||||
}
|
||||
|
||||
locals {
|
||||
// try() — обходим опечатку в API: поле называется как internalConnect, так и inernalConnect.
|
||||
rmq_host = try(nubes_rabbitmq.rmq.state_out_flat["internalConnect.master"], nubes_rabbitmq.rmq.state_out_flat["inernalConnect.master"])
|
||||
rmq_user = nubes_rabbitmq.rmq.vault_secrets["adminUser"]
|
||||
rmq_password = nubes_rabbitmq.rmq.vault_secrets["adminPass"]
|
||||
}
|
||||
|
||||
output "rabbitmq_host" {
|
||||
value = local.rmq_host
|
||||
}
|
||||
|
||||
output "rabbitmq_user" {
|
||||
value = local.rmq_user
|
||||
sensitive = true
|
||||
}
|
||||
|
||||
output "rabbitmq_password" {
|
||||
value = local.rmq_password
|
||||
sensitive = true
|
||||
}
|
||||
|
||||
output "rabbitmq_amqp_url" {
|
||||
// Готовый URL для передачи в оператор sless (env RABBITMQ_URL).
|
||||
value = "amqp://${local.rmq_user}:${local.rmq_password}@${local.rmq_host}:5672/"
|
||||
sensitive = true
|
||||
}
|
||||
Reference in New Issue
Block a user