forked from cloudposse/terraform-aws-ecr
-
Notifications
You must be signed in to change notification settings - Fork 0
/
variables.tf
executable file
·106 lines (89 loc) · 2.93 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
variable "namespace" {
type = string
description = "Namespace (e.g. `eg` or `cp`)"
default = ""
}
variable "environment" {
type = string
default = ""
description = "Environment, e.g. 'prod', 'staging', 'dev', 'pre-prod', 'UAT'"
}
variable "stage" {
type = string
description = "Stage (e.g. `prod`, `dev`, `staging`)"
default = ""
}
variable "name" {
type = string
description = "The Name of the application or solution (e.g. `bastion` or `portal`)"
}
variable "delimiter" {
type = string
default = "-"
description = "Delimiter to be used between `name`, `namespace`, `stage`, etc."
}
variable "attributes" {
type = list(string)
default = []
description = "Additional attributes (e.g. `policy` or `role`)"
}
variable "tags" {
type = map(string)
default = {}
description = "Additional tags (e.g. `map('BusinessUnit','XYZ')`)"
}
variable "enabled" {
type = bool
description = "Set to false to prevent the module from creating any resources"
default = true
}
variable "use_fullname" {
type = bool
default = true
description = "Set 'true' to use `namespace-stage-name` for ecr repository name, else `name`"
}
variable "principals_full_access" {
type = list(string)
description = "Principal ARNs to provide with full access to the ECR"
default = []
}
variable "principals_readonly_access" {
type = list(string)
description = "Principal ARNs to provide with readonly access to the ECR"
default = []
}
variable "scan_images_on_push" {
type = bool
description = "Indicates whether images are scanned after being pushed to the repository (true) or not (false)"
default = false
}
variable "max_image_count" {
type = number
description = "How many Docker Image versions AWS ECR will store"
default = 500
}
variable "regex_replace_chars" {
type = string
default = "/[^a-z/A-Z_0-9-]/"
description = "Regex to replace chars with empty string in `namespace`, `environment`, `stage` and `name`. By default only letters, digits, dash, slash, and underscore are allowed, all other chars are removed"
}
variable "image_names" {
type = list(string)
default = []
description = "List of Docker local image names, used as repository names for AWS ECR "
}
variable "image_tag_mutability" {
type = string
default = "MUTABLE"
description = "The tag mutability setting for the repository. Must be one of: `MUTABLE` or `IMMUTABLE`"
}
variable "enable_lifecycle_policy" {
type = bool
description = "Set to false to prevent the module from adding any lifecycle policies to any repositories"
default = true
}
variable "protected_tags" {
type = set(string)
description = "Name of image tags prefixes that should not be destroyed. Useful if you tag images with names like `dev`, `staging`, and `prod`"
default = []
}