mirror of
https://github.com/outbackdingo/firezone.git
synced 2026-04-07 22:07:16 +00:00
Why: * Previously the terraform for all of the AWS infra was created and run outside of the mono repo. While this was very quick to setup and work with, keeping the gateway up to date was easy to forget about. Moving all of the AWS infra TF into the mono repo will allow everything to stay up to date and will make sure everyone has easy access to update any of the infra as needed. --------- Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
83 lines
2.1 KiB
HCL
83 lines
2.1 KiB
HCL
variable "ami" {
|
|
type = string
|
|
description = "AMI ID for the EC2 instance"
|
|
default = "ami-0b2a9065573b0a9c9" # Ubuntu 22.04 in us-east-1
|
|
|
|
validation {
|
|
condition = length(var.ami) > 4 && substr(var.ami, 0, 4) == "ami-"
|
|
error_message = "Please provide a valid value for variable AMI."
|
|
}
|
|
}
|
|
|
|
variable "associate_public_ip_address" {
|
|
description = "Whether to associate a public IP address with an instance in a VPC"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "instance_type" {
|
|
description = "The type of instance to start"
|
|
type = string
|
|
default = "t3.micro"
|
|
}
|
|
|
|
variable "instance_tags" {
|
|
description = "Additional tags for the instance"
|
|
type = map(string)
|
|
default = {}
|
|
}
|
|
|
|
variable "ipv6_addresses" {
|
|
description = "Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface"
|
|
type = list(string)
|
|
default = null
|
|
}
|
|
|
|
variable "key_name" {
|
|
description = "Key name of the Key Pair to use for the instance; which can be managed using the `aws_key_pair` resource"
|
|
type = string
|
|
default = null
|
|
}
|
|
|
|
variable "monitoring" {
|
|
description = "If true, the launched EC2 instance will have detailed monitoring enabled"
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "name" {
|
|
description = "Name to be used on EC2 instance created"
|
|
type = string
|
|
default = ""
|
|
}
|
|
|
|
variable "private_ip" {
|
|
description = "Private IP address to associate with the instance in a VPC"
|
|
type = string
|
|
default = null
|
|
}
|
|
|
|
variable "root_block_device" {
|
|
description = "Customize details about the root block device of the instance. See Block Devices below for details"
|
|
type = list(any)
|
|
default = []
|
|
}
|
|
|
|
variable "subnet_id" {
|
|
description = "The VPC Subnet ID to launch in"
|
|
type = string
|
|
default = null
|
|
}
|
|
|
|
variable "tags" {
|
|
description = "A mapping of tags to assign to the resource"
|
|
type = map(string)
|
|
default = {}
|
|
}
|
|
|
|
variable "vpc_security_group_ids" {
|
|
description = "A list of security group IDs to associate with"
|
|
type = list(string)
|
|
default = null
|
|
}
|