Movatterモバイル変換


[0]ホーム

URL:


fwserver

package
v1.17.0Latest Latest
Warning

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

Go to latest
Published: Dec 2, 2025 License:MPL-2.0Imports:31Imported by:0

Details

Repository

github.com/hashicorp/terraform-plugin-framework

Links

Documentation

Overview

Package fwserver contains the framework provider server implementation.This package should only ever contain framework-native types, while specificprotocol version compatible implementations, such as proto6server, areimplemented on top of this abstraction.

Index

Constants

This section is empty.

Variables

View Source
var NoListResults = func(func(ListResult)bool) {}

Functions

funcAttributeModifyPlanadded inv0.9.0

AttributeModifyPlan runs all AttributePlanModifiers

TODO: Clean up this abstraction back into an internal Attribute type method.The extra Attribute parameter is a carry-over of creating the proto6serverpackage from the tfsdk package and not wanting to export the method.Reference:https://github.com/hashicorp/terraform-plugin-framework/issues/365

funcAttributePlanModifyBooladded inv0.17.0

AttributePlanModifyBool performs all types.Bool plan modification.

funcAttributePlanModifyDynamicadded inv1.7.0

AttributePlanModifyDynamic performs all types.Dynamic plan modification.

funcAttributePlanModifyFloat32added inv1.10.0

AttributePlanModifyFloat32 performs all types.Float32 plan modification.

funcAttributePlanModifyFloat64added inv0.17.0

AttributePlanModifyFloat64 performs all types.Float64 plan modification.

funcAttributePlanModifyInt32added inv1.10.0

AttributePlanModifyInt32 performs all types.Int32 plan modification.

funcAttributePlanModifyInt64added inv0.17.0

AttributePlanModifyInt64 performs all types.Int64 plan modification.

funcAttributePlanModifyListadded inv0.17.0

AttributePlanModifyList performs all types.List plan modification.

funcAttributePlanModifyMapadded inv0.17.0

AttributePlanModifyMap performs all types.Map plan modification.

funcAttributePlanModifyNumberadded inv0.17.0

AttributePlanModifyNumber performs all types.Number plan modification.

funcAttributePlanModifyObjectadded inv0.17.0

AttributePlanModifyObject performs all types.Object plan modification.

funcAttributePlanModifySetadded inv0.17.0

AttributePlanModifySet performs all types.Set plan modification.

funcAttributePlanModifyStringadded inv0.17.0

AttributePlanModifyString performs all types.String plan modification.

funcAttributeValidateadded inv0.9.0

AttributeValidate performs all Attribute validation.

TODO: Clean up this abstraction back into an internal Attribute type method.The extra Attribute parameter is a carry-over of creating the proto6serverpackage from the tfsdk package and not wanting to export the method.Reference:https://github.com/hashicorp/terraform-plugin-framework/issues/365

funcAttributeValidateBooladded inv0.17.0

AttributeValidateBool performs all types.Bool validation.

funcAttributeValidateDynamicadded inv1.7.0

AttributeValidateDynamic performs all types.Dynamic validation.

funcAttributeValidateFloat32added inv1.10.0

AttributeValidateFloat32 performs all types.Float32 validation.

funcAttributeValidateFloat64added inv0.17.0

AttributeValidateFloat64 performs all types.Float64 validation.

funcAttributeValidateInt32added inv1.10.0

AttributeValidateInt32 performs all types.Int32 validation.

funcAttributeValidateInt64added inv0.17.0

AttributeValidateInt64 performs all types.Int64 validation.

funcAttributeValidateListadded inv0.17.0

AttributeValidateList performs all types.List validation.

funcAttributeValidateMapadded inv0.17.0

AttributeValidateMap performs all types.Map validation.

funcAttributeValidateNestedAttributesadded inv0.9.0

func AttributeValidateNestedAttributes(ctxcontext.Context, afwschema.Attribute, reqValidateAttributeRequest, resp *ValidateAttributeResponse)

AttributeValidateNestedAttributes performs all nested Attributes validation.

TODO: Clean up this abstraction back into an internal Attribute type method.The extra Attribute parameter is a carry-over of creating the proto6serverpackage from the tfsdk package and not wanting to export the method.Reference:https://github.com/hashicorp/terraform-plugin-framework/issues/365

funcAttributeValidateNumberadded inv0.17.0

AttributeValidateNumber performs all types.Number validation.

funcAttributeValidateObjectadded inv0.17.0

AttributeValidateObject performs all types.Object validation.

funcAttributeValidateSetadded inv0.17.0

AttributeValidateSet performs all types.Set validation.

funcAttributeValidateStringadded inv0.17.0

AttributeValidateString performs all types.String validation.

funcBlockModifyPlanadded inv0.9.0

BlockModifyPlan performs all Block plan modification.

TODO: Clean up this abstraction back into an internal Block type method.The extra Block parameter is a carry-over of creating the proto6serverpackage from the tfsdk package and not wanting to export the method.Reference:https://github.com/hashicorp/terraform-plugin-framework/issues/365

funcBlockPlanModifyListadded inv0.17.0

BlockPlanModifyList performs all types.List plan modification.

funcBlockPlanModifyObjectadded inv0.17.0

BlockPlanModifyObject performs all types.Object plan modification.

funcBlockPlanModifySetadded inv0.17.0

BlockPlanModifySet performs all types.Set plan modification.

funcBlockValidateadded inv0.9.0

BlockValidate performs all Block validation.

TODO: Clean up this abstraction back into an internal Block type method.The extra Block parameter is a carry-over of creating the proto6serverpackage from the tfsdk package and not wanting to export the method.Reference:https://github.com/hashicorp/terraform-plugin-framework/issues/365

funcBlockValidateListadded inv0.17.0

BlockValidateList performs all types.List validation.

funcBlockValidateObjectadded inv0.17.0

BlockValidateObject performs all types.Object validation.

funcBlockValidateSetadded inv0.17.0

BlockValidateSet performs all types.Set validation.

funcMarkComputedNilsAsUnknownadded inv0.9.0

func MarkComputedNilsAsUnknown(ctxcontext.Context, configtftypes.Value, resourceSchemafwschema.Schema) func(*tftypes.AttributePath,tftypes.Value) (tftypes.Value,error)

funcNormaliseRequiresReplaceadded inv0.9.0

func NormaliseRequiresReplace(ctxcontext.Context, rspath.Paths)path.Paths

NormaliseRequiresReplace sorts and deduplicates the slice of AttributePathsused in the RequiresReplace response field.Sorting is lexical based on the string representation of each AttributePath.

funcNullifyWriteOnlyAttributesadded inv1.14.0

func NullifyWriteOnlyAttributes(ctxcontext.Context, resourceSchemafwschema.Schema) func(*tftypes.AttributePath,tftypes.Value) (tftypes.Value,error)

NullifyWriteOnlyAttributes transforms a tftypes.Value, setting all write-only attribute valuesto null according to the given managed resource schema. This function is called in all managedresource RPCs before a response is sent to Terraform Core. Terraform Core expects all write-onlyattribute values to be null to prevent data consistency errors. This can technically be donemanually by the provider developers, but the Framework is handling it instead for convenience.

funcSchemaModifyPlanadded inv0.9.0

SchemaModifyPlan runs all AttributePlanModifiers in all schema attributesand blocks.

TODO: Clean up this abstraction back into an internal Schema type method.The extra Schema parameter is a carry-over of creating the proto6serverpackage from the tfsdk package and not wanting to export the method.Reference:https://github.com/hashicorp/terraform-plugin-framework/issues/365

funcSchemaSemanticEqualityadded inv1.3.0

