github.com/tetrafolium/tflint@v0.8.0/tflint/test-fixtures/v0.11.0_module/.terraform/modules/bc6c4d9a36f214ac3fefd950422c4c24/variables.tf (about)

     1  # ---------------------------------------------------------------------------------------------------------------------
     2  # REQUIRED PARAMETERS
     3  # You must provide a value for each of these parameters.
     4  # ---------------------------------------------------------------------------------------------------------------------
     5  
     6  variable "cluster_name" {
     7    description = "The name of the Consul cluster (e.g. consul-stage). This variable is used to namespace all resources created by this module."
     8  }
     9  
    10  variable "ami_id" {
    11    description = "The ID of the AMI to run in this cluster. Should be an AMI that had Consul installed and configured by the install-consul module."
    12  }
    13  
    14  variable "instance_type" {
    15    description = "The type of EC2 Instances to run for each node in the cluster (e.g. t2.micro)."
    16  }
    17  
    18  variable "vpc_id" {
    19    description = "The ID of the VPC in which to deploy the Consul cluster"
    20  }
    21  
    22  variable "allowed_inbound_cidr_blocks" {
    23    description = "A list of CIDR-formatted IP address ranges from which the EC2 Instances will allow connections to Consul"
    24    type        = "list"
    25  }
    26  
    27  variable "user_data" {
    28    description = "A User Data script to execute while the server is booting. We remmend passing in a bash script that executes the run-consul script, which should have been installed in the Consul AMI by the install-consul module."
    29  }
    30  
    31  # ---------------------------------------------------------------------------------------------------------------------
    32  # OPTIONAL PARAMETERS
    33  # These parameters have reasonable defaults.
    34  # ---------------------------------------------------------------------------------------------------------------------
    35  
    36  variable "cluster_size" {
    37    description = "The number of nodes to have in the Consul cluster. We strongly recommended that you use either 3 or 5."
    38    default     = 3
    39  }
    40  
    41  variable "cluster_tag_key" {
    42    description = "Add a tag with this key and the value var.cluster_tag_value to each Instance in the ASG. This can be used to automatically find other Consul nodes and form a cluster."
    43    default     = "consul-servers"
    44  }
    45  
    46  variable "cluster_tag_value" {
    47    description = "Add a tag with key var.clsuter_tag_key and this value to each Instance in the ASG. This can be used to automatically find other Consul nodes and form a cluster."
    48    default     = "auto-join"
    49  }
    50  
    51  variable "subnet_ids" {
    52    description = "The subnet IDs into which the EC2 Instances should be deployed. We recommend one subnet ID per node in the cluster_size variable. At least one of var.subnet_ids or var.availability_zones must be non-empty."
    53    type        = "list"
    54    default     = []
    55  }
    56  
    57  variable "availability_zones" {
    58    description = "The availability zones into which the EC2 Instances should be deployed. We recommend one availability zone per node in the cluster_size variable. At least one of var.subnet_ids or var.availability_zones must be non-empty."
    59    type        = "list"
    60    default     = []
    61  }
    62  
    63  variable "ssh_key_name" {
    64    description = "The name of an EC2 Key Pair that can be used to SSH to the EC2 Instances in this cluster. Set to an empty string to not associate a Key Pair."
    65    default     = ""
    66  }
    67  
    68  variable "allowed_ssh_cidr_blocks" {
    69    description = "A list of CIDR-formatted IP address ranges from which the EC2 Instances will allow SSH connections"
    70    type        = "list"
    71    default     = []
    72  }
    73  
    74  variable "allowed_ssh_security_group_ids" {
    75    description = "A list of security group IDs from which the EC2 Instances will allow SSH connections"
    76    type        = "list"
    77    default     = []
    78  }
    79  
    80  variable "allowed_inbound_security_group_ids" {
    81    description = "A list of security group IDs that will be allowed to connect to Consul"
    82    type        = "list"
    83    default     = []
    84  }
    85  
    86  variable "termination_policies" {
    87    description = "A list of policies to decide how the instances in the auto scale group should be terminated. The allowed values are OldestInstance, NewestInstance, OldestLaunchConfiguration, ClosestToNextInstanceHour, Default."
    88    default     = "Default"
    89  }
    90  
    91  variable "associate_public_ip_address" {
    92    description = "If set to true, associate a public IP address with each EC2 Instance in the cluster."
    93    default     = false
    94  }
    95  
    96  variable "tenancy" {
    97    description = "The tenancy of the instance. Must be one of: default or dedicated."
    98    default     = "default"
    99  }
   100  
   101  variable "root_volume_ebs_optimized" {
   102    description = "If true, the launched EC2 instance will be EBS-optimized."
   103    default     = false
   104  }
   105  
   106  variable "root_volume_type" {
   107    description = "The type of volume. Must be one of: standard, gp2, or io1."
   108    default     = "standard"
   109  }
   110  
   111  variable "root_volume_size" {
   112    description = "The size, in GB, of the root EBS volume."
   113    default     = 50
   114  }
   115  
   116  variable "root_volume_delete_on_termination" {
   117    description = "Whether the volume should be destroyed on instance termination."
   118    default     = true
   119  }
   120  
   121  variable "target_group_arns" {
   122    description = "A list of target group ARNs of Application Load Balanacer (ALB) targets to associate with this ASG. If you're using a Elastic Load Balancer (AKA ELB Classic), use the load_balancers variable instead."
   123    type        = "list"
   124    default     = []
   125  }
   126  
   127  variable "load_balancers" {
   128    description = "A list of Elastic Load Balancer (ELB) names to associate with this ASG. If you're using an Application Load Balancer (ALB), use the target_group_arns variable instead."
   129    type        = "list"
   130    default     = []
   131  }
   132  
   133  variable "wait_for_capacity_timeout" {
   134    description = "A maximum duration that Terraform should wait for ASG instances to be healthy before timing out. Setting this to '0' causes Terraform to skip all Capacity Waiting behavior."
   135    default     = "10m"
   136  }
   137  
   138  variable "health_check_type" {
   139    description = "Controls how health checking is done. Must be one of EC2 or ELB."
   140    default     = "EC2"
   141  }
   142  
   143  variable "health_check_grace_period" {
   144    description = "Time, in seconds, after instance comes into service before checking health."
   145    default     = 300
   146  }
   147  
   148  variable "instance_profile_path" {
   149    description = "Path in which to create the IAM instance profile."
   150    default     = "/"
   151  }
   152  
   153  variable "server_rpc_port" {
   154    description = "The port used by servers to handle incoming requests from other agents."
   155    default     = 8300
   156  }
   157  
   158  variable "cli_rpc_port" {
   159    description = "The port used by all agents to handle RPC from the CLI."
   160    default     = 8400
   161  }
   162  
   163  variable "serf_lan_port" {
   164    description = "The port used to handle gossip in the LAN. Required by all agents."
   165    default     = 8301
   166  }
   167  
   168  variable "serf_wan_port" {
   169    description = "The port used by servers to gossip over the WAN to other servers."
   170    default     = 8302
   171  }
   172  
   173  variable "http_api_port" {
   174    description = "The port used by clients to talk to the HTTP API"
   175    default     = 8500
   176  }
   177  
   178  variable "dns_port" {
   179    description = "The port used to resolve DNS queries."
   180    default     = 8600
   181  }
   182  
   183  variable "ssh_port" {
   184    description = "The port used for SSH connections"
   185    default     = 22
   186  }