Skip to content

Commit 2409be4

Browse files
committed
Fixes depends_on when overriding modules
Fixes #32795
1 parent 2a1d98b commit 2409be4

File tree

3 files changed

+24
-2
lines changed

3 files changed

+24
-2
lines changed

internal/configs/module_merge.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -190,12 +190,12 @@ func (mc *ModuleCall) merge(omc *ModuleCall) hcl.Diagnostics {
190190

191191
// We don't allow depends_on to be overridden because that is likely to
192192
// cause confusing misbehavior.
193-
if len(mc.DependsOn) != 0 {
193+
if len(omc.DependsOn) != 0 {
194194
diags = append(diags, &hcl.Diagnostic{
195195
Severity: hcl.DiagError,
196196
Summary: "Unsupported override",
197197
Detail: "The depends_on argument may not be overridden.",
198-
Subject: mc.DependsOn[0].SourceRange().Ptr(), // the first item is the closest range we have
198+
Subject: omc.DependsOn[0].SourceRange().Ptr(), // the first item is the closest range we have
199199
})
200200
}
201201

internal/configs/module_merge_test.go

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,26 @@ func TestModuleOverrideModule(t *testing.T) {
117117
Byte: 17,
118118
},
119119
},
120+
DependsOn: []hcl.Traversal{
121+
{
122+
hcl.TraverseRoot{
123+
Name: "null_resource",
124+
SrcRange: hcl.Range{
125+
Filename: "testdata/valid-modules/override-module/primary.tf",
126+
Start: hcl.Pos{Line: 11, Column: 17, Byte: 149},
127+
End: hcl.Pos{Line: 11, Column: 30, Byte: 162},
128+
},
129+
},
130+
hcl.TraverseAttr{
131+
Name: "test",
132+
SrcRange: hcl.Range{
133+
Filename: "testdata/valid-modules/override-module/primary.tf",
134+
Start: hcl.Pos{Line: 11, Column: 30, Byte: 162},
135+
End: hcl.Pos{Line: 11, Column: 35, Byte: 167},
136+
},
137+
},
138+
},
139+
},
120140
Providers: []PassedProviderConfig{
121141
{
122142
InChild: &ProviderConfigRef{

internal/configs/testdata/valid-modules/override-module/primary.tf

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,6 @@ module "example" {
88
providers = {
99
test = test.foo
1010
}
11+
depends_on = [null_resource.test]
1112
}
13+
resource "null_resource" "test" {}

0 commit comments

Comments
 (0)