Documentation ¶
Overview ¶
Package tf5muxserver combines multiple provider servers that implement protocol version 5, into a single server.
Supported protocol version 5 provider servers include any which implement the tfprotov5.ProviderServer (https://pkg.go.dev/github.com/hashicorp/terraform-plugin-go/tfprotov5#ProviderServer) interface, such as:
- https://pkg.go.dev/github.com/hashicorp/terraform-plugin-go/tfprotov5/tf5server
- https://pkg.go.dev/github.com/hashicorp/terraform-plugin-mux/tf6to5server
- https://pkg.go.dev/github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema
Refer to the NewMuxServer() function for creating a combined server.
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewMuxServer ¶
func NewMuxServer(_ context.Context, servers ...func() tfprotov5.ProviderServer) (*muxServer, error)
NewMuxServer returns a muxed server that will route gRPC requests between tfprotov5.ProviderServers specified. The GetProviderSchema method of each is called to verify that the overall muxed server is compatible by ensuring:
- All provider schemas exactly match
- All provider meta schemas exactly match
- Only one provider implements each managed resource
- Only one provider implements each data source
- Only one provider implements each function
Types ¶
This section is empty.
Source Files ¶
- diagnostics.go
- doc.go
- mux_server.go
- mux_server_ApplyResourceChange.go
- mux_server_CallFunction.go
- mux_server_ConfigureProvider.go
- mux_server_GetFunctions.go
- mux_server_GetMetadata.go
- mux_server_GetProviderSchema.go
- mux_server_ImportResourceState.go
- mux_server_MoveResourceState.go
- mux_server_PlanResourceChange.go
- mux_server_PrepareProviderConfig.go
- mux_server_ReadDataSource.go
- mux_server_ReadResource.go
- mux_server_StopProvider.go
- mux_server_UpgradeResourceState.go
- mux_server_ValidateDataSourceConfig.go
- mux_server_ValidateResourceTypeConfig.go
- schema_equality.go
- server_capabilities.go
Click to show internal directories.
Click to hide internal directories.