Documentation
¶
Index ¶
- type GRPCProvider
- func (p *GRPCProvider) Close() error
- func (p *GRPCProvider) ConfigureProvider(r providers.ConfigureProviderRequest) (resp providers.ConfigureProviderResponse)
- func (p *GRPCProvider) GetProviderSchema() (resp providers.GetProviderSchemaResponse)
- func (p *GRPCProvider) ReadDataSource(r providers.ReadDataSourceRequest) (resp providers.ReadDataSourceResponse)
- func (p *GRPCProvider) Stop() error
- func (p *GRPCProvider) ValidateDataResourceConfig(r providers.ValidateDataResourceConfigRequest) (resp providers.ValidateDataResourceConfigResponse)
- func (p *GRPCProvider) ValidateProviderConfig(r providers.ValidateProviderConfigRequest) (resp providers.ValidateProviderConfigResponse)
- type GRPCProviderPlugin
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GRPCProvider ¶
type GRPCProvider struct {
// PluginClient provides a reference to the plugin.Client which controls the plugin process.
// This allows the GRPCProvider a way to shutdown the plugin process.
PluginClient *plugin.Client
// TestServer contains a grpc.Server to close when the GRPCProvider is being
// used in an end to end test of a provider.
TestServer *grpc.Server
// Addr uniquely identifies the type of provider.
// Normally executed providers will have this set during initialization,
// but it may not always be available for alternative execute modes.
Addr addrs.Provider
// contains filtered or unexported fields
}
GRPCProvider handles the client, or core side of the plugin rpc connection. The GRPCProvider methods are mostly a translation layer between the terraform providers types and the grpc proto types, directly converting between the two.
func (*GRPCProvider) Close ¶
func (p *GRPCProvider) Close() error
closing the grpc connection is final, and terraform will call it at the end of every phase.
func (*GRPCProvider) ConfigureProvider ¶
func (p *GRPCProvider) ConfigureProvider(r providers.ConfigureProviderRequest) (resp providers.ConfigureProviderResponse)
func (*GRPCProvider) GetProviderSchema ¶
func (p *GRPCProvider) GetProviderSchema() (resp providers.GetProviderSchemaResponse)
func (*GRPCProvider) ReadDataSource ¶
func (p *GRPCProvider) ReadDataSource(r providers.ReadDataSourceRequest) (resp providers.ReadDataSourceResponse)
func (*GRPCProvider) Stop ¶
func (p *GRPCProvider) Stop() error
func (*GRPCProvider) ValidateDataResourceConfig ¶
func (p *GRPCProvider) ValidateDataResourceConfig(r providers.ValidateDataResourceConfigRequest) (resp providers.ValidateDataResourceConfigResponse)
func (*GRPCProvider) ValidateProviderConfig ¶
func (p *GRPCProvider) ValidateProviderConfig(r providers.ValidateProviderConfigRequest) (resp providers.ValidateProviderConfigResponse)
type GRPCProviderPlugin ¶
type GRPCProviderPlugin struct {
plugin.Plugin
GRPCProvider func() proto6.ProviderServer
}
GRPCProviderPlugin implements plugin.GRPCPlugin for the go-plugin package.
func (*GRPCProviderPlugin) GRPCClient ¶
func (p *GRPCProviderPlugin) GRPCClient(ctx context.Context, broker *plugin.GRPCBroker, c *grpc.ClientConn) (interface{}, error)
func (*GRPCProviderPlugin) GRPCServer ¶
func (p *GRPCProviderPlugin) GRPCServer(broker *plugin.GRPCBroker, s *grpc.Server) error
Click to show internal directories.
Click to hide internal directories.