Documentation ¶
Index ¶
- func NewRaftSnapshotAgentConfig_Override(r RaftSnapshotAgentConfig, scope constructs.Construct, id *string, ...)
- func RaftSnapshotAgentConfig_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, ...) cdktf.ImportableResource
- func RaftSnapshotAgentConfig_IsConstruct(x interface{}) *bool
- func RaftSnapshotAgentConfig_IsTerraformElement(x interface{}) *bool
- func RaftSnapshotAgentConfig_IsTerraformResource(x interface{}) *bool
- func RaftSnapshotAgentConfig_TfResourceType() *string
- type RaftSnapshotAgentConfig
- type RaftSnapshotAgentConfigConfig
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"` }