-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoutputs.tf
74 lines (62 loc) · 2.25 KB
/
outputs.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
#######################
# SSM Parameter values
#######################
locals {
# Making values nonsensitive, but keeping them in separate locals
stored_value = one(compact([
try(nonsensitive(aws_ssm_parameter.this[0].value), null),
try(nonsensitive(aws_ssm_parameter.ignore_value[0].value), null),
]))
stored_insecure_value = one(compact([
try(aws_ssm_parameter.this[0].insecure_value, null),
try(aws_ssm_parameter.ignore_value[0].insecure_value, null),
]))
raw_value = one(compact([local.stored_value, local.stored_insecure_value]))
}
output "raw_value" {
description = "Raw value of the parameter (as it is stored in SSM). Use 'value' output to get jsondecode'd value"
value = local.raw_value
sensitive = true
}
output "value" {
description = "Parameter value after jsondecode(). Probably this is what you are looking for"
value = try(jsondecode(local.raw_value), local.raw_value)
sensitive = false
}
output "insecure_value" {
description = "Insecure value of the parameter"
value = local.stored_insecure_value
sensitive = false
}
output "secure_value" {
description = "Secure value of the parameter"
value = local.stored_value
sensitive = true
}
output "secure_type" {
description = "Whether SSM parameter is a SecureString or not?"
value = local.secure_type
}
################
# SSM Parameter
################
output "ssm_parameter_arn" {
description = "The ARN of the parameter"
value = try(aws_ssm_parameter.this[0].arn, aws_ssm_parameter.ignore_value[0].arn, null)
}
output "ssm_parameter_version" {
description = "Version of the parameter"
value = try(aws_ssm_parameter.this[0].version, aws_ssm_parameter.ignore_value[0].version, null)
}
output "ssm_parameter_name" {
description = "Name of the parameter"
value = try(aws_ssm_parameter.this[0].name, aws_ssm_parameter.ignore_value[0].name, null)
}
output "ssm_parameter_type" {
description = "Type of the parameter"
value = try(aws_ssm_parameter.this[0].type, aws_ssm_parameter.ignore_value[0].type, null)
}
output "ssm_parameter_tags_all" {
description = "All tags used for the parameter"
value = try(aws_ssm_parameter.this[0].tags_all, aws_ssm_parameter.ignore_value[0].tags_all, null)
}