-
Notifications
You must be signed in to change notification settings - Fork 0
/
variables.tf
156 lines (133 loc) · 3.66 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
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
/*
* Copyright (C) 2019 DevOps, SIA. - All Rights Reserved
* You may use, distribute and modify this code under the
* terms of the Apache License Version 2.0.
* http://www.apache.org/licenses
*/
##########
# Naming #
##########
variable "namespace" {
type = string
default = ""
description = "Namespace, which could be your organization name or abbreviation, e.g. 'eg' or 'cp'"
}
variable "environment" {
type = string
default = ""
description = "Environment, e.g. 'prod', 'staging', 'dev', 'pre-prod', 'UAT'"
}
variable "stage" {
type = string
default = ""
description = "Stage, e.g. 'prod', 'staging', 'dev', OR 'source', 'build', 'test', 'deploy', 'release'"
}
variable "name" {
type = string
default = ""
description = "Solution name, e.g. 'app' or 'jenkins'"
}
variable "delimiter" {
type = string
default = "-"
description = "Delimiter to be used between `namespace`, `environment`, `stage`, `name` and `attributes`"
}
variable "attributes" {
type = list(string)
default = []
description = "Additional attributes (e.g. `1`)"
}
variable "tags" {
type = map(string)
default = {}
description = "Additional tags (e.g. `map('BusinessUnit','XYZ')`"
}
#######
# VPC #
#######
variable "vpc_id" {
description = "ID of an existing VPC where resources will be created"
type = string
default = ""
}
variable "public_subnet_ids" {
description = "A list of IDs of existing public subnets inside the VPC"
type = list(string)
default = []
}
variable "private_subnet_ids" {
description = "A list of IDs of existing private subnets inside the VPC"
type = list(string)
default = []
}
variable "cidr" {
description = "The CIDR block for the VPC which will be created if `vpc_id` is not specified"
type = string
default = ""
}
variable "azs" {
description = "A list of availability zones in the region"
type = list(string)
default = []
}
variable "public_subnets" {
description = "A list of public subnets inside the VPC"
type = list(string)
default = []
}
variable "private_subnets" {
description = "A list of private subnets inside the VPC"
type = list(string)
default = []
}
###########
# Jenkins #
###########
variable "jenkins_instance_type" {
description = "The type of instance to start"
type = string
default = "t3.medium"
}
variable "jenkins_ami_id" {
description = "Jenkins AMI id. It's recommended to use https://github.com/DevopsCare/packer-jenkins-ami for AMI building"
type = string
default = ""
}
variable "jekins_volume_size" {
description = "EC2 root volume size"
type = string
default = 20
}
variable "ip_whitelist" {
description = "IP list will be able to access Jenkins"
type = list
default = ["0.0.0.0/0"]
}
variable "keypair_name" {
description = "Key pair will be used for EC2 instance"
type = string
default = ""
}
variable "jenkins_iam_instance_profile" {
description = "The IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile"
type = string
default = ""
}
#######
# ACM #
#######
variable "jenkins_domain_name" {
description = "Domain will be used for ACM module"
type = string
default = ""
}
variable "zone_id" {
description = "The ID of the hosted zone to contain Jenkins domain record"
type = string
default = ""
}
variable "subject_alternative_names" {
description = "A list of domains that should be SANs in the issued certificate"
type = list(string)
default = []
}