77 lines
2.2 KiB
Terraform
77 lines
2.2 KiB
Terraform
|
|
# Variables for Networking-VM Module
|
||
|
|
|
||
|
|
variable "resource_group_name" {
|
||
|
|
description = "Name of the resource group"
|
||
|
|
type = string
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "location" {
|
||
|
|
description = "Azure region"
|
||
|
|
type = string
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "cluster_name" {
|
||
|
|
description = "Name of the cluster"
|
||
|
|
type = string
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "environment" {
|
||
|
|
description = "Environment (prod, dev, test, staging)"
|
||
|
|
type = string
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "tags" {
|
||
|
|
description = "Tags to apply to resources"
|
||
|
|
type = map(string)
|
||
|
|
default = {}
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "allowed_ssh_ips" {
|
||
|
|
description = "List of IP addresses/CIDR blocks allowed for SSH access. If empty, allows from anywhere (not recommended for production)."
|
||
|
|
type = list(string)
|
||
|
|
default = []
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "allowed_rpc_ips" {
|
||
|
|
description = "List of IP addresses/CIDR blocks allowed for RPC access (Nginx proxy subnet or Cloudflare Tunnel IPs). If empty, allows from anywhere (not recommended for production)."
|
||
|
|
type = list(string)
|
||
|
|
default = []
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "allowed_p2p_ips" {
|
||
|
|
description = "List of IP addresses/CIDR blocks allowed for P2P access. If empty, allows from anywhere (not recommended for production)."
|
||
|
|
type = list(string)
|
||
|
|
default = []
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "allowed_metrics_ips" {
|
||
|
|
description = "List of IP addresses/CIDR blocks allowed for metrics access. If empty, allows from anywhere (not recommended for production)."
|
||
|
|
type = list(string)
|
||
|
|
default = []
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "subnet_nsg_enabled" {
|
||
|
|
description = "Whether to attach NSG to subnet. Set to false for Nginx proxy subnet (uses NIC-level NSG instead)."
|
||
|
|
type = bool
|
||
|
|
default = true
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "enable_besu_rules" {
|
||
|
|
description = "Whether to enable Besu-specific rules (P2P/RPC/Metrics). Set to false for Nginx proxy subnet."
|
||
|
|
type = bool
|
||
|
|
default = true
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "vnet_address_space" {
|
||
|
|
description = "Address space for the Virtual Network (e.g., 10.0.0.0/16). Use region-specific ranges if VPN/ExpressRoute will connect regions."
|
||
|
|
type = string
|
||
|
|
default = "10.0.0.0/16"
|
||
|
|
}
|
||
|
|
|
||
|
|
variable "subnet_address_prefix" {
|
||
|
|
description = "Address prefix for the VM subnet (e.g., 10.0.1.0/24)"
|
||
|
|
type = string
|
||
|
|
default = "10.0.1.0/24"
|
||
|
|
}
|
||
|
|
|