mirror of
https://github.com/opentffoundation/opentf.git
synced 2025-12-25 10:00:44 -05:00
rpcproviders: Trace logging
We might remove this or change it to more structured logging later, but for now this is just to help understand what's being called as I continue to fill out all of these client proxy stubs. Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
This commit is contained in:
@@ -7,16 +7,19 @@ package rpcproviders
|
||||
|
||||
import (
|
||||
"context"
|
||||
"log"
|
||||
|
||||
"github.com/opentofu/opentofu/internal/providers"
|
||||
)
|
||||
|
||||
// ReadDataSource implements providers.Interface.
|
||||
func (r rpcProvider) ReadDataSource(ctx context.Context, req providers.ReadDataSourceRequest) providers.ReadDataSourceResponse {
|
||||
log.Printf("[TRACE] rpcProvider.ReadDataSource")
|
||||
panic("unimplemented")
|
||||
}
|
||||
|
||||
// ValidateDataResourceConfig implements providers.Interface.
|
||||
func (r rpcProvider) ValidateDataResourceConfig(ctx context.Context, req providers.ValidateDataResourceConfigRequest) providers.ValidateDataResourceConfigResponse {
|
||||
log.Printf("[TRACE] rpcProvider.ValidateDataResourceConfig")
|
||||
panic("unimplemented")
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ import (
|
||||
"context"
|
||||
"errors"
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
"github.com/apparentlymart/opentofu-providers/tofuprovider/providerops"
|
||||
"github.com/apparentlymart/opentofu-providers/tofuprovider/providerschema"
|
||||
@@ -19,6 +20,7 @@ import (
|
||||
|
||||
// CallFunction implements providers.Interface.
|
||||
func (r rpcProvider) CallFunction(ctx context.Context, req providers.CallFunctionRequest) providers.CallFunctionResponse {
|
||||
log.Printf("[TRACE] rpcProvider.CallFunction")
|
||||
var resp providers.CallFunctionResponse
|
||||
|
||||
spec, diags := r.schema.GetFunction(ctx, req.Name)
|
||||
|
||||
@@ -7,41 +7,49 @@ package rpcproviders
|
||||
|
||||
import (
|
||||
"context"
|
||||
"log"
|
||||
|
||||
"github.com/opentofu/opentofu/internal/providers"
|
||||
)
|
||||
|
||||
// ApplyResourceChange implements providers.Interface.
|
||||
func (r rpcProvider) ApplyResourceChange(ctx context.Context, req providers.ApplyResourceChangeRequest) providers.ApplyResourceChangeResponse {
|
||||
log.Printf("[TRACE] rpcProvider.ApplyResourceChange")
|
||||
panic("unimplemented")
|
||||
}
|
||||
|
||||
// ImportResourceState implements providers.Interface.
|
||||
func (r rpcProvider) ImportResourceState(ctx context.Context, req providers.ImportResourceStateRequest) providers.ImportResourceStateResponse {
|
||||
log.Printf("[TRACE] rpcProvider.ImportResourceState")
|
||||
panic("unimplemented")
|
||||
}
|
||||
|
||||
// MoveResourceState implements providers.Interface.
|
||||
func (r rpcProvider) MoveResourceState(ctx context.Context, req providers.MoveResourceStateRequest) providers.MoveResourceStateResponse {
|
||||
log.Printf("[TRACE] rpcProvider.MoveResourceState")
|
||||
panic("unimplemented")
|
||||
}
|
||||
|
||||
// PlanResourceChange implements providers.Interface.
|
||||
func (r rpcProvider) PlanResourceChange(ctx context.Context, req providers.PlanResourceChangeRequest) providers.PlanResourceChangeResponse {
|
||||
log.Printf("[TRACE] rpcProvider.PlanResourceChange")
|
||||
panic("unimplemented")
|
||||
}
|
||||
|
||||
// ReadResource implements providers.Interface.
|
||||
func (r rpcProvider) ReadResource(ctx context.Context, req providers.ReadResourceRequest) providers.ReadResourceResponse {
|
||||
log.Printf("[TRACE] rpcProvider.ReadResource")
|
||||
panic("unimplemented")
|
||||
}
|
||||
|
||||
// UpgradeResourceState implements providers.Interface.
|
||||
func (r rpcProvider) UpgradeResourceState(ctx context.Context, req providers.UpgradeResourceStateRequest) providers.UpgradeResourceStateResponse {
|
||||
log.Printf("[TRACE] rpcProvider.UpgradeResourceState")
|
||||
panic("unimplemented")
|
||||
}
|
||||
|
||||
// ValidateResourceConfig implements providers.Interface.
|
||||
func (r rpcProvider) ValidateResourceConfig(crx context.Context, req providers.ValidateResourceConfigRequest) providers.ValidateResourceConfigResponse {
|
||||
log.Printf("[TRACE] rpcProvider.ValidateResourceConfig")
|
||||
panic("unimplemented")
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ package rpcproviders
|
||||
import (
|
||||
"context"
|
||||
"io"
|
||||
"log"
|
||||
|
||||
"github.com/apparentlymart/opentofu-providers/tofuprovider"
|
||||
"github.com/apparentlymart/opentofu-providers/tofuprovider/providerops"
|
||||
@@ -65,6 +66,7 @@ func NewProvider(client tofuprovider.Provider) providers.Interface {
|
||||
|
||||
// ConfigureProvider implements providers.Interface.
|
||||
func (r rpcProvider) ConfigureProvider(ctx context.Context, req providers.ConfigureProviderRequest) providers.ConfigureProviderResponse {
|
||||
log.Printf("[TRACE] rpcProvider.ConfigureProvider")
|
||||
var resp providers.ConfigureProviderResponse
|
||||
|
||||
schema, diags := r.schema.GetProviderConfig(ctx)
|
||||
@@ -98,6 +100,7 @@ func (r rpcProvider) ConfigureProvider(ctx context.Context, req providers.Config
|
||||
|
||||
// ValidateProviderConfig implements providers.Interface.
|
||||
func (r rpcProvider) ValidateProviderConfig(ctx context.Context, req providers.ValidateProviderConfigRequest) providers.ValidateProviderConfigResponse {
|
||||
log.Printf("[TRACE] rpcProvider.ValidateProviderConfig")
|
||||
var resp providers.ValidateProviderConfigResponse
|
||||
|
||||
schema, diags := r.schema.GetProviderConfig(ctx)
|
||||
|
||||
@@ -26,6 +26,8 @@ import (
|
||||
|
||||
// GetProviderSchema implements providers.Interface.
|
||||
func (r rpcProvider) GetProviderSchema(ctx context.Context) providers.GetProviderSchemaResponse {
|
||||
log.Printf("[TRACE] rpcProvider.GetProviderSchema")
|
||||
|
||||
// Whenever someone calls this directly we'll ignore our existing cache
|
||||
// and re-fetch everything, but we'll use the result to update the
|
||||
// cache so other future calls can benefit.
|
||||
@@ -41,6 +43,8 @@ func (r rpcProvider) GetProviderSchema(ctx context.Context) providers.GetProvide
|
||||
|
||||
// GetFunctions implements providers.Interface.
|
||||
func (r rpcProvider) GetFunctions(ctx context.Context) providers.GetFunctionsResponse {
|
||||
log.Printf("[TRACE] rpcProvider.GetFunctions")
|
||||
|
||||
// Whenever someone calls this directly we'll ignore our existing cache
|
||||
// and re-fetch everything, but we'll use the result to update the
|
||||
// cache so other future calls can benefit.
|
||||
@@ -226,6 +230,7 @@ func (c *schemaCache) ensureFunctions(ctx context.Context) tfdiags.Diagnostics {
|
||||
// not offer more granular schema request methods. We hope to use this less
|
||||
// over time.
|
||||
func (c *schemaCache) fetchEverything(ctx context.Context) tfdiags.Diagnostics {
|
||||
log.Printf("[TRACE] rpcProvider: schemaCache.fetchEverything")
|
||||
var diags tfdiags.Diagnostics
|
||||
resp, err := c.client.GetProviderSchema(ctx, &providerops.GetProviderSchemaRequest{})
|
||||
diags = appendDiags(diags, resp, err)
|
||||
@@ -262,6 +267,7 @@ func (c *schemaCache) fetchEverything(ctx context.Context) tfdiags.Diagnostics {
|
||||
// Callers should call this only after checking whether the information they
|
||||
// need is already cached, to avoid making redundant requests.
|
||||
func (c *schemaCache) fetchFunctions(ctx context.Context) tfdiags.Diagnostics {
|
||||
log.Printf("[TRACE] rpcProvider: schemaCache.fetchFunctions")
|
||||
// FIXME: OpenTofu chose to slightly tweak the provider protocol (as
|
||||
// compared to Terraform's reference implementation) by asking the
|
||||
// provider for its functions only after it's already configured so
|
||||
|
||||
Reference in New Issue
Block a user