Skip to content

Commit 488ab91

Browse files
authored
Properly output descriptors of chained modules (cloudposse#133)
1 parent 503f50c commit 488ab91

File tree

3 files changed

+25
-4
lines changed

3 files changed

+25
-4
lines changed

descriptors.tf

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@
1818
# with only 2 use cases, we are going to keep it simple for now.
1919

2020
locals {
21-
descriptor_labels = { for k, v in var.descriptor_formats : k => [
21+
descriptor_labels = { for k, v in local.descriptor_formats : k => [
2222
for label in v.labels : local.id_context[label]
2323
] }
24-
descriptors = { for k, v in var.descriptor_formats : k => (
24+
descriptors = { for k, v in local.descriptor_formats : k => (
2525
format(v.format, local.descriptor_labels[k]...)
2626
)
2727
}

examples/complete/descriptors.tf

+14
Original file line numberDiff line numberDiff line change
@@ -40,3 +40,17 @@ output "descriptor_stack" {
4040
output "descriptor_account_name" {
4141
value = module.descriptors.descriptors["account_name"]
4242
}
43+
44+
module "chained_descriptors" {
45+
source = "../.."
46+
47+
context = module.descriptors.context
48+
}
49+
50+
output "chained_descriptor_stack" {
51+
value = module.chained_descriptors.descriptors["stack"]
52+
}
53+
54+
output "chained_descriptor_account_name" {
55+
value = module.chained_descriptors.descriptors["account_name"]
56+
}

test/src/examples_complete_test.go

+9-2
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,17 @@ func TestExamplesComplete(t *testing.T) {
4343
compatible := terraform.Output(t, terraformOptions, "compatible")
4444
assert.Equal(t, "true", compatible)
4545

46+
expectedDescriptorAccountName := "bild-hrh"
47+
expectedDescriptorStack := "hrh-uat-bild"
4648
descriptorAccountName := terraform.Output(t, terraformOptions, "descriptor_account_name")
4749
descriptorStack := terraform.Output(t, terraformOptions, "descriptor_stack")
48-
assert.Equal(t, "bild-hrh", descriptorAccountName)
49-
assert.Equal(t, "hrh-uat-bild", descriptorStack)
50+
assert.Equal(t, expectedDescriptorAccountName, descriptorAccountName)
51+
assert.Equal(t, expectedDescriptorStack, descriptorStack)
52+
53+
chainedDescriptorAccountName := terraform.Output(t, terraformOptions, "chained_descriptor_account_name")
54+
chainedDescriptorStack := terraform.Output(t, terraformOptions, "chained_descriptor_stack")
55+
assert.Equal(t, descriptorAccountName, chainedDescriptorAccountName, "Chained module should output same descriptors")
56+
assert.Equal(t, descriptorStack, chainedDescriptorStack, "Chained module should output same descriptors")
5057

5158
expectedLabel1Context := NLContext{
5259
Enabled: true,

0 commit comments

Comments
 (0)