raftsnapshotagentconfig

package
v13.5.0 Latest Latest
Warning

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

Go to latest
Published: Nov 20, 2024 License: MPL-2.0 Imports: 7 Imported by: 0

README

vault_raft_snapshot_agent_config

Refer to the Terraform Registry for docs: vault_raft_snapshot_agent_config.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewRaftSnapshotAgentConfig_Override

func NewRaftSnapshotAgentConfig_Override(r RaftSnapshotAgentConfig, scope constructs.Construct, id *string, config *RaftSnapshotAgentConfigConfig)

Create a new {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config vault_raft_snapshot_agent_config} Resource.

func RaftSnapshotAgentConfig_GenerateConfigForImport

func RaftSnapshotAgentConfig_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource

Generates CDKTF code for importing a RaftSnapshotAgentConfig resource upon running "cdktf plan <stack-name>".

func RaftSnapshotAgentConfig_IsConstruct

func RaftSnapshotAgentConfig_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.

Returns: true if `x` is an object created from a class which extends `Construct`.

func RaftSnapshotAgentConfig_IsTerraformElement

func RaftSnapshotAgentConfig_IsTerraformElement(x interface{}) *bool

Experimental.

func RaftSnapshotAgentConfig_IsTerraformResource

func RaftSnapshotAgentConfig_IsTerraformResource(x interface{}) *bool

Experimental.

func RaftSnapshotAgentConfig_TfResourceType

func RaftSnapshotAgentConfig_TfResourceType() *string

Types

type RaftSnapshotAgentConfig

