-
Notifications
You must be signed in to change notification settings - Fork 15
/
Copy pathlocals.tf
38 lines (36 loc) · 1.22 KB
/
locals.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
locals {
queues = try({ for q in var.servicebus_queues : q.name => q }, {})
topics = try({ for t in var.servicebus_topics : t.name => t }, {})
topics_subs = flatten([
for topic in local.topics : [
for sub in try(topic.subscriptions, {}) : {
topic_name = topic.name
sub_name = sub.name
sub_conf = sub
}
]
])
subscriptions = { for sub in local.topics_subs : "${sub.topic_name}.${sub.sub_name}" => sub }
queues_auth = flatten([
for q_name, q in local.queues : [
for rule in ["listen", "send", "manage"] : {
queue = q_name
rule = rule
custom_name = q.custom_name
authorizations_custom_name = q.authorizations_custom_name
authorizations = q.authorizations
}
]
])
topics_auth = flatten([
for t_name, t in local.topics : [
for rule in ["listen", "send", "manage"] : {
topic = t_name
rule = rule
custom_name = t.custom_name
authorizations_custom_name = t.authorizations_custom_name
authorizations = t.authorizations
}
]
])
}