SchemaSemanticEquality runs semantic equality logic for all schema attributesand blocks.

MAINTAINER NOTE: Since semantic equality is purely value based, whereattributes and blocks cannot currently introduce semantic equality logicbased on those schema concepts, this logic immediately delegates to valuebased handling. On the off chance that the framework is enhanced withattribute and block level semantic equality support (not recommended sincevalue types should really be the correct provider developer abstraction,rather than potentially causing confusing or duplicated provider logic), thislogic will need to be redesigned similar to the plan modification andvalidation logic which walks the schema. That schema walk may interfere withthe value based recursion for collection and structural types, so additionaldesign may be necessary so that provider developer data handling intentionsare kept based on both the value based logic and schema based logic.

funcSchemaValidateadded inv0.9.0

SchemaValidate performs all Attribute and Block validation.

TODO: Clean up this abstraction back into an internal Schema type method.The extra Schema parameter is a carry-over of creating the proto6serverpackage from the tfsdk package and not wanting to export the method.Reference:https://github.com/hashicorp/terraform-plugin-framework/issues/365

Types

typeActionMetadataadded inv1.16.0

type ActionMetadata struct {// TypeName is the name of the action.TypeNamestring}

ActionMetadata is the framework server equivalent of thetfprotov5.ActionMetadata and tfprotov6.ActionMetadata types.

typeApplyResourceChangeRequestadded inv0.9.0

type ApplyResourceChangeRequest struct {Config           *tfsdk.ConfigPlannedPrivate   *privatestate.DataPlannedState     *tfsdk.PlanPlannedIdentity  *tfsdk.ResourceIdentityPriorState       *tfsdk.StateProviderMeta     *tfsdk.ConfigResourceSchemafwschema.SchemaIdentitySchemafwschema.SchemaResourceresource.ResourceResourceBehaviorresource.ResourceBehavior}

ApplyResourceChangeRequest is the framework server request for theApplyResourceChange RPC.

typeApplyResourceChangeResponseadded inv0.9.0

type ApplyResourceChangeResponse struct {Diagnosticsdiag.DiagnosticsNewState    *tfsdk.StateNewIdentity *tfsdk.ResourceIdentityPrivate     *privatestate.Data}

ApplyResourceChangeResponse is the framework server response for theApplyResourceChange RPC.

typeCallFunctionRequestadded inv1.5.0

type CallFunctionRequest struct {Argumentsfunction.ArgumentsDataFunctionfunction.FunctionFunctionDefinitionfunction.Definition}

CallFunctionRequest is the framework server request for theCallFunction RPC.

typeCallFunctionResponseadded inv1.5.0

type CallFunctionResponse struct {Error  *function.FuncErrorResultfunction.ResultData}

CallFunctionResponse is the framework server response for theCallFunction RPC.

typeCloseEphemeralResourceRequestadded inv1.13.0

type CloseEphemeralResourceRequest struct {Private                 *privatestate.DataEphemeralResourceSchemafwschema.SchemaEphemeralResourceephemeral.EphemeralResource}

CloseEphemeralResourceRequest is the framework server request for theCloseEphemeralResource RPC.

typeCloseEphemeralResourceResponseadded inv1.13.0

type CloseEphemeralResourceResponse struct {Diagnosticsdiag.Diagnostics}

CloseEphemeralResourceResponse is the framework server response for theCloseEphemeralResource RPC.

typeCreateResourceRequestadded inv0.9.0

type CreateResourceRequest struct {Config          *tfsdk.ConfigPlannedPrivate  *privatestate.DataPlannedState    *tfsdk.PlanPlannedIdentity *tfsdk.ResourceIdentityProviderMeta    *tfsdk.ConfigResourceSchemafwschema.SchemaIdentitySchemafwschema.SchemaResourceresource.Resource}

CreateResourceRequest is the framework server request for a create requestwith the ApplyResourceChange RPC.

typeCreateResourceResponseadded inv0.9.0

type CreateResourceResponse struct {Diagnosticsdiag.DiagnosticsNewState    *tfsdk.StateNewIdentity *tfsdk.ResourceIdentityPrivate     *privatestate.Data}

CreateResourceResponse is the framework server response for a create requestwith the ApplyResourceChange RPC.

typeDataSourceMetadataadded inv1.4.0

type DataSourceMetadata struct {// TypeName is the name of the data resource.TypeNamestring}

DataSourceMetadata is the framework server equivalent of thetfprotov5.DataSourceMetadata and tfprotov6.DataSourceMetadata types.

typeDeleteResourceRequestadded inv0.9.0

type DeleteResourceRequest struct {PlannedPrivate *privatestate.DataPriorState     *tfsdk.StatePriorIdentity  *tfsdk.ResourceIdentityProviderMeta   *tfsdk.ConfigResourceSchemafwschema.SchemaIdentitySchemafwschema.SchemaResourceresource.Resource}

DeleteResourceRequest is the framework server request for a delete requestwith the ApplyResourceChange RPC.

typeDeleteResourceResponseadded inv0.9.0

type DeleteResourceResponse struct {Diagnosticsdiag.DiagnosticsNewState    *tfsdk.StateNewIdentity *tfsdk.ResourceIdentityPrivate     *privatestate.Data}

DeleteResourceResponse is the framework server response for a delete requestwith the ApplyResourceChange RPC.

typeEphemeralResourceMetadataadded inv1.13.0

type EphemeralResourceMetadata struct {// TypeName is the name of the ephemeral resource.TypeNamestring}

EphemeralResourceMetadata is the framework server equivalent of thetfprotov5.EphemeralResourceMetadata and tfprotov6.EphemeralResourceMetadata types.

typeFunctionMetadataadded inv1.5.0

type FunctionMetadata struct {// Name is the name of the function.Namestring}

FunctionMetadata is the framework server equivalent of thetfprotov5.FunctionMetadata and tfprotov6.FunctionMetadata types.

typeGetFunctionsRequestadded inv1.5.0

type GetFunctionsRequest struct{}

GetFunctionsRequest is the framework server request for theGetFunctions RPC.

typeGetFunctionsResponseadded inv1.5.0

type GetFunctionsResponse struct {FunctionDefinitions map[string]function.DefinitionDiagnosticsdiag.Diagnostics}

GetFunctionsResponse is the framework server response for theGetFunctions RPC.

typeGetMetadataRequestadded inv1.4.0

type GetMetadataRequest struct{}

GetMetadataRequest is the framework server request for theGetMetadata RPC.

typeGetMetadataResponseadded inv1.4.0

type GetMetadataResponse struct {Actions            []ActionMetadataDataSources        []DataSourceMetadataDiagnosticsdiag.DiagnosticsEphemeralResources []EphemeralResourceMetadataFunctions          []FunctionMetadataListResources      []ListResourceMetadataResources          []ResourceMetadataServerCapabilities *ServerCapabilities}

GetMetadataResponse is the framework server response for theGetMetadata RPC.

typeGetProviderSchemaRequest

type GetProviderSchemaRequest struct{}

GetProviderSchemaRequest is the framework server request for theGetProviderSchema RPC.

typeGetProviderSchemaResponse

type GetProviderSchemaResponse struct {ServerCapabilities       *ServerCapabilitiesProviderfwschema.SchemaProviderMetafwschema.SchemaActionSchemas            map[string]actionschema.SchemaResourceSchemas          map[string]fwschema.SchemaDataSourceSchemas        map[string]fwschema.SchemaEphemeralResourceSchemas map[string]fwschema.SchemaFunctionDefinitions      map[string]function.DefinitionListResourceSchemas      map[string]fwschema.SchemaDiagnosticsdiag.Diagnostics}

GetProviderSchemaResponse is the framework server response for theGetProviderSchema RPC.

typeGetResourceIdentitySchemasRequestadded inv1.15.0

type GetResourceIdentitySchemasRequest struct{}

GetResourceIdentitySchemasRequest is the framework server request for theGetResourceIdentitySchemas RPC.

typeGetResourceIdentitySchemasResponseadded inv1.15.0

type GetResourceIdentitySchemasResponse struct {IdentitySchemas map[string]fwschema.SchemaDiagnosticsdiag.Diagnostics}

GetResourceIdentitySchemasResponse is the framework server response for theGetResourceIdentitySchemas RPC.

typeImportResourceStateRequestadded inv0.9.0

type ImportResourceStateRequest struct {// ID will come from the import CLI command or an import config block with the "id" attribute assigned.//// This ID field is a special string identifier that can be parsed however the provider deems fit.IDstring// Identity will come from an import config block with the "identity" attribute assigned and will conform// to the identity schema defined by the resource. (Terraform v1.12+)//// All attributes marked as RequiredForImport will be populated (enforced by Terraform core) and OptionalForImport// attributes may be null, but could have a config value.Identity       *tfsdk.ResourceIdentityIdentitySchemafwschema.SchemaResourceresource.Resource// EmptyState is an empty State for the resource schema. This is used to// initialize the ImportedResource State of the ImportResourceStateResponse// and allow the framework server to verify that the provider updated the// state after the provider defined logic.EmptyStatetfsdk.State// TypeName is the resource type name, which is necessary for populating// the ImportedResource TypeName of the ImportResourceStateResponse.TypeNamestringClientCapabilitiesresource.ImportStateClientCapabilities}

ImportResourceStateRequest is the framework server request for theImportResourceState RPC.

Either ID or Identity will be supplied depending on how the resource is being imported.

typeImportResourceStateResponseadded inv0.9.0

type ImportResourceStateResponse struct {Diagnosticsdiag.DiagnosticsImportedResources []ImportedResourceDeferred          *resource.Deferred}

ImportResourceStateResponse is the framework server response for theImportResourceState RPC.

typeImportedResourceadded inv0.9.0

type ImportedResource struct {Private  *privatestate.DataIdentity *tfsdk.ResourceIdentityStatetfsdk.StateTypeNamestring}

ImportedResource represents a resource that was imported.

typeInvokeActionRequestadded inv1.16.0

type InvokeActionRequest struct {Actionaction.ActionActionSchemafwschema.SchemaConfig       *tfsdk.Config}

InvokeActionRequest is the framework server request for the InvokeAction RPC.

typeInvokeActionResponseadded inv1.16.0

type InvokeActionResponse struct {// ProgressEvents is a channel provided by the consuming proto{5/6}server implementation// that allows the provider developers to return progress events while the action is being invoked.ProgressEvents chanInvokeProgressEventDiagnosticsdiag.Diagnostics}

InvokeActionEventsStream is the framework server stream for the InvokeAction RPC.

func (*InvokeActionResponse)SendProgressadded inv1.16.0

func (r *InvokeActionResponse) SendProgress(eventaction.InvokeProgressEvent)

SendProgress is injected into the action.InvokeResponse for use by the provider developer

typeInvokeProgressEventadded inv1.16.0

type InvokeProgressEvent struct {Messagestring}

typeListRequestadded inv1.16.0

type ListRequest struct {// ListResource is an instance of the provider's list resource// implementation for a specific managed resource type.ListResourcelist.ListResource// Config is the configuration the user supplied for listing resource// instances.Config *tfsdk.Config// IncludeResource indicates whether the provider should populate the// Resource field in the ListResult struct.IncludeResourcebool// Limit specifies the maximum number of results that Terraform is// expecting.Limitint64ResourceSchemafwschema.SchemaResourceIdentitySchemafwschema.Schema}

ListRequest is the framework server request for the ListResource RPC.

typeListResourceMetadataadded inv1.16.0

type ListResourceMetadata struct {// TypeName is the name of the list resource.TypeNamestring}

ListResourceMetadata is the framework server equivalent of thetfprotov5.ListResourceMetadata and tfprotov6.ListResourceMetadata types.

typeListResultadded inv1.16.0

type ListResult struct {// Identity is the identity of the managed resource instance. A nil value// will raise an error diagnostic.Identity *tfsdk.ResourceIdentity// Resource is the provider's representation of the attributes of the// listed managed resource instance.//// If [ListRequest.IncludeResource] is true, a nil value will raise// a warning diagnostic.Resource *tfsdk.Resource// DisplayName is a provider-defined human-readable description of the// listed managed resource instance, intended for CLI and browser UIs.DisplayNamestring// Diagnostics report errors or warnings related to the listed managed// resource instance. An empty slice indicates a successful operation with// no warnings or errors generated.Diagnosticsdiag.Diagnostics}

ListResult represents a listed managed resource instance.

funcListResultErroradded inv1.16.0

func ListResultError(summarystring, detailstring)ListResult

typeListResultsStreamadded inv1.16.0

type ListResultsStream struct {// Results is a function that emits [ListResult] values via its push// function argument.Resultsiter.Seq[ListResult]}

ListResultsStream represents a streaming response to aListRequest. Aninstance of this struct is supplied as an argument to the provider's Listfunction. The provider should set a Results iterator function that pusheszero or more results of typeListResult.

For convenience, a provider implementation may choose to convert a slice ofresults into an iterator usingslices.Values.

typeModifyAttributePlanRequestadded inv1.0.0

type ModifyAttributePlanRequest struct {// AttributePath is the path of the attribute. Use this path for any// response diagnostics.AttributePathpath.Path// AttributePathExpression is the expression matching the exact path of the// attribute.AttributePathExpressionpath.Expression// Config is the configuration the user supplied for the resource.Configtfsdk.Config// State is the current state of the resource.Statetfsdk.State// Plan is the planned new state for the resource.Plantfsdk.Plan// AttributeConfig is the configuration the user supplied for the attribute.AttributeConfigattr.Value// AttributeState is the current state of the attribute.AttributeStateattr.Value// AttributePlan is the planned new state for the attribute.AttributePlanattr.Value// ProviderMeta is metadata from the provider_meta block of the module.ProviderMetatfsdk.Config// Private is provider-defined resource private state data which was previously// stored with the resource state. This data is opaque to Terraform and does// not affect plan output. Any existing data is copied to// ModifyAttributePlanResponse.Private to prevent accidental private state data loss.//// The private state data is always the original data when the schema-based plan// modification began or, is updated as the logic traverses deeper into underlying// attributes.//// Use the GetKey method to read data. Use the SetKey method on// ModifyAttributePlanResponse.Private to update or remove a value.Private *privatestate.ProviderData}

ModifyAttributePlanRequest represents a request for the provider to modify anattribute value, or mark it as requiring replacement, at plan time. Aninstance of this request struct is supplied as an argument to the Modifyfunction of an attribute's plan modifier(s).

typeModifyAttributePlanResponseadded inv0.12.0

type ModifyAttributePlanResponse struct {AttributePlanattr.ValueDiagnosticsdiag.DiagnosticsRequiresReplacepath.PathsPrivate         *privatestate.ProviderData}

typeModifySchemaPlanRequestadded inv0.9.0

type ModifySchemaPlanRequest struct {// Config is the configuration the user supplied for the resource.Configtfsdk.Config// State is the current state of the resource.Statetfsdk.State// Plan is the planned new state for the resource.Plantfsdk.Plan// ProviderMeta is metadata from the provider_meta block of the module.ProviderMetatfsdk.Config// Private is provider private state data.Private *privatestate.ProviderData}

ModifySchemaPlanRequest represents a request for a schema to run allattribute plan modification functions.

typeModifySchemaPlanResponseadded inv0.9.0

type ModifySchemaPlanResponse struct {// Plan is the planned new state for the resource.Plantfsdk.Plan// RequiresReplace is a list of attribute paths that require the// resource to be replaced. They should point to the specific field// that changed that requires the resource to be destroyed and// recreated.RequiresReplacepath.Paths// Private is provider private state data following potential modifications.Private *privatestate.ProviderData// Diagnostics report errors or warnings related to running all attribute// plan modifiers. Returning an empty slice indicates a successful// plan modification with no warnings or errors generated.Diagnosticsdiag.Diagnostics}

ModifySchemaPlanResponse represents a response to a ModifySchemaPlanRequest.

typeMoveResourceStateRequestadded inv1.6.0

type MoveResourceStateRequest struct {// SourcePrivate is the private state of the source resource as given by// Terraform across the protocol.SourcePrivate *privatestate.Data// SourceProviderAddress is the address of the source provider as given by// Terraform across the protocol.SourceProviderAddressstring// SourceSchemaVersion is the version of the source resource schema as given// by Terraform across the protocol.SourceSchemaVersionint64// SourceRawState is the raw state of the source resource as given by// Terraform across the protocol.//// Using the tfprotov6 type here was a pragmatic effort decision around when// the framework introduced compatibility promises. This type was chosen as// it was readily available and trivial to convert between tfprotov5.//// Using a terraform-plugin-go type is not ideal for the framework as almost// all terraform-plugin-go types have framework abstractions, but if there// is ever a time where it makes sense to re-evaluate this decision, such as// a major version bump, it could be changed then.// Reference:https://github.com/hashicorp/terraform-plugin-framework/issues/340SourceRawState *tfprotov6.RawState// SourceTypeName is the type name of the source resource as given by// Terraform across the protocol.SourceTypeNamestring// TargetResource is the provider-defined resource implementation as// determined by the framework looking up the resource name from the// provider.Provider implementation Resources method defined by the// provider developer.TargetResourceresource.Resource// TargetResourceSchema is the evaluated schema definition of the target// resource as determined by the framework calling the resource.Resource// implementation Schema method defined by the provider developer.TargetResourceSchemafwschema.Schema// TargetTypeName is the type name of the target resource as given by// Terraform across the protocol.TargetTypeNamestring// SourceIdentity is the identity of the source resource.//// Only the underlying JSON field is populated.SourceIdentity *tfprotov6.RawState// SourceIdentitySchemaVersion is the version of the source resource state.SourceIdentitySchemaVersionint64IdentitySchemafwschema.Schema}

MoveResourceStateRequest is the framework server request for theMoveResourceState RPC.

typeMoveResourceStateResponseadded inv1.6.0

type MoveResourceStateResponse struct {Diagnosticsdiag.DiagnosticsTargetPrivate  *privatestate.DataTargetState    *tfsdk.StateTargetIdentity *tfsdk.ResourceIdentity}

MoveResourceStateResponse is the framework server response for theMoveResourceState RPC.

typeOpenEphemeralResourceRequestadded inv1.13.0

type OpenEphemeralResourceRequest struct {ClientCapabilitiesephemeral.OpenClientCapabilitiesConfig                  *tfsdk.ConfigEphemeralResourceSchemafwschema.SchemaEphemeralResourceephemeral.EphemeralResource}

OpenEphemeralResourceRequest is the framework server request for theOpenEphemeralResource RPC.

typeOpenEphemeralResourceResponseadded inv1.13.0

type OpenEphemeralResourceResponse struct {Result      *tfsdk.EphemeralResultDataPrivate     *privatestate.DataDiagnosticsdiag.DiagnosticsRenewAttime.TimeDeferred    *ephemeral.Deferred}

OpenEphemeralResourceResponse is the framework server response for theOpenEphemeralResource RPC.

typePlanActionRequestadded inv1.16.0

type PlanActionRequest struct {ClientCapabilitiesaction.ModifyPlanClientCapabilitiesActionSchemafwschema.SchemaActionaction.ActionConfig             *tfsdk.Config}

PlanActionRequest is the framework server request for the PlanAction RPC.

typePlanActionResponseadded inv1.16.0

type PlanActionResponse struct {Deferred    *action.DeferredDiagnosticsdiag.Diagnostics}

PlanActionResponse is the framework server response for the PlanAction RPC.

typePlanResourceChangeRequestadded inv0.9.0

type PlanResourceChangeRequest struct {ClientCapabilitiesresource.ModifyPlanClientCapabilitiesConfig             *tfsdk.ConfigPriorPrivate       *privatestate.DataPriorState         *tfsdk.StatePriorIdentity      *tfsdk.ResourceIdentityProposedNewState   *tfsdk.PlanProviderMeta       *tfsdk.ConfigResourceSchemafwschema.SchemaIdentitySchemafwschema.SchemaResourceresource.ResourceResourceBehaviorresource.ResourceBehavior}

PlanResourceChangeRequest is the framework server request for thePlanResourceChange RPC.

typePlanResourceChangeResponseadded inv0.9.0

type PlanResourceChangeResponse struct {Deferred        *resource.DeferredDiagnosticsdiag.DiagnosticsPlannedPrivate  *privatestate.DataPlannedState    *tfsdk.StatePlannedIdentity *tfsdk.ResourceIdentityRequiresReplacepath.Paths}

PlanResourceChangeResponse is the framework server response for thePlanResourceChange RPC.

typeReadDataSourceRequestadded inv0.9.0

type ReadDataSourceRequest struct {ClientCapabilitiesdatasource.ReadClientCapabilitiesConfig             *tfsdk.ConfigDataSourceSchemafwschema.SchemaDataSourcedatasource.DataSourceProviderMeta       *tfsdk.Config}

ReadDataSourceRequest is the framework server request for theReadDataSource RPC.

typeReadDataSourceResponseadded inv0.9.0

type ReadDataSourceResponse struct {Deferred    *datasource.DeferredDiagnosticsdiag.DiagnosticsState       *tfsdk.State}

ReadDataSourceResponse is the framework server response for theReadDataSource RPC.

typeReadResourceRequestadded inv0.9.0

type ReadResourceRequest struct {ClientCapabilitiesresource.ReadClientCapabilitiesIdentitySchemafwschema.SchemaCurrentIdentity    *tfsdk.ResourceIdentityCurrentState       *tfsdk.StateResourceresource.ResourcePrivate            *privatestate.DataProviderMeta       *tfsdk.ConfigResourceBehaviorresource.ResourceBehavior}

ReadResourceRequest is the framework server request for theReadResource RPC.

typeReadResourceResponseadded inv0.9.0

type ReadResourceResponse struct {Deferred    *resource.DeferredDiagnosticsdiag.DiagnosticsNewState    *tfsdk.StateNewIdentity *tfsdk.ResourceIdentityPrivate     *privatestate.Data}

ReadResourceResponse is the framework server response for theReadResource RPC.

typeRenewEphemeralResourceRequestadded inv1.13.0

type RenewEphemeralResourceRequest struct {Private                 *privatestate.DataEphemeralResourceSchemafwschema.SchemaEphemeralResourceephemeral.EphemeralResource}

RenewEphemeralResourceRequest is the framework server request for theRenewEphemeralResource RPC.

typeRenewEphemeralResourceResponseadded inv1.13.0

type RenewEphemeralResourceResponse struct {Private     *privatestate.DataDiagnosticsdiag.DiagnosticsRenewAttime.Time}

RenewEphemeralResourceResponse is the framework server response for theRenewEphemeralResource RPC.

typeResourceMetadataadded inv1.4.0

type ResourceMetadata struct {// TypeName is the name of the managed resource.TypeNamestring}

ResourceMetadata is the framework server equivalent of thetfprotov5.ResourceMetadata and tfprotov6.ResourceMetadata types.

typeSchemaSemanticEqualityRequestadded inv1.3.0

type SchemaSemanticEqualityRequest struct {// PriorData is the prior schema-based data.PriorDatafwschemadata.Data// ProposedNewData is the proposed new schema-based data. The response// NewData contains the results of any modifications.ProposedNewDatafwschemadata.Data}

SchemaSemanticEqualityRequest represents a request for a schema to run allsemantic equality logic.

typeSchemaSemanticEqualityResponseadded inv1.3.0

type SchemaSemanticEqualityResponse struct {// NewData is the new schema-based data after any modifications.NewDatafwschemadata.Data// Diagnostics report errors or warnings related to running all attribute// plan modifiers. Returning an empty slice indicates a successful// plan modification with no warnings or errors generated.Diagnosticsdiag.Diagnostics}

SchemaSemanticEqualityResponse represents a response to aSchemaSemanticEqualityRequest.

typeServer

type Server struct {Providerprovider.Provider// DataSourceConfigureData is the// [provider.ConfigureResponse.DataSourceData] field value which is passed// to [datasource.ConfigureRequest.ProviderData].DataSourceConfigureDataany// ResourceConfigureData is the// [provider.ConfigureResponse.ResourceData] field value which is passed// to [resource.ConfigureRequest.ProviderData].ResourceConfigureDataany// EphemeralResourceConfigureData is the// [provider.ConfigureResponse.EphemeralResourceData] field value which is passed// to [ephemeral.ConfigureRequest.ProviderData].EphemeralResourceConfigureDataany// ListResourceConfigureData is the// [provider.ConfigureResponse.ListResourceData] field value which is passed// to [list.ConfigureRequest.ProviderData].ListResourceConfigureDataany// ActionConfigureData is the// [provider.ConfigureResponse.ActionData] field value which is passed// to [action.ConfigureRequest.ProviderData].ActionConfigureDataany// contains filtered or unexported fields}

Server implements the framework provider server. Protocol specificimplementations wrap this handling along with calling all request andresponse type conversions.

func (*Server)Actionadded inv1.16.0

func (s *Server) Action(ctxcontext.Context, actionTypestring) (action.Action,diag.Diagnostics)

Action returns the Action for a given action type.

func (*Server)ActionFuncsadded inv1.16.0

func (s *Server) ActionFuncs(ctxcontext.Context) (map[string]func()action.Action,diag.Diagnostics)

ActionFuncs returns a map of Action functions. The results are cachedon first use.

func (*Server)ActionMetadatasadded inv1.16.0

func (s *Server) ActionMetadatas(ctxcontext.Context) ([]ActionMetadata,diag.Diagnostics)

ActionMetadatas returns a slice of ActionMetadata for the GetMetadataRPC.

func (*Server)ActionSchemaadded inv1.16.0

func (s *Server) ActionSchema(ctxcontext.Context, actionTypestring) (actionschema.Schema,diag.Diagnostics)

ActionSchema returns the Action Schema for the given type name andcaches the result for later Action operations.

func (*Server)ActionSchemasadded inv1.16.0

func (s *Server) ActionSchemas(ctxcontext.Context) (map[string]actionschema.Schema,diag.Diagnostics)

ActionSchemas returns a map of Action Schemas for theGetProviderSchema RPC without caching since not all schemas are guaranteed tobe necessary for later provider operations. The schema implementations arealso validated.

func (*Server)ApplyResourceChangeadded inv0.9.0

func (s *Server) ApplyResourceChange(ctxcontext.Context, req *ApplyResourceChangeRequest, resp *ApplyResourceChangeResponse)

ApplyResourceChange implements the framework server ApplyResourceChange RPC.

func (*Server)CallFunctionadded inv1.5.0

func (s *Server) CallFunction(ctxcontext.Context, req *CallFunctionRequest, resp *CallFunctionResponse)

CallFunction implements the framework server CallFunction RPC.

func (*Server)CloseEphemeralResourceadded inv1.13.0

func (s *Server) CloseEphemeralResource(ctxcontext.Context, req *CloseEphemeralResourceRequest, resp *CloseEphemeralResourceResponse)

CloseEphemeralResource implements the framework server CloseEphemeralResource RPC.

func (*Server)ConfigureProvideradded inv0.9.0

func (s *Server) ConfigureProvider(ctxcontext.Context, req *provider.ConfigureRequest, resp *provider.ConfigureResponse)

ConfigureProvider implements the framework server ConfigureProvider RPC.

func (*Server)CreateResourceadded inv0.9.0

func (s *Server) CreateResource(ctxcontext.Context, req *CreateResourceRequest, resp *CreateResourceResponse)

CreateResource implements the framework server create request logic for theApplyResourceChange RPC.

func (*Server)DataSourceadded inv0.12.0

func (s *Server) DataSource(ctxcontext.Context, typeNamestring) (datasource.DataSource,diag.Diagnostics)

DataSource returns the DataSource for a given type name.

func (*Server)DataSourceFuncsadded inv0.12.0

func (s *Server) DataSourceFuncs(ctxcontext.Context) (map[string]func()datasource.DataSource,diag.Diagnostics)

DataSourceFuncs returns a map of DataSource functions. The results are cachedon first use.

func (*Server)DataSourceMetadatasadded inv1.4.0

func (s *Server) DataSourceMetadatas(ctxcontext.Context) ([]DataSourceMetadata,diag.Diagnostics)

DataSourceMetadatas returns a slice of DataSourceMetadata for the GetMetadataRPC.

func (*Server)DataSourceSchemaadded inv0.9.0

func (s *Server) DataSourceSchema(ctxcontext.Context, typeNamestring) (fwschema.Schema,diag.Diagnostics)

DataSourceSchema returns the DataSource Schema for the given type name andcaches the result for later DataSource operations.

func (*Server)DataSourceSchemasadded inv0.9.0

func (s *Server) DataSourceSchemas(ctxcontext.Context) (map[string]fwschema.Schema,diag.Diagnostics)

DataSourceSchemas returns a map of DataSource Schemas for theGetProviderSchema RPC without caching since not all schemas are guaranteed tobe necessary for later provider operations. The schema implementations arealso validated.

func (*Server)DeleteResourceadded inv0.9.0

func (s *Server) DeleteResource(ctxcontext.Context, req *DeleteResourceRequest, resp *DeleteResourceResponse)

DeleteResource implements the framework server delete request logic for theApplyResourceChange RPC.

func (*Server)EphemeralResourceadded inv1.13.0

func (s *Server) EphemeralResource(ctxcontext.Context, typeNamestring) (ephemeral.EphemeralResource,diag.Diagnostics)

EphemeralResource returns the EphemeralResource for a given type name.

func (*Server)EphemeralResourceFuncsadded inv1.13.0

func (s *Server) EphemeralResourceFuncs(ctxcontext.Context) (map[string]func()ephemeral.EphemeralResource,diag.Diagnostics)

EphemeralResourceFuncs returns a map of EphemeralResource functions. The results are cachedon first use.

func (*Server)EphemeralResourceMetadatasadded inv1.13.0

func (s *Server) EphemeralResourceMetadatas(ctxcontext.Context) ([]EphemeralResourceMetadata,diag.Diagnostics)

EphemeralResourceMetadatas returns a slice of EphemeralResourceMetadata for the GetMetadataRPC.

func (*Server)EphemeralResourceSchemaadded inv1.13.0

func (s *Server) EphemeralResourceSchema(ctxcontext.Context, typeNamestring) (fwschema.Schema,diag.Diagnostics)

EphemeralResourceSchema returns the EphemeralResource Schema for the given type name andcaches the result for later EphemeralResource operations.

func (*Server)EphemeralResourceSchemasadded inv1.13.0

func (s *Server) EphemeralResourceSchemas(ctxcontext.Context) (map[string]fwschema.Schema,diag.Diagnostics)

EphemeralResourceSchemas returns a map of EphemeralResource Schemas for theGetProviderSchema RPC without caching since not all schemas are guaranteed tobe necessary for later provider operations. The schema implementations arealso validated.

func (*Server)Functionadded inv1.5.0

Function returns the Function for a given name.

func (*Server)FunctionDefinitionadded inv1.5.0

func (s *Server) FunctionDefinition(ctxcontext.Context, namestring) (function.Definition, *function.FuncError)

FunctionDefinition returns the Function Definition for the given name andcaches the result for later Function operations.

func (*Server)FunctionDefinitionsadded inv1.5.0

func (s *Server) FunctionDefinitions(ctxcontext.Context) (map[string]function.Definition,diag.Diagnostics)

FunctionDefinitions returns a map of Function Definitions for theGetProviderSchema RPC without caching since not all definitions areguaranteed to be necessary for later provider operations. The definitionimplementations are also validated.

func (*Server)FunctionFuncsadded inv1.5.0

func (s *Server) FunctionFuncs(ctxcontext.Context) (map[string]func()function.Function,diag.Diagnostics)

FunctionFuncs returns a map of Function functions. The results are cachedon first use.

func (*Server)FunctionMetadatasadded inv1.5.0

func (s *Server) FunctionMetadatas(ctxcontext.Context) ([]FunctionMetadata,diag.Diagnostics)

FunctionMetadatas returns a slice of FunctionMetadata for the GetMetadataRPC.

func (*Server)GetFunctionsadded inv1.5.0

func (s *Server) GetFunctions(ctxcontext.Context, req *GetFunctionsRequest, resp *GetFunctionsResponse)

GetFunctions implements the framework server GetFunctions RPC.

func (*Server)GetMetadataadded inv1.4.0

func (s *Server) GetMetadata(ctxcontext.Context, req *GetMetadataRequest, resp *GetMetadataResponse)

GetMetadata implements the framework server GetMetadata RPC.

func (*Server)GetProviderSchema

func (s *Server) GetProviderSchema(ctxcontext.Context, req *GetProviderSchemaRequest, resp *GetProviderSchemaResponse)

GetProviderSchema implements the framework server GetProviderSchema RPC.

func (*Server)GetResourceIdentitySchemasadded inv1.15.0

func (s *Server) GetResourceIdentitySchemas(ctxcontext.Context, req *GetResourceIdentitySchemasRequest, resp *GetResourceIdentitySchemasResponse)

GetResourceIdentitySchemas implements the framework server GetResourceIdentitySchemas RPC.

func (*Server)ImportResourceStateadded inv0.9.0

func (s *Server) ImportResourceState(ctxcontext.Context, req *ImportResourceStateRequest, resp *ImportResourceStateResponse)

ImportResourceState implements the framework server ImportResourceState RPC.

func (*Server)InvokeActionadded inv1.16.0

func (s *Server) InvokeAction(ctxcontext.Context, req *InvokeActionRequest, resp *InvokeActionResponse)

InvokeAction implements the framework server InvokeAction RPC.

func (*Server)ListResourceadded inv1.16.0

func (s *Server) ListResource(ctxcontext.Context, fwReq *ListRequest, fwStream *ListResultsStream)

ListResource implements the framework server ListResource RPC.

func (*Server)ListResourceFuncsadded inv1.16.0

func (s *Server) ListResourceFuncs(ctxcontext.Context) (map[string]func()list.ListResource,diag.Diagnostics)

ListResourceFuncs returns a map of ListResource functions. The results arecached on first use.

func (*Server)ListResourceMetadatasadded inv1.16.0

func (s *Server) ListResourceMetadatas(ctxcontext.Context) ([]ListResourceMetadata,diag.Diagnostics)

ListResourceMetadatas returns a slice of ListResourceMetadata for the GetMetadataRPC.

func (*Server)ListResourceSchemaadded inv1.16.0

func (s *Server) ListResourceSchema(ctxcontext.Context, typeNamestring) (fwschema.Schema,diag.Diagnostics)

ListResourceSchema returns the ListResource Schema for the given type name andcaches the result for later ListResource operations.

func (*Server)ListResourceSchemasadded inv1.16.0

func (s *Server) ListResourceSchemas(ctxcontext.Context) (map[string]fwschema.Schema,diag.Diagnostics)

ListResourceSchemas returns a map of ListResource Schemas for theGetProviderSchema RPC without caching since not all schemas are guaranteed tobe necessary for later provider operations. The schema implementations arealso validated.

func (*Server)ListResourceTypeadded inv1.16.0

func (s *Server) ListResourceType(ctxcontext.Context, typeNamestring) (list.ListResource,diag.Diagnostics)

func (*Server)MoveResourceStateadded inv1.6.0

func (s *Server) MoveResourceState(ctxcontext.Context, req *MoveResourceStateRequest, resp *MoveResourceStateResponse)

MoveResourceState implements the framework server MoveResourceState RPC.

func (*Server)OpenEphemeralResourceadded inv1.13.0

func (s *Server) OpenEphemeralResource(ctxcontext.Context, req *OpenEphemeralResourceRequest, resp *OpenEphemeralResourceResponse)

OpenEphemeralResource implements the framework server OpenEphemeralResource RPC.

func (*Server)PlanActionadded inv1.16.0

func (s *Server) PlanAction(ctxcontext.Context, req *PlanActionRequest, resp *PlanActionResponse)

PlanAction implements the framework server PlanAction RPC.

func (*Server)PlanResourceChangeadded inv0.9.0

func (s *Server) PlanResourceChange(ctxcontext.Context, req *PlanResourceChangeRequest, resp *PlanResourceChangeResponse)

PlanResourceChange implements the framework server PlanResourceChange RPC.

func (*Server)ProviderMetaSchemaadded inv0.9.0

func (s *Server) ProviderMetaSchema(ctxcontext.Context) (fwschema.Schema,diag.Diagnostics)

ProviderMetaSchema returns the Meta Schema associated with the Provider, ifit implements the ProviderWithMetaSchema interface. The Schema andDiagnostics are cached on first use.

func (*Server)ProviderSchemaadded inv0.9.0

func (s *Server) ProviderSchema(ctxcontext.Context) (fwschema.Schema,diag.Diagnostics)

ProviderSchema returns the Schema associated with the Provider. The Schemaand Diagnostics are cached on first use.

func (*Server)ProviderTypeNameadded inv1.4.1

func (s *Server) ProviderTypeName(ctxcontext.Context)string

ProviderTypeName returns the TypeName associated with the Provider. The TypeName is cached on first use.

func (*Server)ReadDataSourceadded inv0.9.0

func (s *Server) ReadDataSource(ctxcontext.Context, req *ReadDataSourceRequest, resp *ReadDataSourceResponse)

ReadDataSource implements the framework server ReadDataSource RPC.

func (*Server)ReadResourceadded inv0.9.0

func (s *Server) ReadResource(ctxcontext.Context, req *ReadResourceRequest, resp *ReadResourceResponse)

ReadResource implements the framework server ReadResource RPC.

func (*Server)RenewEphemeralResourceadded inv1.13.0

func (s *Server) RenewEphemeralResource(ctxcontext.Context, req *RenewEphemeralResourceRequest, resp *RenewEphemeralResourceResponse)

RenewEphemeralResource implements the framework server RenewEphemeralResource RPC.

func (*Server)Resourceadded inv0.12.0

func (s *Server) Resource(ctxcontext.Context, typeNamestring) (resource.Resource,diag.Diagnostics)

Resource returns the Resource for a given type name.

func (*Server)ResourceBehavioradded inv1.9.0

func (s *Server) ResourceBehavior(ctxcontext.Context, typeNamestring) (resource.ResourceBehavior,diag.Diagnostics)

ResourceBehavior returns the ResourceBehavior for a given type name.

func (*Server)ResourceBehaviorsadded inv1.9.0

func (s *Server) ResourceBehaviors(ctxcontext.Context) (map[string]resource.ResourceBehavior,diag.Diagnostics)

ResourceBehaviors returns a map of ResourceBehavior. The results are cachedon first use.

func (*Server)ResourceFuncsadded inv0.12.0

func (s *Server) ResourceFuncs(ctxcontext.Context) (map[string]func()resource.Resource,diag.Diagnostics)

ResourceFuncs returns a map of Resource functions. The results are cachedon first use.

func (*Server)ResourceIdentitySchemaadded inv1.15.0

func (s *Server) ResourceIdentitySchema(ctxcontext.Context, typeNamestring) (fwschema.Schema,diag.Diagnostics)

ResourceIdentitySchema returns the Resource Identity Schema for the given type name andcaches the result for later Identity operations. Identity is an optional feature for resources,so this function will return a nil schema with no diagnostics if the resource type doesn't definean identity schema.

func (*Server)ResourceIdentitySchemasadded inv1.15.0

func (s *Server) ResourceIdentitySchemas(ctxcontext.Context) (map[string]fwschema.Schema,diag.Diagnostics)

ResourceIdentitySchemas returns a map of Resource Identity Schemas for theGetResourceIdentitySchemas RPC without caching since not all schemas are guaranteed tobe necessary for later provider operations. The schema implementations arealso validated.

func (*Server)ResourceMetadatasadded inv1.4.0

func (s *Server) ResourceMetadatas(ctxcontext.Context) ([]ResourceMetadata,diag.Diagnostics)

ResourceMetadatas returns a slice of ResourceMetadata for the GetMetadataRPC.

func (*Server)ResourceSchemaadded inv0.9.0

func (s *Server) ResourceSchema(ctxcontext.Context, typeNamestring) (fwschema.Schema,diag.Diagnostics)

ResourceSchema returns the Resource Schema for the given type name andcaches the result for later Resource operations.

func (*Server)ResourceSchemasadded inv0.9.0

func (s *Server) ResourceSchemas(ctxcontext.Context) (map[string]fwschema.Schema,diag.Diagnostics)

ResourceSchemas returns a map of Resource Schemas for theGetProviderSchema RPC without caching since not all schemas are guaranteed tobe necessary for later provider operations. The schema implementations arealso validated.

func (*Server)ServerCapabilitiesadded inv1.4.0

func (s *Server) ServerCapabilities() *ServerCapabilities

ServerCapabilities returns the server capabilities.

func (*Server)UpdateResourceadded inv0.9.0

func (s *Server) UpdateResource(ctxcontext.Context, req *UpdateResourceRequest, resp *UpdateResourceResponse)

UpdateResource implements the framework server update request logic for theApplyResourceChange RPC.

func (*Server)UpgradeResourceIdentityadded inv1.15.0

func (s *Server) UpgradeResourceIdentity(ctxcontext.Context, req *UpgradeResourceIdentityRequest, resp *UpgradeResourceIdentityResponse)

UpgradeResourceIdentity implements the framework server UpgradeResourceIdentity RPC.

func (*Server)UpgradeResourceStateadded inv0.9.0

func (s *Server) UpgradeResourceState(ctxcontext.Context, req *UpgradeResourceStateRequest, resp *UpgradeResourceStateResponse)

UpgradeResourceState implements the framework server UpgradeResourceState RPC.

func (*Server)ValidateActionConfigadded inv1.16.0

func (s *Server) ValidateActionConfig(ctxcontext.Context, req *ValidateActionConfigRequest, resp *ValidateActionConfigResponse)

ValidateActionConfig implements the framework server ValidateActionConfig RPC.

func (*Server)ValidateDataSourceConfigadded inv0.9.0

func (s *Server) ValidateDataSourceConfig(ctxcontext.Context, req *ValidateDataSourceConfigRequest, resp *ValidateDataSourceConfigResponse)

ValidateDataSourceConfig implements the framework server ValidateDataSourceConfig RPC.

func (*Server)ValidateEphemeralResourceConfigadded inv1.13.0

ValidateEphemeralResourceConfig implements the framework server ValidateEphemeralResourceConfig RPC.

func (*Server)ValidateListResourceConfigadded inv1.16.0

func (s *Server) ValidateListResourceConfig(ctxcontext.Context, req *ValidateListResourceConfigRequest, resp *ValidateListResourceConfigResponse)

ValidateListResourceConfig implements the framework server ValidateListResourceConfig RPC.

func (*Server)ValidateProviderConfigadded inv0.9.0

func (s *Server) ValidateProviderConfig(ctxcontext.Context, req *ValidateProviderConfigRequest, resp *ValidateProviderConfigResponse)

ValidateProviderConfig implements the framework server ValidateProviderConfig RPC.

func (*Server)ValidateResourceConfigadded inv0.9.0

func (s *Server) ValidateResourceConfig(ctxcontext.Context, req *ValidateResourceConfigRequest, resp *ValidateResourceConfigResponse)

ValidateResourceConfig implements the framework server ValidateResourceConfig RPC.

typeServerCapabilitiesadded inv0.10.0

type ServerCapabilities struct {// GetProviderSchemaOptional signals that the provider does not require the// GetProviderSchema RPC before other RPCs.//// This should always be enabled in framework providers and requires// Terraform 1.6 or later.GetProviderSchemaOptionalbool// MoveResourceState signals that the provider is ready for the// MoveResourceState RPC.//// This should always be enabled in framework providers and requires// Terraform 1.8 or later.MoveResourceStatebool// PlanDestroy signals that the provider is ready for the// PlanResourceChange RPC on resource destruction.//// This should always be enabled in framework providers and requires// Terraform 1.3 or later.PlanDestroybool}

ServerCapabilities is a combination of tfprotov5.ServerCapabilities andtfprotov6.ServerCapabilties, which may diverge over time. If that happens,the toproto5 conversion logic will handle the appropriate filtering and theproto5server/fwserver logic will need to account for missing features.

typeUpdateResourceRequestadded inv0.9.0

type UpdateResourceRequest struct {Config           *tfsdk.ConfigPlannedPrivate   *privatestate.DataPlannedState     *tfsdk.PlanPlannedIdentity  *tfsdk.ResourceIdentityPriorState       *tfsdk.StateProviderMeta     *tfsdk.ConfigResourceSchemafwschema.SchemaIdentitySchemafwschema.SchemaResourceresource.ResourceResourceBehaviorresource.ResourceBehavior}

UpdateResourceRequest is the framework server request for an update requestwith the ApplyResourceChange RPC.

typeUpdateResourceResponseadded inv0.9.0

type UpdateResourceResponse struct {Diagnosticsdiag.DiagnosticsNewState    *tfsdk.StateNewIdentity *tfsdk.ResourceIdentityPrivate     *privatestate.Data}

UpdateResourceResponse is the framework server response for an update requestwith the ApplyResourceChange RPC.

typeUpgradeResourceIdentityRequestadded inv1.15.0

type UpgradeResourceIdentityRequest struct {Resourceresource.ResourceIdentitySchemafwschema.Schema// TypeName is the type of resource that Terraform needs to upgrade the// identity state for.TypeNamestring// Version is the version of the identity state the resource currently has.Versionint64// Using a terraform-plugin-go type is not ideal for the framework as almost// all terraform-plugin-go types have framework abstractions, but if there// is ever a time where it makes sense to re-evaluate this decision, such as// a major version bump, it could be changed then.// Reference:https://github.com/hashicorp/terraform-plugin-framework/issues/340RawState *tfprotov6.RawState}

UpgradeResourceIdentityRequest is the framework server request for theUpgradeResourceIdentity RPC.

typeUpgradeResourceIdentityResponseadded inv1.15.0

type UpgradeResourceIdentityResponse struct {UpgradedIdentity *tfsdk.ResourceIdentityDiagnosticsdiag.Diagnostics}

UpgradeResourceIdentityResponse is the framework server response for theUpgradeResourceIdentity RPC.

typeUpgradeResourceStateRequestadded inv0.9.0

type UpgradeResourceStateRequest struct {// Using the tfprotov6 type here was a pragmatic effort decision around when// the framework introduced compatibility promises. This type was chosen as// it was readily available and trivial to convert between tfprotov5.//// Using a terraform-plugin-go type is not ideal for the framework as almost// all terraform-plugin-go types have framework abstractions, but if there// is ever a time where it makes sense to re-evaluate this decision, such as// a major version bump, it could be changed then.// Reference:https://github.com/hashicorp/terraform-plugin-framework/issues/340RawState *tfprotov6.RawStateResourceSchemafwschema.SchemaResourceresource.ResourceVersionint64}

UpgradeResourceStateRequest is the framework server request for theUpgradeResourceState RPC.

typeUpgradeResourceStateResponseadded inv0.9.0

type UpgradeResourceStateResponse struct {Diagnosticsdiag.DiagnosticsUpgradedState *tfsdk.State}

UpgradeResourceStateResponse is the framework server response for theUpgradeResourceState RPC.

typeValidateActionConfigRequestadded inv1.16.0

type ValidateActionConfigRequest struct {Config *tfsdk.ConfigActionaction.Action}

ValidateActionConfigRequest is the framework server request for theValidateActionConfig RPC.

typeValidateActionConfigResponseadded inv1.16.0

type ValidateActionConfigResponse struct {Diagnosticsdiag.Diagnostics}

ValidateActionConfigResponse is the framework server response for theValidateActionConfig RPC.

typeValidateAttributeRequestadded inv1.0.0

type ValidateAttributeRequest struct {// AttributePath contains the path of the attribute. Use this path for any// response diagnostics.AttributePathpath.Path// AttributePathExpression contains the expression matching the exact path// of the attribute.AttributePathExpressionpath.Expression// AttributeConfig contains the value of the attribute in the configuration.AttributeConfigattr.Value// Config contains the entire configuration of the data source, provider, or resource.Configtfsdk.Config// ClientCapabilities defines optionally supported protocol features for// schema validation RPCs, such as forward-compatible Terraform// behavior changes.ClientCapabilitiesvalidator.ValidateSchemaClientCapabilities}

ValidateAttributeRequest repesents a request for attribute validation.

typeValidateAttributeResponseadded inv1.0.0

type ValidateAttributeResponse struct {// Diagnostics report errors or warnings related to validating the data// source configuration. An empty slice indicates success, with no warnings// or errors generated.Diagnosticsdiag.Diagnostics}

ValidateAttributeResponse represents a response to aValidateAttributeRequest. An instance of this response struct isautomatically passed through to each AttributeValidator.

typeValidateDataSourceConfigRequestadded inv0.9.0

type ValidateDataSourceConfigRequest struct {Config     *tfsdk.ConfigDataSourcedatasource.DataSource}

ValidateDataSourceConfigRequest is the framework server request for theValidateDataSourceConfig RPC.

typeValidateDataSourceConfigResponseadded inv0.9.0

type ValidateDataSourceConfigResponse struct {Diagnosticsdiag.Diagnostics}

ValidateDataSourceConfigResponse is the framework server response for theValidateDataSourceConfig RPC.

typeValidateEphemeralResourceConfigRequestadded inv1.13.0

type ValidateEphemeralResourceConfigRequest struct {Config            *tfsdk.ConfigEphemeralResourceephemeral.EphemeralResource}

ValidateEphemeralResourceConfigRequest is the framework server request for theValidateEphemeralResourceConfig RPC.

typeValidateEphemeralResourceConfigResponseadded inv1.13.0

type ValidateEphemeralResourceConfigResponse struct {Diagnosticsdiag.Diagnostics}

ValidateEphemeralResourceConfigResponse is the framework server response for theValidateEphemeralResourceConfig RPC.

typeValidateListResourceConfigRequestadded inv1.16.0

type ValidateListResourceConfigRequest struct {Config       *tfsdk.ConfigListResourcelist.ListResource}

ValidateListResourceConfigRequest is the framework server request for theValidateListResourceConfig RPC.

typeValidateListResourceConfigResponseadded inv1.16.0

type ValidateListResourceConfigResponse struct {Diagnosticsdiag.Diagnostics}

ValidateListResourceConfigResponse is the framework server response for theValidateListResourceConfig RPC.

typeValidateProviderConfigRequestadded inv0.9.0

type ValidateProviderConfigRequest struct {Config *tfsdk.Config}

ValidateProviderConfigRequest is the framework server request for theValidateProviderConfig RPC.

typeValidateProviderConfigResponseadded inv0.9.0

type ValidateProviderConfigResponse struct {PreparedConfig *tfsdk.ConfigDiagnosticsdiag.Diagnostics}

ValidateProviderConfigResponse is the framework server response for theValidateProviderConfig RPC.

typeValidateResourceConfigRequestadded inv0.9.0

type ValidateResourceConfigRequest struct {ClientCapabilitiesresource.ValidateConfigClientCapabilitiesConfig             *tfsdk.ConfigResourceresource.Resource}

ValidateResourceConfigRequest is the framework server request for theValidateResourceConfig RPC.

typeValidateResourceConfigResponseadded inv0.9.0

type ValidateResourceConfigResponse struct {Diagnosticsdiag.Diagnostics}

ValidateResourceConfigResponse is the framework server response for theValidateResourceConfig RPC.

typeValidateSchemaRequestadded inv0.9.0

type ValidateSchemaRequest struct {// Config contains the entire configuration of the data source, provider, or resource.//// This configuration may contain unknown values if a user uses// interpolation or other functionality that would prevent Terraform// from knowing the value at request time.Configtfsdk.Config// ClientCapabilities defines optionally supported protocol features for// schema validation RPCs, such as forward-compatible Terraform// behavior changes.ClientCapabilitiesvalidator.ValidateSchemaClientCapabilities}

ValidateSchemaRequest repesents a request for validating a Schema.

typeValidateSchemaResponseadded inv0.9.0

type ValidateSchemaResponse struct {// Diagnostics report errors or warnings related to validating the schema.// An empty slice indicates success, with no warnings or errors generated.Diagnosticsdiag.Diagnostics}

ValidateSchemaResponse represents a response to aValidateSchemaRequest.

Source Files

View all Source files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f orF : Jump to
y orY : Canonical URL
go.dev uses cookies from Google to deliver and enhance the quality of its services and to analyze traffic.Learn more.

[8]ページ先頭

©2009-2025 Movatter.jp