add: stand configs

This commit is contained in:
“Naeel”
2026-06-30 15:46:24 +04:00
parent ca276d200f
commit 1a52506fb1
91 changed files with 10766 additions and 0 deletions
+30
View File
@@ -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"
}
+41
View File
@@ -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
}