terraform: reorder list scan to reduce cost

This commit is contained in:
Armon Dadgar 2014-09-17 10:28:57 -07:00
parent f9ce7de468
commit bf072c5862
1 changed files with 7 additions and 8 deletions

View File

@ -327,6 +327,7 @@ func graphAddDiff(g *depgraph.Graph, d *Diff) error {
if _, ok := d.Target.Meta.(*GraphNodeResource); ok { if _, ok := d.Target.Meta.(*GraphNodeResource); ok {
continue continue
} }
// TODO: Maybe GraphNodeResourceMeta should be omitted?
newN.Deps = append(newN.Deps, &depgraph.Dependency{ newN.Deps = append(newN.Deps, &depgraph.Dependency{
Name: d.Name, Name: d.Name,
@ -379,13 +380,13 @@ func graphAddDiff(g *depgraph.Graph, d *Diff) error {
// We have dependencies. We must be destroyed BEFORE those // We have dependencies. We must be destroyed BEFORE those
// dependencies. Look to see if they're managed. // dependencies. Look to see if they're managed.
for _, dep := range deps { for _, n2 := range nlist {
for _, n2 := range nlist { // Don't ever depend on ourselves
// Don't ever depend on ourselves if n2.Name == n.Name {
if n2.Name == n.Name { continue
continue }
}
for _, dep := range deps {
rn2 := n2.Meta.(*GraphNodeResource) rn2 := n2.Meta.(*GraphNodeResource)
if rn2.Resource.Id == dep { if rn2.Resource.Id == dep {
n2.Deps = append(n2.Deps, &depgraph.Dependency{ n2.Deps = append(n2.Deps, &depgraph.Dependency{
@ -393,8 +394,6 @@ func graphAddDiff(g *depgraph.Graph, d *Diff) error {
Source: n2, Source: n2,
Target: n, Target: n,
}) })
break
} }
} }
} }