]> git.immae.eu Git - github/fretlink/terraform-provider-statuscake.git/blame - vendor/github.com/hashicorp/terraform/terraform/transform_removed_modules.go
Merge pull request #27 from terraform-providers/go-modules-2019-02-22
[github/fretlink/terraform-provider-statuscake.git] / vendor / github.com / hashicorp / terraform / terraform / transform_removed_modules.go
CommitLineData
15c0b25d
AP
1package terraform
2
3import (
4 "log"
5
6 "github.com/hashicorp/terraform/config/module"
7)
8
9// RemoveModuleTransformer implements GraphTransformer to add nodes indicating
10// when a module was removed from the configuration.
11type RemovedModuleTransformer struct {
12 Module *module.Tree // root module
13 State *State
14}
15
16func (t *RemovedModuleTransformer) Transform(g *Graph) error {
17 // nothing to remove if there's no state!
18 if t.State == nil {
19 return nil
20 }
21
22 for _, m := range t.State.Modules {
23 c := t.Module.Child(m.Path[1:])
24 if c != nil {
25 continue
26 }
27
28 log.Printf("[DEBUG] module %s no longer in config\n", modulePrefixStr(m.Path))
29 g.Add(&NodeModuleRemoved{PathValue: m.Path})
30 }
31 return nil
32}