From 02a6657a715ddb29a9ff6a9ba3773ccdbd090b13 Mon Sep 17 00:00:00 2001 From: James Bardin Date: Tue, 29 May 2018 11:07:09 -0400 Subject: [PATCH] don't check for targeted downstream from providers Since outputs now rely on providers in order to ensure that a schema is available for evaluation, we need to exclude providers from checking TargetDownstream. --- terraform/transform_targets.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/terraform/transform_targets.go b/terraform/transform_targets.go index 497fa51f6..d25274e68 100644 --- a/terraform/transform_targets.go +++ b/terraform/transform_targets.go @@ -128,6 +128,12 @@ func (t *TargetsTransformer) addDependencies(targetedNodes *dag.Set, g *Graph) ( vertices := queue queue = nil // ready to append for next iteration if neccessary for _, v := range vertices { + // providers don't cause transitive dependencies, so don't target + // downstream from them. + if _, ok := v.(GraphNodeProvider); ok { + continue + } + dependers := g.UpEdges(v) if dependers == nil { // indicates that there are no up edges for this node, so