diff options
Diffstat (limited to 'vendor/github.com/hashicorp/terraform/terraform/node_output_orphan.go')
-rw-r--r-- | vendor/github.com/hashicorp/terraform/terraform/node_output_orphan.go | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/vendor/github.com/hashicorp/terraform/terraform/node_output_orphan.go b/vendor/github.com/hashicorp/terraform/terraform/node_output_orphan.go new file mode 100644 index 0000000..636a15d --- /dev/null +++ b/vendor/github.com/hashicorp/terraform/terraform/node_output_orphan.go | |||
@@ -0,0 +1,35 @@ | |||
1 | package terraform | ||
2 | |||
3 | import ( | ||
4 | "fmt" | ||
5 | ) | ||
6 | |||
7 | // NodeOutputOrphan represents an output that is an orphan. | ||
8 | type NodeOutputOrphan struct { | ||
9 | OutputName string | ||
10 | PathValue []string | ||
11 | } | ||
12 | |||
13 | func (n *NodeOutputOrphan) Name() string { | ||
14 | result := fmt.Sprintf("output.%s (orphan)", n.OutputName) | ||
15 | if len(n.PathValue) > 1 { | ||
16 | result = fmt.Sprintf("%s.%s", modulePrefixStr(n.PathValue), result) | ||
17 | } | ||
18 | |||
19 | return result | ||
20 | } | ||
21 | |||
22 | // GraphNodeSubPath | ||
23 | func (n *NodeOutputOrphan) Path() []string { | ||
24 | return n.PathValue | ||
25 | } | ||
26 | |||
27 | // GraphNodeEvalable | ||
28 | func (n *NodeOutputOrphan) EvalTree() EvalNode { | ||
29 | return &EvalOpFilter{ | ||
30 | Ops: []walkOperation{walkRefresh, walkApply, walkDestroy}, | ||
31 | Node: &EvalDeleteOutput{ | ||
32 | Name: n.OutputName, | ||
33 | }, | ||
34 | } | ||
35 | } | ||