Help us shape the future of Go! Take the 2026 Go Developer Survey

fromproto5

package
v1.19.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 10, 2026 License: MPL-2.0 Imports: 25 Imported by: 0

Documentation

Overview

Package fromproto5 contains functions to convert from protocol version 5 (tfprotov5) types to framework types.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApplyResourceChangeRequest

func ApplyResourceChangeRequest(ctx context.Context, proto5 *tfprotov5.ApplyResourceChangeRequest, resource resource.Resource, resourceSchema fwschema.Schema, providerMetaSchema fwschema.Schema, resourceBehavior resource.ResourceBehavior, identitySchema fwschema.Schema) (*fwserver.ApplyResourceChangeRequest, diag.Diagnostics)

ApplyResourceChangeRequest returns the *fwserver.ApplyResourceChangeRequest equivalent of a *tfprotov5.ApplyResourceChangeRequest.

func ArgumentsData added in v1.5.0

func ArgumentsData(ctx context.Context, arguments []*tfprotov5.DynamicValue, definition function.Definition) (function.ArgumentsData, *function.FuncError)

ArgumentsData returns the ArgumentsData for a given []*tfprotov5.DynamicValue and function.Definition.

func CallFunctionRequest added in v1.5.0

func CallFunctionRequest(ctx context.Context, proto *tfprotov5.CallFunctionRequest, function function.Function, functionDefinition function.Definition) (*fwserver.CallFunctionRequest, *function.FuncError)

CallFunctionRequest returns the *fwserver.CallFunctionRequest equivalent of a *tfprotov5.CallFunctionRequest.

func CloseEphemeralResourceRequest added in v1.13.0

func CloseEphemeralResourceRequest(ctx context.Context, proto5 *tfprotov5.CloseEphemeralResourceRequest, ephemeralResource ephemeral.EphemeralResource, ephemeralResourceSchema fwschema.Schema) (*fwserver.CloseEphemeralResourceRequest, diag.Diagnostics)

CloseEphemeralResourceRequest returns the *fwserver.CloseEphemeralResourceRequest equivalent of a *tfprotov5.CloseEphemeralResourceRequest.

func Config

func Config(ctx context.Context, proto5DynamicValue *tfprotov5.DynamicValue, schema fwschema.Schema) (*tfsdk.Config, diag.Diagnostics)

Config returns the *tfsdk.Config for a *tfprotov5.DynamicValue and fwschema.Schema.

func ConfigureProviderRequest

func ConfigureProviderRequest(ctx context.Context, proto5 *tfprotov5.ConfigureProviderRequest, providerSchema fwschema.Schema) (*provider.ConfigureRequest, diag.Diagnostics)

ConfigureProviderRequest returns the *fwserver.ConfigureProviderRequest equivalent of a *tfprotov5.ConfigureProviderRequest.

func DynamicValue added in v1.1.0

DynamicValue returns the fwschemadata.Data for a given *tfprotov5.DynamicValue.

If necessary, the underlying data is modified to convert list and set block values from an empty collection to a null collection. This is to prevent developers from needing to understand Terraform's differences between block and attribute values where blocks are technically never null, but from a developer perspective this distinction introduces unnecessary complexity.

func EphemeralResultData added in v1.13.0

func EphemeralResultData(ctx context.Context, proto5DynamicValue *tfprotov5.DynamicValue, schema fwschema.Schema) (*tfsdk.EphemeralResultData, diag.Diagnostics)

EphemeralResultData returns the *tfsdk.EphemeralResultData for a *tfprotov5.DynamicValue and fwschema.Schema.

func GenerateResourceConfigRequest added in v1.19.0

func GenerateResourceConfigRequest(ctx context.Context, proto5 *tfprotov5.GenerateResourceConfigRequest, resourceSchema fwschema.Schema) (*fwserver.GenerateResourceConfigRequest, diag.Diagnostics)

GenerateResourceConfigRequest returns the *fwserver.GenerateResourceConfigRequest equivalent of a *tfprotov5.GenerateResourceConfigRequest.

func GetFunctionsRequest added in v1.5.0

func GetFunctionsRequest(ctx context.Context, proto *tfprotov5.GetFunctionsRequest) *fwserver.GetFunctionsRequest

