1. Packages
  2. HashiCorp Vault
  3. API Docs
  4. RaftSnapshotAgentConfig
HashiCorp Vault v6.1.0 published on Thursday, Apr 4, 2024 by Pulumi

vault.RaftSnapshotAgentConfig

Explore with Pulumi AI

vault logo
HashiCorp Vault v6.1.0 published on Thursday, Apr 4, 2024 by Pulumi

    Example Usage

    Local Storage

    import * as pulumi from "@pulumi/pulumi";
    import * as vault from "@pulumi/vault";
    
    const localBackups = new vault.RaftSnapshotAgentConfig("localBackups", {
        intervalSeconds: 86400,
        localMaxSpace: 10000000,
        pathPrefix: "/opt/vault/snapshots/",
        retain: 7,
        storageType: "local",
    });
    
    import pulumi
    import pulumi_vault as vault
    
    local_backups = vault.RaftSnapshotAgentConfig("localBackups",
        interval_seconds=86400,
        local_max_space=10000000,
        path_prefix="/opt/vault/snapshots/",
        retain=7,
        storage_type="local")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-vault/sdk/v6/go/vault"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := vault.NewRaftSnapshotAgentConfig(ctx, "localBackups", &vault.RaftSnapshotAgentConfigArgs{
    			IntervalSeconds: pulumi.Int(86400),
    			LocalMaxSpace:   pulumi.Int(10000000),
    			PathPrefix:      pulumi.String("/opt/vault/snapshots/"),
    			Retain:          pulumi.Int(7),
    			StorageType:     pulumi.String("local"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Vault = Pulumi.Vault;
    
    return await Deployment.RunAsync(() => 
    {
        var localBackups = new Vault.RaftSnapshotAgentConfig("localBackups", new()
        {
            IntervalSeconds = 86400,
            LocalMaxSpace = 10000000,
            PathPrefix = "/opt/vault/snapshots/",
            Retain = 7,
            StorageType = "local",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.vault.RaftSnapshotAgentConfig;
    import com.pulumi.vault.RaftSnapshotAgentConfigArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var localBackups = new RaftSnapshotAgentConfig("localBackups", RaftSnapshotAgentConfigArgs.builder()        
                .intervalSeconds(86400)
                .localMaxSpace(10000000)
                .pathPrefix("/opt/vault/snapshots/")
                .retain(7)
                .storageType("local")
                .build());
    
        }
    }
    
    resources:
      localBackups:
        type: vault:RaftSnapshotAgentConfig
        properties:
          intervalSeconds: 86400
          # 24h
          #     // Storage Type Configuration
          localMaxSpace: 1e+07
          pathPrefix: /opt/vault/snapshots/
          retain: 7
          storageType: local
    

    AWS S3

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    import * as vault from "@pulumi/vault";
    
    const config = new pulumi.Config();
    const awsAccessKeyId = config.requireObject("awsAccessKeyId");
    const awsSecretAccessKey = config.requireObject("awsSecretAccessKey");
    const current = aws.getRegion({});
    const s3Backups = new vault.RaftSnapshotAgentConfig("s3Backups", {
        intervalSeconds: 86400,
        retain: 7,
        pathPrefix: "/path/in/bucket",
        storageType: "aws-s3",
        awsS3Bucket: "my-bucket",
        awsS3Region: current.then(current => current.name),
        awsAccessKeyId: awsAccessKeyId,
        awsSecretAccessKey: awsSecretAccessKey,
        awsS3EnableKms: true,
    });
    
    import pulumi
    import pulumi_aws as aws
    import pulumi_vault as vault
    
    config = pulumi.Config()
    aws_access_key_id = config.require_object("awsAccessKeyId")
    aws_secret_access_key = config.require_object("awsSecretAccessKey")
    current = aws.get_region()
    s3_backups = vault.RaftSnapshotAgentConfig("s3Backups",
        interval_seconds=86400,
        retain=7,
        path_prefix="/path/in/bucket",
        storage_type="aws-s3",
        aws_s3_bucket="my-bucket",
        aws_s3_region=current.name,
        aws_access_key_id=aws_access_key_id,
        aws_secret_access_key=aws_secret_access_key,
        aws_s3_enable_kms=True)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws"
    	"github.com/pulumi/pulumi-vault/sdk/v6/go/vault"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		awsAccessKeyId := cfg.RequireObject("awsAccessKeyId")
    		awsSecretAccessKey := cfg.RequireObject("awsSecretAccessKey")
    		current, err := aws.GetRegion(ctx, nil, nil)
    		if err != nil {
    			return err
    		}
    		_, err = vault.NewRaftSnapshotAgentConfig(ctx, "s3Backups", &vault.RaftSnapshotAgentConfigArgs{
    			IntervalSeconds:    pulumi.Int(86400),
    			Retain:             pulumi.Int(7),
    			PathPrefix:         pulumi.String("/path/in/bucket"),
    			StorageType:        pulumi.String("aws-s3"),
    			AwsS3Bucket:        pulumi.String("my-bucket"),
    			AwsS3Region:        pulumi.String(current.Name),
    			AwsAccessKeyId:     pulumi.Any(awsAccessKeyId),
    			AwsSecretAccessKey: pulumi.Any(awsSecretAccessKey),
    			AwsS3EnableKms:     pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    using Vault = Pulumi.Vault;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var awsAccessKeyId = config.RequireObject<dynamic>("awsAccessKeyId");
        var awsSecretAccessKey = config.RequireObject<dynamic>("awsSecretAccessKey");
        var current = Aws.GetRegion.Invoke();
    
        var s3Backups = new Vault.RaftSnapshotAgentConfig("s3Backups", new()
        {
            IntervalSeconds = 86400,
            Retain = 7,
            PathPrefix = "/path/in/bucket",
            StorageType = "aws-s3",
            AwsS3Bucket = "my-bucket",
            AwsS3Region = current.Apply(getRegionResult => getRegionResult.Name),
            AwsAccessKeyId = awsAccessKeyId,
            AwsSecretAccessKey = awsSecretAccessKey,
            AwsS3EnableKms = true,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.AwsFunctions;
    import com.pulumi.aws.inputs.GetRegionArgs;
    import com.pulumi.vault.RaftSnapshotAgentConfig;
    import com.pulumi.vault.RaftSnapshotAgentConfigArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var config = ctx.config();
            final var awsAccessKeyId = config.get("awsAccessKeyId");
            final var awsSecretAccessKey = config.get("awsSecretAccessKey");
            final var current = AwsFunctions.getRegion();
    
            var s3Backups = new RaftSnapshotAgentConfig("s3Backups", RaftSnapshotAgentConfigArgs.builder()        
                .intervalSeconds(86400)
                .retain(7)
                .pathPrefix("/path/in/bucket")
                .storageType("aws-s3")
                .awsS3Bucket("my-bucket")
                .awsS3Region(current.applyValue(getRegionResult -> getRegionResult.name()))
                .awsAccessKeyId(awsAccessKeyId)
                .awsSecretAccessKey(awsSecretAccessKey)
                .awsS3EnableKms(true)
                .build());
    
        }
    }
    
    configuration:
      awsAccessKeyId:
        type: dynamic
      awsSecretAccessKey:
        type: dynamic
    resources:
      s3Backups:
        type: vault:RaftSnapshotAgentConfig
        properties:
          intervalSeconds: 86400
          # 24h
          retain: 7
          pathPrefix: /path/in/bucket
          storageType: aws-s3
          # Storage Type Configuration
          awsS3Bucket: my-bucket
          awsS3Region: ${current.name}
          awsAccessKeyId: ${awsAccessKeyId}
          awsSecretAccessKey: ${awsSecretAccessKey}
          awsS3EnableKms: true
    variables:
      current:
        fn::invoke:
          Function: aws:getRegion
          Arguments: {}
    

    Azure BLOB

    import * as pulumi from "@pulumi/pulumi";
    import * as vault from "@pulumi/vault";
    
    const config = new pulumi.Config();
    const azureAccountName = config.requireObject("azureAccountName");
    const azureAccountKey = config.requireObject("azureAccountKey");
    const azureBackups = new vault.RaftSnapshotAgentConfig("azureBackups", {
        intervalSeconds: 86400,
        retain: 7,
        pathPrefix: "/",
        storageType: "azure-blob",
        azureContainerName: "vault-blob",
        azureAccountName: azureAccountName,
        azureAccountKey: azureAccountKey,
    });
    
    import pulumi
    import pulumi_vault as vault
    
    config = pulumi.Config()
    azure_account_name = config.require_object("azureAccountName")
    azure_account_key = config.require_object("azureAccountKey")
    azure_backups = vault.RaftSnapshotAgentConfig("azureBackups",
        interval_seconds=86400,
        retain=7,
        path_prefix="/",
        storage_type="azure-blob",
        azure_container_name="vault-blob",
        azure_account_name=azure_account_name,
        azure_account_key=azure_account_key)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-vault/sdk/v6/go/vault"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		azureAccountName := cfg.RequireObject("azureAccountName")
    		azureAccountKey := cfg.RequireObject("azureAccountKey")
    		_, err := vault.NewRaftSnapshotAgentConfig(ctx, "azureBackups", &vault.RaftSnapshotAgentConfigArgs{
    			IntervalSeconds:    pulumi.Int(86400),
    			Retain:             pulumi.Int(7),
    			PathPrefix:         pulumi.String("/"),
    			StorageType:        pulumi.String("azure-blob"),
    			AzureContainerName: pulumi.String("vault-blob"),
    			AzureAccountName:   pulumi.Any(azureAccountName),
    			AzureAccountKey:    pulumi.Any(azureAccountKey),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Vault = Pulumi.Vault;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var azureAccountName = config.RequireObject<dynamic>("azureAccountName");
        var azureAccountKey = config.RequireObject<dynamic>("azureAccountKey");
        var azureBackups = new Vault.RaftSnapshotAgentConfig("azureBackups", new()
        {
            IntervalSeconds = 86400,
            Retain = 7,
            PathPrefix = "/",
            StorageType = "azure-blob",
            AzureContainerName = "vault-blob",
            AzureAccountName = azureAccountName,
            AzureAccountKey = azureAccountKey,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.vault.RaftSnapshotAgentConfig;
    import com.pulumi.vault.RaftSnapshotAgentConfigArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var config = ctx.config();
            final var azureAccountName = config.get("azureAccountName");
            final var azureAccountKey = config.get("azureAccountKey");
            var azureBackups = new RaftSnapshotAgentConfig("azureBackups", RaftSnapshotAgentConfigArgs.builder()        
                .intervalSeconds(86400)
                .retain(7)
                .pathPrefix("/")
                .storageType("azure-blob")
                .azureContainerName("vault-blob")
                .azureAccountName(azureAccountName)
                .azureAccountKey(azureAccountKey)
                .build());
    
        }
    }
    
    configuration:
      azureAccountName:
        type: dynamic
      azureAccountKey:
        type: dynamic
    resources:
      azureBackups:
        type: vault:RaftSnapshotAgentConfig
        properties:
          intervalSeconds: 86400
          # 24h
          retain: 7
          pathPrefix: /
          storageType: azure-blob
          # Storage Type Configuration
          azureContainerName: vault-blob
          azureAccountName: ${azureAccountName}
          azureAccountKey: ${azureAccountKey}
    

    Create RaftSnapshotAgentConfig Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new RaftSnapshotAgentConfig(name: string, args: RaftSnapshotAgentConfigArgs, opts?: CustomResourceOptions);
    @overload
    def RaftSnapshotAgentConfig(resource_name: str,
                                args: RaftSnapshotAgentConfigArgs,
                                opts: Optional[ResourceOptions] = None)
    
    @overload
    def RaftSnapshotAgentConfig(resource_name: str,
                                opts: Optional[ResourceOptions] = None,
                                interval_seconds: Optional[int] = None,
                                storage_type: Optional[str] = None,
                                path_prefix: Optional[str] = None,
                                aws_s3_region: Optional[str] = None,
                                file_prefix: Optional[str] = None,
                                aws_s3_force_path_style: Optional[bool] = None,
                                aws_s3_kms_key: Optional[str] = None,
                                aws_access_key_id: Optional[str] = None,
                                aws_s3_server_side_encryption: Optional[bool] = None,
                                aws_secret_access_key: Optional[str] = None,
                                aws_session_token: Optional[str] = None,
                                azure_account_key: Optional[str] = None,
                                azure_account_name: Optional[str] = None,
                                azure_blob_environment: Optional[str] = None,
                                azure_container_name: Optional[str] = None,
                                azure_endpoint: Optional[str] = None,
                                aws_s3_endpoint: Optional[str] = None,
                                google_disable_tls: Optional[bool] = None,
                                google_endpoint: Optional[str] = None,
                                google_gcs_bucket: Optional[str] = None,
                                google_service_account_key: Optional[str] = None,
                                aws_s3_enable_kms: Optional[bool] = None,
                                local_max_space: Optional[int] = None,
                                name: Optional[str] = None,
                                namespace: Optional[str] = None,
                                aws_s3_disable_tls: Optional[bool] = None,
                                retain: Optional[int] = None,
                                aws_s3_bucket: Optional[str] = None)
    func NewRaftSnapshotAgentConfig(ctx *Context, name string, args RaftSnapshotAgentConfigArgs, opts ...ResourceOption) (*RaftSnapshotAgentConfig, error)
    public RaftSnapshotAgentConfig(string name, RaftSnapshotAgentConfigArgs args, CustomResourceOptions? opts = null)
    public RaftSnapshotAgentConfig(String name, RaftSnapshotAgentConfigArgs args)
    public RaftSnapshotAgentConfig(String name, RaftSnapshotAgentConfigArgs args, CustomResourceOptions options)
    
    type: vault:RaftSnapshotAgentConfig
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args RaftSnapshotAgentConfigArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args RaftSnapshotAgentConfigArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args RaftSnapshotAgentConfigArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args RaftSnapshotAgentConfigArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args RaftSnapshotAgentConfigArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    var raftSnapshotAgentConfigResource = new Vault.RaftSnapshotAgentConfig("raftSnapshotAgentConfigResource", new()
    {
        IntervalSeconds = 0,
        StorageType = "string",
        PathPrefix = "string",
        AwsS3Region = "string",
        FilePrefix = "string",
        AwsS3ForcePathStyle = false,
        AwsS3KmsKey = "string",
        AwsAccessKeyId = "string",
        AwsS3ServerSideEncryption = false,
        AwsSecretAccessKey = "string",
        AwsSessionToken = "string",
        AzureAccountKey = "string",
        AzureAccountName = "string",
        AzureBlobEnvironment = "string",
        AzureContainerName = "string",
        AzureEndpoint = "string",
        AwsS3Endpoint = "string",
        GoogleDisableTls = false,
        GoogleEndpoint = "string",
        GoogleGcsBucket = "string",
        GoogleServiceAccountKey = "string",
        AwsS3EnableKms = false,
        LocalMaxSpace = 0,
        Name = "string",
        Namespace = "string",
        AwsS3DisableTls = false,
        Retain = 0,
        AwsS3Bucket = "string",
    });
    
    example, err := vault.NewRaftSnapshotAgentConfig(ctx, "raftSnapshotAgentConfigResource", &vault.RaftSnapshotAgentConfigArgs{
    	IntervalSeconds:           pulumi.Int(0),
    	StorageType:               pulumi.String("string"),
    	PathPrefix:                pulumi.String("string"),
    	AwsS3Region:               pulumi.String("string"),
    	FilePrefix:                pulumi.String("string"),
    	AwsS3ForcePathStyle:       pulumi.Bool(false),
    	AwsS3KmsKey:               pulumi.String("string"),
    	AwsAccessKeyId:            pulumi.String("string"),
    	AwsS3ServerSideEncryption: pulumi.Bool(false),
    	AwsSecretAccessKey:        pulumi.String("string"),
    	AwsSessionToken:           pulumi.String("string"),
    	AzureAccountKey:           pulumi.String("string"),
    	AzureAccountName:          pulumi.String("string"),
    	AzureBlobEnvironment:      pulumi.String("string"),
    	AzureContainerName:        pulumi.String("string"),
    	AzureEndpoint:             pulumi.String("string"),
    	AwsS3Endpoint:             pulumi.String("string"),
    	GoogleDisableTls:          pulumi.Bool(false),
    	GoogleEndpoint:            pulumi.String("string"),
    	GoogleGcsBucket:           pulumi.String("string"),
    	GoogleServiceAccountKey:   pulumi.String("string"),
    	AwsS3EnableKms:            pulumi.Bool(false),
    	LocalMaxSpace:             pulumi.Int(0),
    	Name:                      pulumi.String("string"),
    	Namespace:                 pulumi.String("string"),
    	AwsS3DisableTls:           pulumi.Bool(false),
    	Retain:                    pulumi.Int(0),
    	AwsS3Bucket:               pulumi.String("string"),
    })
    
    var raftSnapshotAgentConfigResource = new RaftSnapshotAgentConfig("raftSnapshotAgentConfigResource", RaftSnapshotAgentConfigArgs.builder()        
        .intervalSeconds(0)
        .storageType("string")
        .pathPrefix("string")
        .awsS3Region("string")
        .filePrefix("string")
        .awsS3ForcePathStyle(false)
        .awsS3KmsKey("string")
        .awsAccessKeyId("string")
        .awsS3ServerSideEncryption(false)
        .awsSecretAccessKey("string")
        .awsSessionToken("string")
        .azureAccountKey("string")
        .azureAccountName("string")
        .azureBlobEnvironment("string")
        .azureContainerName("string")
        .azureEndpoint("string")
        .awsS3Endpoint("string")
        .googleDisableTls(false)
        .googleEndpoint("string")
        .googleGcsBucket("string")
        .googleServiceAccountKey("string")
        .awsS3EnableKms(false)
        .localMaxSpace(0)
        .name("string")
        .namespace("string")
        .awsS3DisableTls(false)
        .retain(0)
        .awsS3Bucket("string")
        .build());
    
    raft_snapshot_agent_config_resource = vault.RaftSnapshotAgentConfig("raftSnapshotAgentConfigResource",
        interval_seconds=0,
        storage_type="string",
        path_prefix="string",
        aws_s3_region="string",
        file_prefix="string",
        aws_s3_force_path_style=False,
        aws_s3_kms_key="string",
        aws_access_key_id="string",
        aws_s3_server_side_encryption=False,
        aws_secret_access_key="string",
        aws_session_token="string",
        azure_account_key="string",
        azure_account_name="string",
        azure_blob_environment="string",
        azure_container_name="string",
        azure_endpoint="string",
        aws_s3_endpoint="string",
        google_disable_tls=False,
        google_endpoint="string",
        google_gcs_bucket="string",
        google_service_account_key="string",
        aws_s3_enable_kms=False,
        local_max_space=0,
        name="string",
        namespace="string",
        aws_s3_disable_tls=False,
        retain=0,
        aws_s3_bucket="string")
    
    const raftSnapshotAgentConfigResource = new vault.RaftSnapshotAgentConfig("raftSnapshotAgentConfigResource", {
        intervalSeconds: 0,
        storageType: "string",
        pathPrefix: "string",
        awsS3Region: "string",
        filePrefix: "string",
        awsS3ForcePathStyle: false,
        awsS3KmsKey: "string",
        awsAccessKeyId: "string",
        awsS3ServerSideEncryption: false,
        awsSecretAccessKey: "string",
        awsSessionToken: "string",
        azureAccountKey: "string",
        azureAccountName: "string",
        azureBlobEnvironment: "string",
        azureContainerName: "string",
        azureEndpoint: "string",
        awsS3Endpoint: "string",
        googleDisableTls: false,
        googleEndpoint: "string",
        googleGcsBucket: "string",
        googleServiceAccountKey: "string",
        awsS3EnableKms: false,
        localMaxSpace: 0,
        name: "string",
        namespace: "string",
        awsS3DisableTls: false,
        retain: 0,
        awsS3Bucket: "string",
    });
    
    type: vault:RaftSnapshotAgentConfig
    properties:
        awsAccessKeyId: string
        awsS3Bucket: string
        awsS3DisableTls: false
        awsS3EnableKms: false
        awsS3Endpoint: string
        awsS3ForcePathStyle: false
        awsS3KmsKey: string
        awsS3Region: string
        awsS3ServerSideEncryption: false
        awsSecretAccessKey: string
        awsSessionToken: string
        azureAccountKey: string
        azureAccountName: string
        azureBlobEnvironment: string
        azureContainerName: string
        azureEndpoint: string
        filePrefix: string
        googleDisableTls: false
        googleEndpoint: string
        googleGcsBucket: string
        googleServiceAccountKey: string
        intervalSeconds: 0
        localMaxSpace: 0
        name: string
        namespace: string
        pathPrefix: string
        retain: 0
        storageType: string
    

    RaftSnapshotAgentConfig Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The RaftSnapshotAgentConfig resource accepts the following input properties:

    IntervalSeconds int
    <required> - Time (in seconds) between snapshots.
    PathPrefix string
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    StorageType string
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.
    AwsAccessKeyId string
    AWS access key ID.
    AwsS3Bucket string
    <required> - S3 bucket to write snapshots to.
    AwsS3DisableTls bool
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    AwsS3EnableKms bool
    Use KMS to encrypt bucket contents.
    AwsS3Endpoint string
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    AwsS3ForcePathStyle bool
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    AwsS3KmsKey string
    Use named KMS key, when aws_s3_enable_kms = true
    AwsS3Region string
    <required> - AWS region bucket is in.
    AwsS3ServerSideEncryption bool
    Use AES256 to encrypt bucket contents.
    AwsSecretAccessKey string
    AWS secret access key.
    AwsSessionToken string
    AWS session token.
    AzureAccountKey string
    Azure account key.
    AzureAccountName string
    Azure account name.
    AzureBlobEnvironment string
    Azure blob environment.
    AzureContainerName string
    <required> - Azure container name to write snapshots to.
    AzureEndpoint string
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    FilePrefix string
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    GoogleDisableTls bool
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    GoogleEndpoint string
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    GoogleGcsBucket string
    <required> - GCS bucket to write snapshots to.
    GoogleServiceAccountKey string
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    LocalMaxSpace int
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    Name string
    <required> – Name of the configuration to modify.
    Namespace string
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    Retain int
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.
    IntervalSeconds int
    <required> - Time (in seconds) between snapshots.
    PathPrefix string
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    StorageType string
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.
    AwsAccessKeyId string
    AWS access key ID.
    AwsS3Bucket string
    <required> - S3 bucket to write snapshots to.
    AwsS3DisableTls bool
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    AwsS3EnableKms bool
    Use KMS to encrypt bucket contents.
    AwsS3Endpoint string
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    AwsS3ForcePathStyle bool
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    AwsS3KmsKey string
    Use named KMS key, when aws_s3_enable_kms = true
    AwsS3Region string
    <required> - AWS region bucket is in.
    AwsS3ServerSideEncryption bool
    Use AES256 to encrypt bucket contents.
    AwsSecretAccessKey string
    AWS secret access key.
    AwsSessionToken string
    AWS session token.
    AzureAccountKey string
    Azure account key.
    AzureAccountName string
    Azure account name.
    AzureBlobEnvironment string
    Azure blob environment.
    AzureContainerName string
    <required> - Azure container name to write snapshots to.
    AzureEndpoint string
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    FilePrefix string
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    GoogleDisableTls bool
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    GoogleEndpoint string
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    GoogleGcsBucket string
    <required> - GCS bucket to write snapshots to.
    GoogleServiceAccountKey string
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    LocalMaxSpace int
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    Name string
    <required> – Name of the configuration to modify.
    Namespace string
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    Retain int
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.
    intervalSeconds Integer
    <required> - Time (in seconds) between snapshots.
    pathPrefix String
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    storageType String
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.
    awsAccessKeyId String
    AWS access key ID.
    awsS3Bucket String
    <required> - S3 bucket to write snapshots to.
    awsS3DisableTls Boolean
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    awsS3EnableKms Boolean
    Use KMS to encrypt bucket contents.
    awsS3Endpoint String
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    awsS3ForcePathStyle Boolean
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    awsS3KmsKey String
    Use named KMS key, when aws_s3_enable_kms = true
    awsS3Region String
    <required> - AWS region bucket is in.
    awsS3ServerSideEncryption Boolean
    Use AES256 to encrypt bucket contents.
    awsSecretAccessKey String
    AWS secret access key.
    awsSessionToken String
    AWS session token.
    azureAccountKey String
    Azure account key.
    azureAccountName String
    Azure account name.
    azureBlobEnvironment String
    Azure blob environment.
    azureContainerName String
    <required> - Azure container name to write snapshots to.
    azureEndpoint String
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    filePrefix String
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    googleDisableTls Boolean
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    googleEndpoint String
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    googleGcsBucket String
    <required> - GCS bucket to write snapshots to.
    googleServiceAccountKey String
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    localMaxSpace Integer
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    name String
    <required> – Name of the configuration to modify.
    namespace String
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    retain Integer
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.
    intervalSeconds number
    <required> - Time (in seconds) between snapshots.
    pathPrefix string
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    storageType string
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.
    awsAccessKeyId string
    AWS access key ID.
    awsS3Bucket string
    <required> - S3 bucket to write snapshots to.
    awsS3DisableTls boolean
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    awsS3EnableKms boolean
    Use KMS to encrypt bucket contents.
    awsS3Endpoint string
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    awsS3ForcePathStyle boolean
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    awsS3KmsKey string
    Use named KMS key, when aws_s3_enable_kms = true
    awsS3Region string
    <required> - AWS region bucket is in.
    awsS3ServerSideEncryption boolean
    Use AES256 to encrypt bucket contents.
    awsSecretAccessKey string
    AWS secret access key.
    awsSessionToken string
    AWS session token.
    azureAccountKey string
    Azure account key.
    azureAccountName string
    Azure account name.
    azureBlobEnvironment string
    Azure blob environment.
    azureContainerName string
    <required> - Azure container name to write snapshots to.
    azureEndpoint string
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    filePrefix string
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    googleDisableTls boolean
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    googleEndpoint string
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    googleGcsBucket string
    <required> - GCS bucket to write snapshots to.
    googleServiceAccountKey string
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    localMaxSpace number
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    name string
    <required> – Name of the configuration to modify.
    namespace string
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    retain number
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.
    interval_seconds int
    <required> - Time (in seconds) between snapshots.
    path_prefix str
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    storage_type str
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.
    aws_access_key_id str
    AWS access key ID.
    aws_s3_bucket str
    <required> - S3 bucket to write snapshots to.
    aws_s3_disable_tls bool
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    aws_s3_enable_kms bool
    Use KMS to encrypt bucket contents.
    aws_s3_endpoint str
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    aws_s3_force_path_style bool
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    aws_s3_kms_key str
    Use named KMS key, when aws_s3_enable_kms = true
    aws_s3_region str
    <required> - AWS region bucket is in.
    aws_s3_server_side_encryption bool
    Use AES256 to encrypt bucket contents.
    aws_secret_access_key str
    AWS secret access key.
    aws_session_token str
    AWS session token.
    azure_account_key str
    Azure account key.
    azure_account_name str
    Azure account name.
    azure_blob_environment str
    Azure blob environment.
    azure_container_name str
    <required> - Azure container name to write snapshots to.
    azure_endpoint str
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    file_prefix str
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    google_disable_tls bool
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    google_endpoint str
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    google_gcs_bucket str
    <required> - GCS bucket to write snapshots to.
    google_service_account_key str
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    local_max_space int
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    name str
    <required> – Name of the configuration to modify.
    namespace str
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    retain int
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.
    intervalSeconds Number
    <required> - Time (in seconds) between snapshots.
    pathPrefix String
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    storageType String
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.
    awsAccessKeyId String
    AWS access key ID.
    awsS3Bucket String
    <required> - S3 bucket to write snapshots to.
    awsS3DisableTls Boolean
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    awsS3EnableKms Boolean
    Use KMS to encrypt bucket contents.
    awsS3Endpoint String
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    awsS3ForcePathStyle Boolean
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    awsS3KmsKey String
    Use named KMS key, when aws_s3_enable_kms = true
    awsS3Region String
    <required> - AWS region bucket is in.
    awsS3ServerSideEncryption Boolean
    Use AES256 to encrypt bucket contents.
    awsSecretAccessKey String
    AWS secret access key.
    awsSessionToken String
    AWS session token.
    azureAccountKey String
    Azure account key.
    azureAccountName String
    Azure account name.
    azureBlobEnvironment String
    Azure blob environment.
    azureContainerName String
    <required> - Azure container name to write snapshots to.
    azureEndpoint String
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    filePrefix String
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    googleDisableTls Boolean
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    googleEndpoint String
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    googleGcsBucket String
    <required> - GCS bucket to write snapshots to.
    googleServiceAccountKey String
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    localMaxSpace Number
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    name String
    <required> – Name of the configuration to modify.
    namespace String
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    retain Number
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the RaftSnapshotAgentConfig resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing RaftSnapshotAgentConfig Resource

    Get an existing RaftSnapshotAgentConfig resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: RaftSnapshotAgentConfigState, opts?: CustomResourceOptions): RaftSnapshotAgentConfig
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            aws_access_key_id: Optional[str] = None,
            aws_s3_bucket: Optional[str] = None,
            aws_s3_disable_tls: Optional[bool] = None,
            aws_s3_enable_kms: Optional[bool] = None,
            aws_s3_endpoint: Optional[str] = None,
            aws_s3_force_path_style: Optional[bool] = None,
            aws_s3_kms_key: Optional[str] = None,
            aws_s3_region: Optional[str] = None,
            aws_s3_server_side_encryption: Optional[bool] = None,
            aws_secret_access_key: Optional[str] = None,
            aws_session_token: Optional[str] = None,
            azure_account_key: Optional[str] = None,
            azure_account_name: Optional[str] = None,
            azure_blob_environment: Optional[str] = None,
            azure_container_name: Optional[str] = None,
            azure_endpoint: Optional[str] = None,
            file_prefix: Optional[str] = None,
            google_disable_tls: Optional[bool] = None,
            google_endpoint: Optional[str] = None,
            google_gcs_bucket: Optional[str] = None,
            google_service_account_key: Optional[str] = None,
            interval_seconds: Optional[int] = None,
            local_max_space: Optional[int] = None,
            name: Optional[str] = None,
            namespace: Optional[str] = None,
            path_prefix: Optional[str] = None,
            retain: Optional[int] = None,
            storage_type: Optional[str] = None) -> RaftSnapshotAgentConfig
    func GetRaftSnapshotAgentConfig(ctx *Context, name string, id IDInput, state *RaftSnapshotAgentConfigState, opts ...ResourceOption) (*RaftSnapshotAgentConfig, error)
    public static RaftSnapshotAgentConfig Get(string name, Input<string> id, RaftSnapshotAgentConfigState? state, CustomResourceOptions? opts = null)
    public static RaftSnapshotAgentConfig get(String name, Output<String> id, RaftSnapshotAgentConfigState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AwsAccessKeyId string
    AWS access key ID.
    AwsS3Bucket string
    <required> - S3 bucket to write snapshots to.
    AwsS3DisableTls bool
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    AwsS3EnableKms bool
    Use KMS to encrypt bucket contents.
    AwsS3Endpoint string
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    AwsS3ForcePathStyle bool
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    AwsS3KmsKey string
    Use named KMS key, when aws_s3_enable_kms = true
    AwsS3Region string
    <required> - AWS region bucket is in.
    AwsS3ServerSideEncryption bool
    Use AES256 to encrypt bucket contents.
    AwsSecretAccessKey string
    AWS secret access key.
    AwsSessionToken string
    AWS session token.
    AzureAccountKey string
    Azure account key.
    AzureAccountName string
    Azure account name.
    AzureBlobEnvironment string
    Azure blob environment.
    AzureContainerName string
    <required> - Azure container name to write snapshots to.
    AzureEndpoint string
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    FilePrefix string
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    GoogleDisableTls bool
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    GoogleEndpoint string
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    GoogleGcsBucket string
    <required> - GCS bucket to write snapshots to.
    GoogleServiceAccountKey string
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    IntervalSeconds int
    <required> - Time (in seconds) between snapshots.
    LocalMaxSpace int
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    Name string
    <required> – Name of the configuration to modify.
    Namespace string
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    PathPrefix string
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    Retain int
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.
    StorageType string
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.
    AwsAccessKeyId string
    AWS access key ID.
    AwsS3Bucket string
    <required> - S3 bucket to write snapshots to.
    AwsS3DisableTls bool
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    AwsS3EnableKms bool
    Use KMS to encrypt bucket contents.
    AwsS3Endpoint string
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    AwsS3ForcePathStyle bool
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    AwsS3KmsKey string
    Use named KMS key, when aws_s3_enable_kms = true
    AwsS3Region string
    <required> - AWS region bucket is in.
    AwsS3ServerSideEncryption bool
    Use AES256 to encrypt bucket contents.
    AwsSecretAccessKey string
    AWS secret access key.
    AwsSessionToken string
    AWS session token.
    AzureAccountKey string
    Azure account key.
    AzureAccountName string
    Azure account name.
    AzureBlobEnvironment string
    Azure blob environment.
    AzureContainerName string
    <required> - Azure container name to write snapshots to.
    AzureEndpoint string
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    FilePrefix string
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    GoogleDisableTls bool
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    GoogleEndpoint string
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    GoogleGcsBucket string
    <required> - GCS bucket to write snapshots to.
    GoogleServiceAccountKey string
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    IntervalSeconds int
    <required> - Time (in seconds) between snapshots.
    LocalMaxSpace int
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    Name string
    <required> – Name of the configuration to modify.
    Namespace string
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    PathPrefix string
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    Retain int
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.
    StorageType string
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.
    awsAccessKeyId String
    AWS access key ID.
    awsS3Bucket String
    <required> - S3 bucket to write snapshots to.
    awsS3DisableTls Boolean
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    awsS3EnableKms Boolean
    Use KMS to encrypt bucket contents.
    awsS3Endpoint String
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    awsS3ForcePathStyle Boolean
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    awsS3KmsKey String
    Use named KMS key, when aws_s3_enable_kms = true
    awsS3Region String
    <required> - AWS region bucket is in.
    awsS3ServerSideEncryption Boolean
    Use AES256 to encrypt bucket contents.
    awsSecretAccessKey String
    AWS secret access key.
    awsSessionToken String
    AWS session token.
    azureAccountKey String
    Azure account key.
    azureAccountName String
    Azure account name.
    azureBlobEnvironment String
    Azure blob environment.
    azureContainerName String
    <required> - Azure container name to write snapshots to.
    azureEndpoint String
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    filePrefix String
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    googleDisableTls Boolean
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    googleEndpoint String
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    googleGcsBucket String
    <required> - GCS bucket to write snapshots to.
    googleServiceAccountKey String
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    intervalSeconds Integer
    <required> - Time (in seconds) between snapshots.
    localMaxSpace Integer
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    name String
    <required> – Name of the configuration to modify.
    namespace String
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    pathPrefix String
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    retain Integer
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.
    storageType String
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.
    awsAccessKeyId string
    AWS access key ID.
    awsS3Bucket string
    <required> - S3 bucket to write snapshots to.
    awsS3DisableTls boolean
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    awsS3EnableKms boolean
    Use KMS to encrypt bucket contents.
    awsS3Endpoint string
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    awsS3ForcePathStyle boolean
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    awsS3KmsKey string
    Use named KMS key, when aws_s3_enable_kms = true
    awsS3Region string
    <required> - AWS region bucket is in.
    awsS3ServerSideEncryption boolean
    Use AES256 to encrypt bucket contents.
    awsSecretAccessKey string
    AWS secret access key.
    awsSessionToken string
    AWS session token.
    azureAccountKey string
    Azure account key.
    azureAccountName string
    Azure account name.
    azureBlobEnvironment string
    Azure blob environment.
    azureContainerName string
    <required> - Azure container name to write snapshots to.
    azureEndpoint string
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    filePrefix string
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    googleDisableTls boolean
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    googleEndpoint string
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    googleGcsBucket string
    <required> - GCS bucket to write snapshots to.
    googleServiceAccountKey string
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    intervalSeconds number
    <required> - Time (in seconds) between snapshots.
    localMaxSpace number
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    name string
    <required> – Name of the configuration to modify.
    namespace string
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    pathPrefix string
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    retain number
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.
    storageType string
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.
    aws_access_key_id str
    AWS access key ID.
    aws_s3_bucket str
    <required> - S3 bucket to write snapshots to.
    aws_s3_disable_tls bool
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    aws_s3_enable_kms bool
    Use KMS to encrypt bucket contents.
    aws_s3_endpoint str
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    aws_s3_force_path_style bool
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    aws_s3_kms_key str
    Use named KMS key, when aws_s3_enable_kms = true
    aws_s3_region str
    <required> - AWS region bucket is in.
    aws_s3_server_side_encryption bool
    Use AES256 to encrypt bucket contents.
    aws_secret_access_key str
    AWS secret access key.
    aws_session_token str
    AWS session token.
    azure_account_key str
    Azure account key.
    azure_account_name str
    Azure account name.
    azure_blob_environment str
    Azure blob environment.
    azure_container_name str
    <required> - Azure container name to write snapshots to.
    azure_endpoint str
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    file_prefix str
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    google_disable_tls bool
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    google_endpoint str
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    google_gcs_bucket str
    <required> - GCS bucket to write snapshots to.
    google_service_account_key str
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    interval_seconds int
    <required> - Time (in seconds) between snapshots.
    local_max_space int
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    name str
    <required> – Name of the configuration to modify.
    namespace str
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    path_prefix str
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    retain int
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.
    storage_type str
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.
    awsAccessKeyId String
    AWS access key ID.
    awsS3Bucket String
    <required> - S3 bucket to write snapshots to.
    awsS3DisableTls Boolean
    Disable TLS for the S3 endpoint. This should only be used for testing purposes, typically in conjunction with aws_s3_endpoint.
    awsS3EnableKms Boolean
    Use KMS to encrypt bucket contents.
    awsS3Endpoint String
    AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
    awsS3ForcePathStyle Boolean
    Use the endpoint/bucket URL style instead of bucket.endpoint. May be needed when setting aws_s3_endpoint.
    awsS3KmsKey String
    Use named KMS key, when aws_s3_enable_kms = true
    awsS3Region String
    <required> - AWS region bucket is in.
    awsS3ServerSideEncryption Boolean
    Use AES256 to encrypt bucket contents.
    awsSecretAccessKey String
    AWS secret access key.
    awsSessionToken String
    AWS session token.
    azureAccountKey String
    Azure account key.
    azureAccountName String
    Azure account name.
    azureBlobEnvironment String
    Azure blob environment.
    azureContainerName String
    <required> - Azure container name to write snapshots to.
    azureEndpoint String
    Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
    filePrefix String
    Within the directory or bucket prefix given by path_prefix, the file or object name of snapshot files will start with this string.
    googleDisableTls Boolean
    Disable TLS for the GCS endpoint. This should only be used for testing purposes, typically in conjunction with google_endpoint.
    googleEndpoint String
    GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
    googleGcsBucket String
    <required> - GCS bucket to write snapshots to.
    googleServiceAccountKey String
    Google service account key in JSON format. The raw value looks like this:

    {
    "type": "service_account",
    "project_id": "project-id",
    "private_key_id": "key-id",
    "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQ ... /WZs=\n-----END RSA PRIVATE KEY-----\n",
    "client_email": "service-account-email",
    "client_id": "client-id",
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
    }
    
    intervalSeconds Number
    <required> - Time (in seconds) between snapshots.
    localMaxSpace Number
    For storage_type = local, the maximum space, in bytes, to use for snapshots. Snapshot attempts will fail if there is not enough space left in this allowance.
    name String
    <required> – Name of the configuration to modify.
    namespace String
    The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.
    pathPrefix String
    <required> - For storage_type = "local", the directory to write the snapshots in. For cloud storage types, the bucket prefix to use. Types azure-s3 and google-gcs require a trailing / (slash). Types local and aws-s3 the trailing / is optional.
    retain Number
    How many snapshots are to be kept; when writing a snapshot, if there are more snapshots already stored than this number, the oldest ones will be deleted.
    storageType String
    <required> - One of "local", "azure-blob", "aws-s3", or "google-gcs". The remaining parameters described below are all specific to the selected storage_type and prefixed accordingly.

    Import

    Raft Snapshot Agent Configurations can be imported using the name, e.g.

    $ pulumi import vault:index/raftSnapshotAgentConfig:RaftSnapshotAgentConfig local local
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Vault pulumi/pulumi-vault
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the vault Terraform Provider.
    vault logo
    HashiCorp Vault v6.1.0 published on Thursday, Apr 4, 2024 by Pulumi