include "root" { path = find_in_parent_folders() } include "env" { path = find_in_parent_folders("env.hcl") expose = true merge_strategy = "deep" } locals { repo_root = try(get_repo_root(), "${get_terragrunt_dir()}/../../..") infra_config = yamldecode(file("${local.repo_root}/infrastructure.yaml")) env_name = basename(dirname(get_terragrunt_dir())) env_var_prefix = upper(replace(local.env_name, "-", "_")) env_config = local.infra_config.environments[local.env_name] rabbitmq_config = try(local.env_config.rabbitmq, {}) } terraform { source = "${get_terragrunt_dir()}/../../../modules//rabbitmq" } inputs = { environment = local.env_name management_endpoint = get_env("RABBITMQ_${local.env_var_prefix}_MANAGEMENT_ENDPOINT", try(local.rabbitmq_config.management_endpoint, "")) management_username = get_env("RABBITMQ_${local.env_var_prefix}_MANAGEMENT_USERNAME", "") management_password = get_env("RABBITMQ_${local.env_var_prefix}_MANAGEMENT_PASSWORD", "") amqp_host = get_env("RABBITMQ_${local.env_var_prefix}_AMQP_HOST", try(local.rabbitmq_config.amqp_host, "rabbitmq.rabbitmq.svc.cluster.local")) amqp_port = tonumber(get_env("RABBITMQ_${local.env_var_prefix}_AMQP_PORT", tostring(try(local.rabbitmq_config.amqp_port, 5672)))) rabbitmq_policy = try(local.rabbitmq_config.policy, {}) vhosts = try(local.rabbitmq_config.vhosts, []) users = try(local.rabbitmq_config.users, []) permissions = try(local.rabbitmq_config.permissions, []) topic_permissions = try(local.rabbitmq_config.topic_permissions, []) exchanges = try(local.rabbitmq_config.exchanges, []) queues = try(local.rabbitmq_config.queues, []) bindings = try(local.rabbitmq_config.bindings, []) policies = try(local.rabbitmq_config.policies, []) unmanaged_output_users = try(local.rabbitmq_config.unmanaged_output_users, []) unmanaged_output_permissions = try(local.rabbitmq_config.unmanaged_output_permissions, []) yc_token = get_env("YC_TOKEN", "") yc_service_account_key_file = get_env("YC_SERVICE_ACCOUNT_KEY_FILE", "") yc_cloud_id = get_env("YC_CLOUD_ID", "") yc_folder_id = get_env("YC_PROD_FOLDER_ID", get_env("YC_FOLDER_ID", "")) kubeconfig_path = get_env("KUBECONFIG", "") kube_context = get_env("KUBE_CONTEXT", "") }