GetFunctionsRequest returns the *fwserver.GetFunctionsRequest equivalent of a *tfprotov5.GetFunctionsRequest.

func GetMetadataRequest added in v1.4.0

func GetMetadataRequest(ctx context.Context, proto5 *tfprotov5.GetMetadataRequest) *fwserver.GetMetadataRequest

GetMetadataRequest returns the *fwserver.GetMetadataRequest equivalent of a *tfprotov5.GetMetadataRequest.

func GetProviderSchemaRequest

GetProviderSchemaRequest returns the *fwserver.GetProviderSchemaRequest equivalent of a *tfprotov5.GetProviderSchemaRequest.

func GetResourceIdentitySchemasRequest added in v1.15.0

GetResourceIdentitySchemasRequest returns the *fwserver.GetResourceIdentitySchemasRequest equivalent of a *tfprotov5.GetResourceIdentitySchemasRequest.

func IdentityData added in v1.15.0

func IdentityData(ctx context.Context, proto5DynamicValue *tfprotov5.DynamicValue, schema fwschema.Schema) (*tfsdk.ResourceIdentity, diag.Diagnostics)

IdentityData returns the *tfsdk.ResourceIdentity for a *tfprotov5.DynamicValue and fwschema.Schema.

func IdentitySchema added in v1.16.0

IdentitySchema converts a *tfprotov5.ResourceIdentitySchema into a resource/identityschema Schema, used for converting protocol identity schemas (from another provider server, such as SDKv2 or terraform-plugin-go) into Framework identity schemas.

func IdentitySchemaAttributes added in v1.16.0

func IdentitySchemaAttributes(ctx context.Context, protoAttrs []*tfprotov5.ResourceIdentitySchemaAttribute) (map[string]identityschema.Attribute, error)

func ImportResourceStateRequest

func ImportResourceStateRequest(ctx context.Context, proto5 *tfprotov5.ImportResourceStateRequest, reqResource resource.Resource, resourceSchema fwschema.Schema, identitySchema fwschema.Schema) (*fwserver.ImportResourceStateRequest, diag.Diagnostics)

ImportResourceStateRequest returns the *fwserver.ImportResourceStateRequest equivalent of a *tfprotov5.ImportResourceStateRequest.

func InvokeActionRequest added in v1.16.0

func InvokeActionRequest(ctx context.Context, proto5 *tfprotov5.InvokeActionRequest, reqAction action.Action, actionSchema fwschema.Schema) (*fwserver.InvokeActionRequest, diag.Diagnostics)

InvokeActionRequest returns the *fwserver.InvokeActionRequest equivalent of a *tfprotov5.InvokeActionRequest.

func ModifyPlanActionClientCapabilities added in v1.16.0

func ModifyPlanActionClientCapabilities(in *tfprotov5.PlanActionClientCapabilities) action.ModifyPlanClientCapabilities

func MoveResourceStateRequest added in v1.6.0

func MoveResourceStateRequest(ctx context.Context, proto5 *tfprotov5.MoveResourceStateRequest, resource resource.Resource, resourceSchema fwschema.Schema, identitySchema fwschema.Schema) (*fwserver.MoveResourceStateRequest, diag.Diagnostics)

MoveResourceStateRequest returns the *fwserver.MoveResourceStateRequest equivalent of a *tfprotov5.MoveResourceStateRequest.

func OpenEphemeralResourceRequest added in v1.13.0

func OpenEphemeralResourceRequest(ctx context.Context, proto5 *tfprotov5.OpenEphemeralResourceRequest, ephemeralResource ephemeral.EphemeralResource, ephemeralResourceSchema fwschema.Schema) (*fwserver.OpenEphemeralResourceRequest, diag.Diagnostics)

OpenEphemeralResourceRequest returns the *fwserver.OpenEphemeralResourceRequest equivalent of a *tfprotov5.OpenEphemeralResourceRequest.

func Plan

func Plan(ctx context.Context, proto5DynamicValue *tfprotov5.DynamicValue, schema fwschema.Schema) (*tfsdk.Plan, diag.Diagnostics)

Plan returns the *tfsdk.Plan for a *tfprotov5.DynamicValue and fwschema.Schema.

func PlanActionRequest added in v1.16.0

