A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://pkg.go.dev/github.com/hashicorp/terraform-plugin-framework/ephemeral below:

ephemeral package - github.com/hashicorp/terraform-plugin-framework/ephemeral - Go Packages

Package ephemeral contains all interfaces, request types, and response types for an ephemeral resource implementation.

In Terraform, an ephemeral resource is a concept which enables provider developers to offer practitioners ephemeral values, which will not be stored in any artifact produced by Terraform (plan/state). Ephemeral resources can optionally implement renewal logic via the (EphemeralResource).Renew method and cleanup logic via the (EphemeralResource).Close method.

Ephemeral resources are not saved into the Terraform plan or state and can only be referenced in other ephemeral values, such as provider configuration attributes. Ephemeral resources are defined by a type/name, such as "examplecloud_thing", a schema representing the structure and data types of configuration, and lifecycle logic.

The main starting point for implementations in this package is the EphemeralResource type which represents an instance of an ephemeral resource that has its own configuration and lifecycle logic. The ephemeral.EphemeralResource implementations are referenced by the [provider.ProviderWithEphemeralResources] type EphemeralResources method, which enables the ephemeral resource practitioner usage.

This section is empty.

This section is empty.

This section is empty.

CloseRequest represents a request for the provider to close an ephemeral resource. An instance of this request struct is supplied as an argument to the ephemeral resource's Close function.

CloseResponse represents a response to a CloseRequest. An instance of this response struct is supplied as an argument to the ephemeral resource's Close function, in which the provider should set values on the CloseResponse as appropriate.

ConfigValidator describes reusable EphemeralResource configuration validation functionality.

type ConfigureRequest struct {
	
	
	
	
	
	
	
	
	ProviderData any
}

ConfigureRequest represents a request for the provider to configure an ephemeral resource, i.e., set provider-level data or clients. An instance of this request struct is supplied as an argument to the EphemeralResource type Configure method.

ConfigureResponse represents a response to a ConfigureRequest. An instance of this response struct is supplied as an argument to the EphemeralResource type Configure method.

Deferred is used to indicate to Terraform that a change needs to be deferred for a reason.

NOTE: This functionality is related to deferred action support, which is currently experimental and is subject to change or break without warning. It is not protected by version compatibility guarantees.

type DeferredReason int32

DeferredReason represents different reasons for deferring a change.

NOTE: This functionality is related to deferred action support, which is currently experimental and is subject to change or break without warning. It is not protected by version compatibility guarantees.

EphemeralResource represents an instance of an ephemeral resource type. This is the core interface that all ephemeral resources must implement.

Ephemeral resources can optionally implement these additional concepts:

EphemeralResourceWithClose is an interface type that extends EphemeralResource to include a method which the framework will call when Terraform determines that the ephemeral resource can be safely cleaned up.

EphemeralResourceWithConfigValidators is an interface type that extends EphemeralResource to include declarative validations.

Declaring validation using this methodology simplifies implementation of reusable functionality. These also include descriptions, which can be used for automating documentation.

Validation will include ConfigValidators and ValidateConfig, if both are implemented, in addition to any Attribute or Type validation.

EphemeralResourceWithConfigure is an interface type that extends EphemeralResource to include a method which the framework will automatically call so provider developers have the opportunity to setup any necessary provider-level data or clients in the EphemeralResource type.

EphemeralResourceWithRenew is an interface type that extends EphemeralResource to include a method which the framework will call when Terraform detects that the provider-defined returned RenewAt time for an ephemeral resource has passed. This RenewAt response field can be set in the OpenResponse and RenewResponse.

EphemeralResourceWithValidateConfig is an interface type that extends EphemeralResource to include imperative validation.

Declaring validation using this methodology simplifies one-off functionality that typically applies to a single ephemeral resource. Any documentation of this functionality must be manually added into schema descriptions.

Validation will include ConfigValidators and ValidateConfig, if both are implemented, in addition to any Attribute or Type validation.

type MetadataRequest struct {
	
	
	
	
	ProviderTypeName string
}

MetadataRequest represents a request for the EphemeralResource to return metadata, such as its type name. An instance of this request struct is supplied as an argument to the EphemeralResource type Metadata method.

type MetadataResponse struct {
	
	
	TypeName string
}

MetadataResponse represents a response to a MetadataRequest. An instance of this response struct is supplied as an argument to the EphemeralResource type Metadata method.

type OpenClientCapabilities struct {
	
	
	
	
	
	DeferralAllowed bool
}

OpenClientCapabilities allows Terraform to publish information regarding optionally supported protocol features for the OpenEphemeralResource RPC, such as forward-compatible Terraform behavior changes.

OpenRequest represents a request for the provider to open an ephemeral resource. An instance of this request struct is supplied as an argument to the ephemeral resource's Open function.

OpenResponse represents a response to a OpenRequest. An instance of this response struct is supplied as an argument to the ephemeral resource's Open function, in which the provider should set values on the OpenResponse as appropriate.

RenewRequest represents a request for the provider to renew an ephemeral resource. An instance of this request struct is supplied as an argument to the ephemeral resource's Renew function.

RenewResponse represents a response to a RenewRequest. An instance of this response struct is supplied as an argument to the ephemeral resource's Renew function, in which the provider should set values on the RenewResponse as appropriate.

type SchemaRequest struct{}

SchemaRequest represents a request for the EphemeralResource to return its schema. An instance of this request struct is supplied as an argument to the EphemeralResource type Schema method.

SchemaResponse represents a response to a SchemaRequest. An instance of this response struct is supplied as an argument to the EphemeralResource type Schema method.

type ValidateConfigRequest struct {
	
	
	
	
	
	Config tfsdk.Config
}

ValidateConfigRequest represents a request to validate the configuration of an ephemeral resource. An instance of this request struct is supplied as an argument to the EphemeralResource ValidateConfig receiver method or automatically passed through to each ConfigValidator.

ValidateConfigResponse represents a response to a ValidateConfigRequest. An instance of this response struct is supplied as an argument to the EphemeralResource ValidateConfig receiver method or automatically passed through to each ConfigValidator.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4