forked from cloudposse/terraform-aws-cicd
-
Notifications
You must be signed in to change notification settings - Fork 0
/
variables.tf
191 lines (159 loc) · 6.53 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
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
variable "elastic_beanstalk_application_name" {
type = string
default = ""
description = "Elastic Beanstalk application name. If not provided or set to empty string, the ``Deploy`` stage of the pipeline will not be created"
}
variable "elastic_beanstalk_environment_name" {
type = string
default = ""
description = "Elastic Beanstalk environment name. If not provided or set to empty string, the ``Deploy`` stage of the pipeline will not be created"
}
variable "github_oauth_token" {
type = string
description = "GitHub Oauth Token"
}
variable "github_webhooks_token" {
type = string
default = ""
description = "GitHub OAuth Token with permissions to create webhooks. If not provided, can be sourced from the `GITHUB_TOKEN` environment variable"
}
variable "github_webhook_events" {
type = list(string)
description = "A list of events which should trigger the webhook. See a list of [available events](https://developer.github.com/v3/activity/events/types/)"
default = ["push"]
}
variable "repo_owner" {
type = string
description = "GitHub Organization or Person name"
}
variable "repo_name" {
type = string
description = "GitHub repository name of the application to be built (and deployed to Elastic Beanstalk if configured)"
}
variable "branch" {
type = string
description = "Branch of the GitHub repository, _e.g._ `master`"
}
variable "webhook_enabled" {
type = bool
description = "Set to false to prevent the module from creating any webhook resources"
default = false
}
variable "webhook_target_action" {
type = string
description = "The name of the action in a pipeline you want to connect to the webhook. The action must be from the source (first) stage of the pipeline"
default = "Source"
}
variable "webhook_authentication" {
type = string
description = "The type of authentication to use. One of IP, GITHUB_HMAC, or UNAUTHENTICATED"
default = "GITHUB_HMAC"
}
variable "webhook_filter_json_path" {
type = string
description = "The JSON path to filter on"
default = "$.ref"
}
variable "webhook_filter_match_equals" {
type = string
description = "The value to match on (e.g. refs/heads/{Branch})"
default = "refs/heads/{Branch}"
}
variable "build_image" {
type = string
default = "aws/codebuild/standard:2.0"
description = "Docker image for build environment, _e.g._ `aws/codebuild/standard:2.0` or `aws/codebuild/eb-nodejs-6.10.0-amazonlinux-64:4.0.0`"
}
variable "build_compute_type" {
type = string
default = "BUILD_GENERAL1_SMALL"
description = "`CodeBuild` instance size. Possible values are: ```BUILD_GENERAL1_SMALL``` ```BUILD_GENERAL1_MEDIUM``` ```BUILD_GENERAL1_LARGE```"
}
variable "buildspec" {
type = string
default = ""
description = " Declaration to use for building the project. [For more info](http://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html)"
}
variable "poll_source_changes" {
type = bool
default = true
description = "Periodically check the location of your source content and run the pipeline if changes are detected"
}
variable "privileged_mode" {
type = bool
default = false
description = "If set to true, enables running the Docker daemon inside a Docker container on the CodeBuild instance. Used when building Docker images"
}
variable "region" {
type = string
default = ""
description = "AWS Region, e.g. `us-east-1`. Used as CodeBuild ENV variable when building Docker images. [For more info](http://docs.aws.amazon.com/codebuild/latest/userguide/sample-docker.html)"
}
variable "aws_account_id" {
type = string
default = ""
description = "AWS Account ID. Used as CodeBuild ENV variable when building Docker images. [For more info](http://docs.aws.amazon.com/codebuild/latest/userguide/sample-docker.html)"
}
variable "image_repo_name" {
type = string
default = "UNSET"
description = "ECR repository name to store the Docker image built by this module. Used as CodeBuild ENV variable when building Docker images. [For more info](http://docs.aws.amazon.com/codebuild/latest/userguide/sample-docker.html)"
}
variable "image_tag" {
type = string
default = "latest"
description = "Docker image tag in the ECR repository, e.g. 'latest'. Used as CodeBuild ENV variable when building Docker images. [For more info](http://docs.aws.amazon.com/codebuild/latest/userguide/sample-docker.html)"
}
variable "environment_variables" {
type = list(object(
{
name = string
value = string
}))
default = [
{
name = "NO_ADDITIONAL_BUILD_VARS"
value = "TRUE"
}]
description = "A list of maps, that contain both the key 'name' and the key 'value' to be used as additional environment variables for the build"
}
variable "codebuild_cache_bucket_suffix_enabled" {
type = bool
description = "The cache bucket generates a random 13 character string to generate a unique bucket name. If set to false it uses terraform-null-label's id value"
default = true
}
variable "force_destroy" {
type = bool
default = false
description = "Force destroy the CI/CD S3 bucket even if it's not empty"
}
variable "cache_type" {
type = string
default = "S3"
description = "The type of storage that will be used for the AWS CodeBuild project cache. Valid values: NO_CACHE, LOCAL, and S3. Defaults to S3 to keep same behavior as before upgrading `codebuild` module to 0.18+ version. If cache_type is S3, it will create an S3 bucket for storing codebuild cache inside"
}
variable "access_log_bucket_name" {
type = string
default = ""
description = "Name of the S3 bucket where s3 access log will be sent to"
}
variable "s3_bucket_encryption_enabled" {
type = bool
default = true
description = "When set to 'true' the 'aws_s3_bucket' resource will have AES256 encryption enabled by default"
}
variable "versioning_enabled" {
type = bool
default = true
description = "A state of versioning. Versioning is a means of keeping multiple variants of an object in the same bucket"
}
variable "website_bucket_name" {
type = string
default = ""
description = "Name of the S3 bucket where the website will be deployed"
}
variable "website_bucket_acl" {
type = string
default = "public-read"
description = "Canned ACL of the S3 bucket objects that get served as a website, can be private if using CloudFront with OAI"
}