func PlanActionRequest(ctx context.Context, proto5 *tfprotov5.PlanActionRequest, reqAction action.Action, actionSchema fwschema.Schema) (*fwserver.PlanActionRequest, diag.Diagnostics)

PlanActionRequest returns the *fwserver.PlanActionRequest equivalent of a *tfprotov5.PlanActionRequest.

func PlanResourceChangeRequest

func PlanResourceChangeRequest(ctx context.Context, proto5 *tfprotov5.PlanResourceChangeRequest, reqResource resource.Resource, resourceSchema fwschema.Schema, providerMetaSchema fwschema.Schema, resourceBehavior resource.ResourceBehavior, identitySchema fwschema.Schema) (*fwserver.PlanResourceChangeRequest, diag.Diagnostics)

PlanResourceChangeRequest returns the *fwserver.PlanResourceChangeRequest equivalent of a *tfprotov5.PlanResourceChangeRequest.

func PrepareProviderConfigRequest

func PrepareProviderConfigRequest(ctx context.Context, proto5 *tfprotov5.PrepareProviderConfigRequest, providerSchema fwschema.Schema) (*fwserver.ValidateProviderConfigRequest, diag.Diagnostics)

PrepareProviderConfigRequest returns the *fwserver.ValidateProviderConfigRequest equivalent of a *tfprotov5.PrepareProviderConfigRequest.

func ProviderMeta

func ProviderMeta(ctx context.Context, proto5DynamicValue *tfprotov5.DynamicValue, schema fwschema.Schema) (*tfsdk.Config, diag.Diagnostics)

ProviderMeta returns the *tfsdk.Config for a *tfprotov5.DynamicValue and fwschema.Schema. This data handling is different than Config to simplify implementors, in that:

  • Missing Schema will return nil, rather than an error
  • Missing DynamicValue will return nil typed Value, rather than an error

func ReadDataSourceRequest

func ReadDataSourceRequest(ctx context.Context, proto5 *tfprotov5.ReadDataSourceRequest, dataSource datasource.DataSource, dataSourceSchema fwschema.Schema, providerMetaSchema fwschema.Schema) (*fwserver.ReadDataSourceRequest, diag.Diagnostics)

ReadDataSourceRequest returns the *fwserver.ReadDataSourceRequest equivalent of a *tfprotov5.ReadDataSourceRequest.

func ReadResourceClientCapabilities added in v1.9.0

func ReadResourceClientCapabilities(in *tfprotov5.ReadResourceClientCapabilities) resource.ReadClientCapabilities

func ReadResourceRequest

func ReadResourceRequest(ctx context.Context, proto5 *tfprotov5.ReadResourceRequest, reqResource resource.Resource, resourceSchema fwschema.Schema, providerMetaSchema fwschema.Schema, resourceBehavior resource.ResourceBehavior, identitySchema fwschema.Schema) (*fwserver.ReadResourceRequest, diag.Diagnostics)

ReadResourceRequest returns the *fwserver.ReadResourceRequest equivalent of a *tfprotov5.ReadResourceRequest.

func RenewEphemeralResourceRequest added in v1.13.0

func RenewEphemeralResourceRequest(ctx context.Context, proto5 *tfprotov5.RenewEphemeralResourceRequest, ephemeralResource ephemeral.EphemeralResource, ephemeralResourceSchema fwschema.Schema) (*fwserver.RenewEphemeralResourceRequest, diag.Diagnostics)

RenewEphemeralResourceRequest returns the *fwserver.RenewEphemeralResourceRequest equivalent of a *tfprotov5.RenewEphemeralResourceRequest.

func ResourceIdentity added in v1.15.0

ResourceIdentity returns the *tfsdk.ResourceIdentity for a *tfprotov5.ResourceIdentityData and fwschema.Schema.

func ResourceSchema added in v1.16.0

func ResourceSchema(ctx context.Context, s *tfprotov5.Schema) (*resourceschema.Schema, error)

ResourceSchema converts a *tfprotov5.Schema into a resource/schema Schema, used for converting protocol schemas (from another provider server, such as SDKv2 or terraform-plugin-go) into Framework schemas.

func ResourceSchemaAttributes added in v1.16.0

