-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathvariables.tf
141 lines (116 loc) · 3.27 KB
/
variables.tf
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
141
// --------------------------
// Global/General Variables
// --------------------------
variable account_id {
description = "AWS Account ID"
}
variable namespace {
description = "Namespace, which could be your organization name or abbreviation, e.g. 'eg' or 'cp'"
default = "hfla"
}
variable region {
type = string
}
variable project_name {
description = "The overall name of the project using this infrastructure; used to group related resources by"
}
variable environment {
type = string
}
variable tags {
default = { terraform_managed = "true" }
type = map
}
variable domain_name {
description = "The domain name where the application will be deployed, must already live in AWS"
}
variable host_names {
description = "The URL where the application will be hosted, must be a subdomain of the domain_name"
}
variable cidr_block {
default = "10.10.0.0/16"
description = "The range of IP addresses this vpc will reside in"
}
variable availability_zones {
description = "Available cidr blocks for public subnets."
type = list(string)
// default = [
// "us-east-2a",
// "us-east-2b"
// ]
}
// --------------------------
// ECS/Fargat Variables
// --------------------------
variable container_cpu {
type = number
default = 256
}
variable container_memory {
type = number
default = 512
}
variable container_port {
type = number
// default = 5000
}
variable health_check_path {
type = string
default = "/health"
}
variable image_tag {
description = "tag to be used for elastic container repositry image"
default = "latest"
}
variable desired_count {
default = 1
type = number
}
// --------------------------
// RDS/Database Variables
// --------------------------
variable db_name {
description = "Name of the Database"
}
variable db_username {
description = "Databse Username"
}
variable db_password {
description = "Databse Password"
}
variable db_port {
description = "Databse Port"
}
// DB Migration Variables (Under construction)
variable db_instance_id_migration {
description = "The database ID from which the new database will start using the latest snapshot"
default = "na"
}
variable db_instance_region_migration {
description = "The database ID from which the new database will start using the latest snapshot"
default = "na"
}
variable db_snapshot_migration {
description = "Name of snapshot that will used to for new database"
default = "na"
}
// --------------------------
// Bastion Module Variables
// --------------------------
variable bastion_name {}
variable bastion_instance_type {
description = "The ec2 instance type of the bastion server"
default = "t2.micro"
}
variable cron_key_update_schedule {
default = "5,0,*,* * * * *"
description = "The cron schedule that public keys are synced from the bastion s3 bucket to the server; default to once every hour"
}
// variable ssh_public_key_names {
// description = "the name of the public key files in AWS S3 ./public_keys without the file extension; example ['alice', 'bob', 'carol']"
// type = list(string)
// }
variable github_usernames {
description = "the name github users that will be granted SSH access to the bastion; example ['alice', 'bob', 'carol']"
type = list(string)
}