type RaftSnapshotAgentConfig interface {
	cdktf.TerraformResource
	AwsAccessKeyId() *string
	SetAwsAccessKeyId(val *string)
	AwsAccessKeyIdInput() *string
	AwsS3Bucket() *string
	SetAwsS3Bucket(val *string)
	AwsS3BucketInput() *string
	AwsS3DisableTls() interface{}
	SetAwsS3DisableTls(val interface{})
	AwsS3DisableTlsInput() interface{}
	AwsS3EnableKms() interface{}
	SetAwsS3EnableKms(val interface{})
	AwsS3EnableKmsInput() interface{}
	AwsS3Endpoint() *string
	SetAwsS3Endpoint(val *string)
	AwsS3EndpointInput() *string
	AwsS3ForcePathStyle() interface{}
	SetAwsS3ForcePathStyle(val interface{})
	AwsS3ForcePathStyleInput() interface{}
	AwsS3KmsKey() *string
	SetAwsS3KmsKey(val *string)
	AwsS3KmsKeyInput() *string
	AwsS3Region() *string
	SetAwsS3Region(val *string)
	AwsS3RegionInput() *string
	AwsS3ServerSideEncryption() interface{}
	SetAwsS3ServerSideEncryption(val interface{})
	AwsS3ServerSideEncryptionInput() interface{}
	AwsSecretAccessKey() *string
	SetAwsSecretAccessKey(val *string)
	AwsSecretAccessKeyInput() *string
	AwsSessionToken() *string
	SetAwsSessionToken(val *string)
	AwsSessionTokenInput() *string
	AzureAccountKey() *string
	SetAzureAccountKey(val *string)
	AzureAccountKeyInput() *string
	AzureAccountName() *string
	SetAzureAccountName(val *string)
	AzureAccountNameInput() *string
	AzureBlobEnvironment() *string
	SetAzureBlobEnvironment(val *string)
	AzureBlobEnvironmentInput() *string
	AzureContainerName() *string
	SetAzureContainerName(val *string)
	AzureContainerNameInput() *string
	AzureEndpoint() *string
	SetAzureEndpoint(val *string)
	AzureEndpointInput() *string
	// Experimental.
	CdktfStack() cdktf.TerraformStack
	// Experimental.
	Connection() interface{}
	// Experimental.
	SetConnection(val interface{})
	// Experimental.
	ConstructNodeMetadata() *map[string]interface{}
	// Experimental.
	Count() interface{}
	// Experimental.
	SetCount(val interface{})
	// Experimental.
	DependsOn() *[]*string
	// Experimental.
	SetDependsOn(val *[]*string)
	FilePrefix() *string
	SetFilePrefix(val *string)
	FilePrefixInput() *string
	// Experimental.
	ForEach() cdktf.ITerraformIterator
	// Experimental.
	SetForEach(val cdktf.ITerraformIterator)
	// Experimental.
	Fqn() *string
	// Experimental.
	FriendlyUniqueId() *string
	GoogleDisableTls() interface{}
	SetGoogleDisableTls(val interface{})
	GoogleDisableTlsInput() interface{}
	GoogleEndpoint() *string
	SetGoogleEndpoint(val *string)
	GoogleEndpointInput() *string
	GoogleGcsBucket() *string
	SetGoogleGcsBucket(val *string)
	GoogleGcsBucketInput() *string
	GoogleServiceAccountKey() *string
	SetGoogleServiceAccountKey(val *string)
	GoogleServiceAccountKeyInput() *string
	Id() *string
	SetId(val *string)
	IdInput() *string
	IntervalSeconds() *float64
	SetIntervalSeconds(val *float64)
	IntervalSecondsInput() *float64
	// Experimental.
	Lifecycle() *cdktf.TerraformResourceLifecycle
	// Experimental.
	SetLifecycle(val *cdktf.TerraformResourceLifecycle)
	LocalMaxSpace() *float64
	SetLocalMaxSpace(val *float64)
	LocalMaxSpaceInput() *float64
	Name() *string
	SetName(val *string)
	NameInput() *string
	Namespace() *string
	SetNamespace(val *string)
	NamespaceInput() *string
	// The tree node.
	Node() constructs.Node
	PathPrefix() *string
	SetPathPrefix(val *string)
	PathPrefixInput() *string
	// Experimental.
	Provider() cdktf.TerraformProvider
	// Experimental.
	SetProvider(val cdktf.TerraformProvider)
	// Experimental.
	Provisioners() *[]interface{}
	// Experimental.
	SetProvisioners(val *[]interface{})
	// Experimental.
	RawOverrides() interface{}
	Retain() *float64
	SetRetain(val *float64)
	RetainInput() *float64
	StorageType() *string
	SetStorageType(val *string)
	StorageTypeInput() *string
	// Experimental.
	TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
	// Experimental.
	TerraformMetaArguments() *map[string]interface{}
	// Experimental.
	TerraformResourceType() *string
	// Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move.
	// Experimental.
	AddMoveTarget(moveTarget *string)
	// Experimental.
	AddOverride(path *string, value interface{})
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	HasResourceMove() interface{}
	// Experimental.
	ImportFrom(id *string, provider cdktf.TerraformProvider)
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Move the resource corresponding to "id" to this resource.
	//
	// Note that the resource being moved from must be marked as moved using it's instance function.
	// Experimental.
	MoveFromId(id *string)
	// Moves this resource to the target resource given by moveTarget.
	// Experimental.
	MoveTo(moveTarget *string, index interface{})
	// Moves this resource to the resource corresponding to "id".
	// Experimental.
	MoveToId(id *string)
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	ResetAwsAccessKeyId()
	ResetAwsS3Bucket()
	ResetAwsS3DisableTls()
	ResetAwsS3EnableKms()
	ResetAwsS3Endpoint()
	ResetAwsS3ForcePathStyle()
	ResetAwsS3KmsKey()
	ResetAwsS3Region()
	ResetAwsS3ServerSideEncryption()
	ResetAwsSecretAccessKey()
	ResetAwsSessionToken()
	ResetAzureAccountKey()
	ResetAzureAccountName()
	ResetAzureBlobEnvironment()
	ResetAzureContainerName()
	ResetAzureEndpoint()
	ResetFilePrefix()
	ResetGoogleDisableTls()
	ResetGoogleEndpoint()
	ResetGoogleGcsBucket()
	ResetGoogleServiceAccountKey()
	ResetId()
	ResetLocalMaxSpace()
	ResetNamespace()
	// Resets a previously passed logical Id to use the auto-generated logical id again.
	// Experimental.
	ResetOverrideLogicalId()
	ResetRetain()
	SynthesizeAttributes() *map[string]interface{}
	SynthesizeHclAttributes() *map[string]interface{}
	// Experimental.
	ToHclTerraform() interface{}
	// Experimental.
	ToMetadata() interface{}
	// Returns a string representation of this construct.
	ToString() *string
	// Adds this resource to the terraform JSON output.
	// Experimental.
	ToTerraform() interface{}
}

