"net/rpc"
"github.com/hashicorp/go-plugin"
+ "github.com/hashicorp/terraform/configs/configschema"
"github.com/hashicorp/terraform/terraform"
)
// ResourceProvisionerPlugin is the plugin.Plugin implementation.
type ResourceProvisionerPlugin struct {
- F func() terraform.ResourceProvisioner
+ ResourceProvisioner func() terraform.ResourceProvisioner
}
func (p *ResourceProvisionerPlugin) Server(b *plugin.MuxBroker) (interface{}, error) {
- return &ResourceProvisionerServer{Broker: b, Provisioner: p.F()}, nil
+ return &ResourceProvisionerServer{
+ Broker: b,
+ Provisioner: p.ResourceProvisioner(),
+ }, nil
}
func (p *ResourceProvisionerPlugin) Client(
Client *rpc.Client
}
+func (p *ResourceProvisioner) GetConfigSchema() (*configschema.Block, error) {
+ panic("not implemented")
+ return nil, nil
+}
+
func (p *ResourceProvisioner) Validate(c *terraform.ResourceConfig) ([]string, []error) {
var resp ResourceProvisionerValidateResponse
args := ResourceProvisionerValidateArgs{