-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathvariables.tf
More file actions
140 lines (118 loc) · 3.58 KB
/
Copy pathvariables.tf
File metadata and controls
140 lines (118 loc) · 3.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
variable "vpc_id" {
type = string
description = "The VPC that the ECS cluster is in"
}
variable "kms_key_arn" {
type = string
description = "Used for transit and tailscale state encryption"
}
variable "private_subnet_ids" {
type = list(string)
description = <<EOT
The ids for the private subnets that EFS will be deployed into
EOT
}
variable "tsrecorder_ui_enabled" {
type = bool
default = true
description = <<EOT
Whether or not to enable the recorder ui.
EOT
}
variable "tsrecorder_bucket" {
type = string
description = <<EOT
The S3 bucket name, in this region, to put ssh session recordings.
EOT
}
variable "tsrecorder_bucket_prefix" {
type = string
default = null
description = <<EOT
The prefix the tsrecorder will use.
EOT
}
variable "tsrecorder_container_image" {
type = string
default = "docker.io/tailscale/tsrecorder:stable"
description = <<EOT
The fully qualified container image for tsrecorder.
EOT
}
variable "port_efs_tailscale_state" {
type = number
default = 2049
description = <<EOT
The port number at which the tailscale state efs mount is available
EOT
}
variable "tailscale_tags" {
type = list(string)
description = "The list of tags that will be assigned to tailscale node created by this stack."
validation {
condition = alltrue([
for tag in var.tailscale_tags : can(regex("^tag:", tag))
])
error_message = "max_allocated_storage: Each tag in tailscale_tags must start with 'tag:'"
}
}
variable "tailscale_tailnet" {
type = string
description = <<EOT
description = The tailnet domain (or "organization's domain") for your tailscale tailnet, this s found under Settings > General > Organization
EOT
}
variable "tailscale_client_id" {
type = string
sensitive = true
description = "The OIDC client id for tailscale that has permissions to create auth keys with the `tailscale_tags` tags"
}
variable "tailscale_client_secret" {
type = string
sensitive = true
description = "The OIDC client secret paired with `tailscale_client_id`"
}
variable "exec_enabled" {
type = bool
description = "Specifies whether to enable Amazon ECS Exec for the tasks within the service"
default = false
}
variable "public_subnet_ids" {
type = list(string)
description = <<EOT
The ids for the public subnets that ECS will be deployed into
EOT
}
variable "ecs_cluster_arn" {
type = string
description = "The ECS cluster ARN this service will be deployed in"
}
variable "tsrecorder_hostname" {
type = string
default = null
description = <<EOT
The hostname for this tailscale device, will default to to the context id
EOT
}
variable "tsrecorder_node_count" {
type = number
default = 1
description = <<EOT
The number of instances to run in this service.
EOT
}
variable "log_group_retention_in_days" {
default = 30
type = number
description = <<EOT
The number in days that cloudwatch logs will be retained.
EOT
}
variable "task_cpu" {
type = number
description = "The number of CPU units used by the task. If using `FARGATE` launch type `task_cpu` must match supported memory values (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_size)"
}
variable "task_memory" {
type = number
description = "The amount of memory (in MiB) used by the task. If using Fargate launch type `task_memory` must match supported cpu value (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_size)"
}