Represents a {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config vault_raft_snapshot_agent_config}.

func NewRaftSnapshotAgentConfig

func NewRaftSnapshotAgentConfig(scope constructs.Construct, id *string, config *RaftSnapshotAgentConfigConfig) RaftSnapshotAgentConfig

Create a new {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config vault_raft_snapshot_agent_config} Resource.

type RaftSnapshotAgentConfigConfig

type RaftSnapshotAgentConfigConfig struct {
	// Experimental.
	Connection interface{} `field:"optional" json:"connection" yaml:"connection"`
	// Experimental.
	Count interface{} `field:"optional" json:"count" yaml:"count"`
	// Experimental.
	DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"`
	// Experimental.
	ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"`
	// Experimental.
	Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"`
	// Experimental.
	Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"`
	// Experimental.
	Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"`
	// Number of seconds between snapshots.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#interval_seconds RaftSnapshotAgentConfig#interval_seconds}
	IntervalSeconds *float64 `field:"required" json:"intervalSeconds" yaml:"intervalSeconds"`
	// Name of the snapshot agent configuration.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#name RaftSnapshotAgentConfig#name}
	Name *string `field:"required" json:"name" yaml:"name"`
	// The directory or bucket prefix to to use.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#path_prefix RaftSnapshotAgentConfig#path_prefix}
	PathPrefix *string `field:"required" json:"pathPrefix" yaml:"pathPrefix"`
	// What storage service to send snapshots to. One of "local", "azure-blob", "aws-s3", or "google-gcs".
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#storage_type RaftSnapshotAgentConfig#storage_type}
	StorageType *string `field:"required" json:"storageType" yaml:"storageType"`
	// AWS access key ID.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#aws_access_key_id RaftSnapshotAgentConfig#aws_access_key_id}
	AwsAccessKeyId *string `field:"optional" json:"awsAccessKeyId" yaml:"awsAccessKeyId"`
	// S3 bucket to write snapshots to.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#aws_s3_bucket RaftSnapshotAgentConfig#aws_s3_bucket}
	AwsS3Bucket *string `field:"optional" json:"awsS3Bucket" yaml:"awsS3Bucket"`
	// Disable TLS for the S3 endpoint. This should only be used for testing purposes.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#aws_s3_disable_tls RaftSnapshotAgentConfig#aws_s3_disable_tls}
	AwsS3DisableTls interface{} `field:"optional" json:"awsS3DisableTls" yaml:"awsS3DisableTls"`
	// Use KMS to encrypt bucket contents.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#aws_s3_enable_kms RaftSnapshotAgentConfig#aws_s3_enable_kms}
	AwsS3EnableKms interface{} `field:"optional" json:"awsS3EnableKms" yaml:"awsS3EnableKms"`
	// AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#aws_s3_endpoint RaftSnapshotAgentConfig#aws_s3_endpoint}
	AwsS3Endpoint *string `field:"optional" json:"awsS3Endpoint" yaml:"awsS3Endpoint"`
	// Use the endpoint/bucket URL style instead of bucket.endpoint.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#aws_s3_force_path_style RaftSnapshotAgentConfig#aws_s3_force_path_style}
	AwsS3ForcePathStyle interface{} `field:"optional" json:"awsS3ForcePathStyle" yaml:"awsS3ForcePathStyle"`
	// Use named KMS key, when aws_s3_enable_kms=true.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#aws_s3_kms_key RaftSnapshotAgentConfig#aws_s3_kms_key}
	AwsS3KmsKey *string `field:"optional" json:"awsS3KmsKey" yaml:"awsS3KmsKey"`
	// AWS region bucket is in.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#aws_s3_region RaftSnapshotAgentConfig#aws_s3_region}
	AwsS3Region *string `field:"optional" json:"awsS3Region" yaml:"awsS3Region"`
	// Use AES256 to encrypt bucket contents.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#aws_s3_server_side_encryption RaftSnapshotAgentConfig#aws_s3_server_side_encryption}
	AwsS3ServerSideEncryption interface{} `field:"optional" json:"awsS3ServerSideEncryption" yaml:"awsS3ServerSideEncryption"`
	// AWS secret access key.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#aws_secret_access_key RaftSnapshotAgentConfig#aws_secret_access_key}
	AwsSecretAccessKey *string `field:"optional" json:"awsSecretAccessKey" yaml:"awsSecretAccessKey"`
	// AWS session token.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#aws_session_token RaftSnapshotAgentConfig#aws_session_token}
	AwsSessionToken *string `field:"optional" json:"awsSessionToken" yaml:"awsSessionToken"`
	// Azure account key.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#azure_account_key RaftSnapshotAgentConfig#azure_account_key}
	AzureAccountKey *string `field:"optional" json:"azureAccountKey" yaml:"azureAccountKey"`
	// Azure account name.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#azure_account_name RaftSnapshotAgentConfig#azure_account_name}
	AzureAccountName *string `field:"optional" json:"azureAccountName" yaml:"azureAccountName"`
	// Azure blob environment.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#azure_blob_environment RaftSnapshotAgentConfig#azure_blob_environment}
	AzureBlobEnvironment *string `field:"optional" json:"azureBlobEnvironment" yaml:"azureBlobEnvironment"`
	// Azure container name to write snapshots to.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#azure_container_name RaftSnapshotAgentConfig#azure_container_name}
	AzureContainerName *string `field:"optional" json:"azureContainerName" yaml:"azureContainerName"`
	// Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#azure_endpoint RaftSnapshotAgentConfig#azure_endpoint}
	AzureEndpoint *string `field:"optional" json:"azureEndpoint" yaml:"azureEndpoint"`
	// The file or object name of snapshot files will start with this string.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#file_prefix RaftSnapshotAgentConfig#file_prefix}
	FilePrefix *string `field:"optional" json:"filePrefix" yaml:"filePrefix"`
	// Disable TLS for the GCS endpoint.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#google_disable_tls RaftSnapshotAgentConfig#google_disable_tls}
	GoogleDisableTls interface{} `field:"optional" json:"googleDisableTls" yaml:"googleDisableTls"`
	// GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#google_endpoint RaftSnapshotAgentConfig#google_endpoint}
	GoogleEndpoint *string `field:"optional" json:"googleEndpoint" yaml:"googleEndpoint"`
	// GCS bucket to write snapshots to.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#google_gcs_bucket RaftSnapshotAgentConfig#google_gcs_bucket}
	GoogleGcsBucket *string `field:"optional" json:"googleGcsBucket" yaml:"googleGcsBucket"`
	// Google service account key in JSON format.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#google_service_account_key RaftSnapshotAgentConfig#google_service_account_key}
	GoogleServiceAccountKey *string `field:"optional" json:"googleServiceAccountKey" yaml:"googleServiceAccountKey"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#id RaftSnapshotAgentConfig#id}.
	//
	// Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
	// If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// The maximum space, in bytes, to use for snapshots.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#local_max_space RaftSnapshotAgentConfig#local_max_space}
	LocalMaxSpace *float64 `field:"optional" json:"localMaxSpace" yaml:"localMaxSpace"`
	// Target namespace. (requires Enterprise).
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#namespace RaftSnapshotAgentConfig#namespace}
	Namespace *string `field:"optional" json:"namespace" yaml:"namespace"`
	// How many snapshots are to be kept.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/vault/4.5.0/docs/resources/raft_snapshot_agent_config#retain RaftSnapshotAgentConfig#retain}
	Retain *float64 `field:"optional" json:"retain" yaml:"retain"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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