func ResourceSchemaAttributes(ctx context.Context, protoAttrs []*tfprotov5.SchemaAttribute) (map[string]resourceschema.Attribute, error)

func ResourceSchemaNestedBlocks added in v1.16.0

func ResourceSchemaNestedBlocks(ctx context.Context, protoBlocks []*tfprotov5.SchemaNestedBlock) (map[string]resourceschema.Block, error)

func State

func State(ctx context.Context, proto5DynamicValue *tfprotov5.DynamicValue, schema fwschema.Schema) (*tfsdk.State, diag.Diagnostics)

State returns the *tfsdk.State for a *tfprotov5.DynamicValue and fwschema.Schema.

func UpgradeResourceIdentityRequest added in v1.15.0

func UpgradeResourceIdentityRequest(ctx context.Context, proto5 *tfprotov5.UpgradeResourceIdentityRequest, resource resource.Resource, identitySchema fwschema.Schema) (*fwserver.UpgradeResourceIdentityRequest, diag.Diagnostics)

UpgradeResourceIdentityRequest returns the *fwserver.UpgradeResourceIdentityRequest equivalent of a *tfprotov5.UpgradeResourceIdentityRequest.

func UpgradeResourceStateRequest

func UpgradeResourceStateRequest(ctx context.Context, proto5 *tfprotov5.UpgradeResourceStateRequest, resource resource.Resource, resourceSchema fwschema.Schema) (*fwserver.UpgradeResourceStateRequest, diag.Diagnostics)

UpgradeResourceStateRequest returns the *fwserver.UpgradeResourceStateRequest equivalent of a *tfprotov5.UpgradeResourceStateRequest.

func ValidateActionConfigRequest added in v1.16.0

func ValidateActionConfigRequest(ctx context.Context, proto5 *tfprotov5.ValidateActionConfigRequest, reqAction action.Action, actionSchema fwschema.Schema) (*fwserver.ValidateActionConfigRequest, diag.Diagnostics)

ValidateActionConfigRequest returns the *fwserver.ValidateActionConfigRequest equivalent of a *tfprotov5.ValidateActionConfigRequest.

func ValidateDataSourceConfigRequest

func ValidateDataSourceConfigRequest(ctx context.Context, proto5 *tfprotov5.ValidateDataSourceConfigRequest, dataSource datasource.DataSource, dataSourceSchema fwschema.Schema) (*fwserver.ValidateDataSourceConfigRequest, diag.Diagnostics)

ValidateDataSourceConfigRequest returns the *fwserver.ValidateDataSourceConfigRequest equivalent of a *tfprotov5.ValidateDataSourceConfigRequest.

func ValidateEphemeralResourceConfigRequest added in v1.13.0

func ValidateEphemeralResourceConfigRequest(ctx context.Context, proto5 *tfprotov5.ValidateEphemeralResourceConfigRequest, ephemeralResource ephemeral.EphemeralResource, ephemeralResourceSchema fwschema.Schema) (*fwserver.ValidateEphemeralResourceConfigRequest, diag.Diagnostics)

ValidateEphemeralResourceConfigRequest returns the *fwserver.ValidateEphemeralResourceConfigRequest equivalent of a *tfprotov5.ValidateEphemeralResourceConfigRequest.

func ValidateListResourceConfigRequest added in v1.16.0

func ValidateListResourceConfigRequest(ctx context.Context, proto5 *tfprotov5.ValidateListResourceConfigRequest, listResource list.ListResource, listResourceSchema fwschema.Schema) (*fwserver.ValidateListResourceConfigRequest, diag.Diagnostics)

ValidateListResourceConfigRequest returns the *fwserver.ValidateListResourceConfigRequest equivalent of a *tfprotov5.ValidateListResourceConfigRequest.

func ValidateResourceTypeConfigRequest

func ValidateResourceTypeConfigRequest(ctx context.Context, proto5 *tfprotov5.ValidateResourceTypeConfigRequest, resource resource.Resource, resourceSchema fwschema.Schema) (*fwserver.ValidateResourceConfigRequest, diag.Diagnostics)

ValidateResourceTypeConfigRequest returns the *fwserver.ValidateResourceConfigRequest equivalent of a *tfprotov5.ValidateResourceTypeConfigRequest.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL