6 "github.com/hashicorp/terraform/config"
9 // NodeProvisioner represents a provider that has no associated operations.
10 // It registers all the common interfaces across operations for providers.
11 type NodeProvisioner struct {
15 // The fields below will be automatically set using the Attach
16 // interfaces if you're running those transforms, but also be explicitly
17 // set if you already have that information.
19 Config *config.ProviderConfig
22 func (n *NodeProvisioner) Name() string {
23 result := fmt.Sprintf("provisioner.%s", n.NameValue)
24 if len(n.PathValue) > 1 {
25 result = fmt.Sprintf("%s.%s", modulePrefixStr(n.PathValue), result)
32 func (n *NodeProvisioner) Path() []string {
36 // GraphNodeProvisioner
37 func (n *NodeProvisioner) ProvisionerName() string {
41 // GraphNodeEvalable impl.
42 func (n *NodeProvisioner) EvalTree() EvalNode {
43 return &EvalInitProvisioner{Name: n.NameValue}