1. Packages
  2. HashiCorp Nomad
  3. API Docs
  4. Volume
Nomad v2.3.2 published on Wednesday, Aug 14, 2024 by Pulumi

nomad.Volume

Explore with Pulumi AI

nomad logo
Nomad v2.3.2 published on Wednesday, Aug 14, 2024 by Pulumi

    Example Usage

    Registering a volume:

    import * as pulumi from "@pulumi/pulumi";
    import * as nomad from "@pulumi/nomad";
    
    // It can sometimes be helpful to wait for a particular plugin to be available
    const ebs = nomad.getPlugin({
        pluginId: "aws-ebs0",
        waitForHealthy: true,
    });
    const mysqlVolume = new nomad.Volume("mysql_volume", {
        type: "csi",
        pluginId: "aws-ebs0",
        volumeId: "mysql_volume",
        name: "mysql_volume",
        externalId: hashistack.ebsTestVolumeId,
        capabilities: [{
            accessMode: "single-node-writer",
            attachmentMode: "file-system",
        }],
        mountOptions: {
            fsType: "ext4",
        },
        topologyRequest: {
            required: {
                topologies: [
                    {
                        segments: {
                            rack: "R1",
                            zone: "us-east-1a",
                        },
                    },
                    {
                        segments: {
                            rack: "R2",
                        },
                    },
                ],
            },
        },
    }, {
        dependsOn: [ebs],
    });
    
    import pulumi
    import pulumi_nomad as nomad
    
    # It can sometimes be helpful to wait for a particular plugin to be available
    ebs = nomad.get_plugin(plugin_id="aws-ebs0",
        wait_for_healthy=True)
    mysql_volume = nomad.Volume("mysql_volume",
        type="csi",
        plugin_id="aws-ebs0",
        volume_id="mysql_volume",
        name="mysql_volume",
        external_id=hashistack["ebsTestVolumeId"],
        capabilities=[{
            "access_mode": "single-node-writer",
            "attachment_mode": "file-system",
        }],
        mount_options={
            "fs_type": "ext4",
        },
        topology_request={
            "required": {
                "topologies": [
                    {
                        "segments": {
                            "rack": "R1",
                            "zone": "us-east-1a",
                        },
                    },
                    {
                        "segments": {
                            "rack": "R2",
                        },
                    },
                ],
            },
        },
        opts = pulumi.ResourceOptions(depends_on=[ebs]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-nomad/sdk/v2/go/nomad"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// It can sometimes be helpful to wait for a particular plugin to be available
    		ebs, err := nomad.GetPlugin(ctx, &nomad.GetPluginArgs{
    			PluginId:       "aws-ebs0",
    			WaitForHealthy: pulumi.BoolRef(true),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = nomad.NewVolume(ctx, "mysql_volume", &nomad.VolumeArgs{
    			Type:       pulumi.String("csi"),
    			PluginId:   pulumi.String("aws-ebs0"),
    			VolumeId:   pulumi.String("mysql_volume"),
    			Name:       pulumi.String("mysql_volume"),
    			ExternalId: pulumi.Any(hashistack.EbsTestVolumeId),
    			Capabilities: nomad.VolumeCapabilityArray{
    				&nomad.VolumeCapabilityArgs{
    					AccessMode:     pulumi.String("single-node-writer"),
    					AttachmentMode: pulumi.String("file-system"),
    				},
    			},
    			MountOptions: &nomad.VolumeMountOptionsArgs{
    				FsType: pulumi.String("ext4"),
    			},
    			TopologyRequest: &nomad.VolumeTopologyRequestArgs{
    				Required: &nomad.VolumeTopologyRequestRequiredArgs{
    					Topologies: nomad.VolumeTopologyRequestRequiredTopologyArray{
    						&nomad.VolumeTopologyRequestRequiredTopologyArgs{
    							Segments: pulumi.StringMap{
    								"rack": pulumi.String("R1"),
    								"zone": pulumi.String("us-east-1a"),
    							},
    						},
    						&nomad.VolumeTopologyRequestRequiredTopologyArgs{
    							Segments: pulumi.StringMap{
    								"rack": pulumi.String("R2"),
    							},
    						},
    					},
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			ebs,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Nomad = Pulumi.Nomad;
    
    return await Deployment.RunAsync(() => 
    {
        // It can sometimes be helpful to wait for a particular plugin to be available
        var ebs = Nomad.GetPlugin.Invoke(new()
        {
            PluginId = "aws-ebs0",
            WaitForHealthy = true,
        });
    
        var mysqlVolume = new Nomad.Volume("mysql_volume", new()
        {
            Type = "csi",
            PluginId = "aws-ebs0",
            VolumeId = "mysql_volume",
            Name = "mysql_volume",
            ExternalId = hashistack.EbsTestVolumeId,
            Capabilities = new[]
            {
                new Nomad.Inputs.VolumeCapabilityArgs
                {
                    AccessMode = "single-node-writer",
                    AttachmentMode = "file-system",
                },
            },
            MountOptions = new Nomad.Inputs.VolumeMountOptionsArgs
            {
                FsType = "ext4",
            },
            TopologyRequest = new Nomad.Inputs.VolumeTopologyRequestArgs
            {
                Required = new Nomad.Inputs.VolumeTopologyRequestRequiredArgs
                {
                    Topologies = new[]
                    {
                        new Nomad.Inputs.VolumeTopologyRequestRequiredTopologyArgs
                        {
                            Segments = 
                            {
                                { "rack", "R1" },
                                { "zone", "us-east-1a" },
                            },
                        },
                        new Nomad.Inputs.VolumeTopologyRequestRequiredTopologyArgs
                        {
                            Segments = 
                            {
                                { "rack", "R2" },
                            },
                        },
                    },
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                ebs,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.nomad.NomadFunctions;
    import com.pulumi.nomad.inputs.GetPluginArgs;
    import com.pulumi.nomad.Volume;
    import com.pulumi.nomad.VolumeArgs;
    import com.pulumi.nomad.inputs.VolumeCapabilityArgs;
    import com.pulumi.nomad.inputs.VolumeMountOptionsArgs;
    import com.pulumi.nomad.inputs.VolumeTopologyRequestArgs;
    import com.pulumi.nomad.inputs.VolumeTopologyRequestRequiredArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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) {
            // It can sometimes be helpful to wait for a particular plugin to be available
            final var ebs = NomadFunctions.getPlugin(GetPluginArgs.builder()
                .pluginId("aws-ebs0")
                .waitForHealthy(true)
                .build());
    
            var mysqlVolume = new Volume("mysqlVolume", VolumeArgs.builder()
                .type("csi")
                .pluginId("aws-ebs0")
                .volumeId("mysql_volume")
                .name("mysql_volume")
                .externalId(hashistack.ebsTestVolumeId())
                .capabilities(VolumeCapabilityArgs.builder()
                    .accessMode("single-node-writer")
                    .attachmentMode("file-system")
                    .build())
                .mountOptions(VolumeMountOptionsArgs.builder()
                    .fsType("ext4")
                    .build())
                .topologyRequest(VolumeTopologyRequestArgs.builder()
                    .required(VolumeTopologyRequestRequiredArgs.builder()
                        .topologies(                    
                            VolumeTopologyRequestRequiredTopologyArgs.builder()
                                .segments(Map.ofEntries(
                                    Map.entry("rack", "R1"),
                                    Map.entry("zone", "us-east-1a")
                                ))
                                .build(),
                            VolumeTopologyRequestRequiredTopologyArgs.builder()
                                .segments(Map.of("rack", "R2"))
                                .build())
                        .build())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(ebs.applyValue(getPluginResult -> getPluginResult))
                    .build());
    
        }
    }
    
    resources:
      mysqlVolume:
        type: nomad:Volume
        name: mysql_volume
        properties:
          type: csi
          pluginId: aws-ebs0
          volumeId: mysql_volume
          name: mysql_volume
          externalId: ${hashistack.ebsTestVolumeId}
          capabilities:
            - accessMode: single-node-writer
              attachmentMode: file-system
          mountOptions:
            fsType: ext4
          topologyRequest:
            required:
              topologies:
                - segments:
                    rack: R1
                    zone: us-east-1a
                - segments:
                    rack: R2
        options:
          dependson:
            - ${ebs}
    variables:
      # It can sometimes be helpful to wait for a particular plugin to be available
      ebs:
        fn::invoke:
          Function: nomad:getPlugin
          Arguments:
            pluginId: aws-ebs0
            waitForHealthy: true
    

    Create Volume Resource

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

    Constructor syntax

    new Volume(name: string, args: VolumeArgs, opts?: CustomResourceOptions);
    @overload
    def Volume(resource_name: str,
               args: VolumeArgs,
               opts: Optional[ResourceOptions] = None)
    
    @overload
    def Volume(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               external_id: Optional[str] = None,
               volume_id: Optional[str] = None,
               plugin_id: Optional[str] = None,
               mount_options: Optional[VolumeMountOptionsArgs] = None,
               deregister_on_destroy: Optional[bool] = None,
               context: Optional[Mapping[str, str]] = None,
               access_mode: Optional[str] = None,
               name: Optional[str] = None,
               namespace: Optional[str] = None,
               parameters: Optional[Mapping[str, str]] = None,
               capabilities: Optional[Sequence[VolumeCapabilityArgs]] = None,
               secrets: Optional[Mapping[str, str]] = None,
               topology_request: Optional[VolumeTopologyRequestArgs] = None,
               type: Optional[str] = None,
               attachment_mode: Optional[str] = None)
    func NewVolume(ctx *Context, name string, args VolumeArgs, opts ...ResourceOption) (*Volume, error)
    public Volume(string name, VolumeArgs args, CustomResourceOptions? opts = null)
    public Volume(String name, VolumeArgs args)
    public Volume(String name, VolumeArgs args, CustomResourceOptions options)
    
    type: nomad:Volume
    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 VolumeArgs
    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 VolumeArgs
    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 VolumeArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args VolumeArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args VolumeArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

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

    var volumeResource = new Nomad.Volume("volumeResource", new()
    {
        ExternalId = "string",
        VolumeId = "string",
        PluginId = "string",
        MountOptions = new Nomad.Inputs.VolumeMountOptionsArgs
        {
            FsType = "string",
            MountFlags = new[]
            {
                "string",
            },
        },
        DeregisterOnDestroy = false,
        Context = 
        {
            { "string", "string" },
        },
        Name = "string",
        Namespace = "string",
        Parameters = 
        {
            { "string", "string" },
        },
        Capabilities = new[]
        {
            new Nomad.Inputs.VolumeCapabilityArgs
            {
                AccessMode = "string",
                AttachmentMode = "string",
            },
        },
        Secrets = 
        {
            { "string", "string" },
        },
        TopologyRequest = new Nomad.Inputs.VolumeTopologyRequestArgs
        {
            Required = new Nomad.Inputs.VolumeTopologyRequestRequiredArgs
            {
                Topologies = new[]
                {
                    new Nomad.Inputs.VolumeTopologyRequestRequiredTopologyArgs
                    {
                        Segments = 
                        {
                            { "string", "string" },
                        },
                    },
                },
            },
        },
        Type = "string",
    });
    
    example, err := nomad.NewVolume(ctx, "volumeResource", &nomad.VolumeArgs{
    	ExternalId: pulumi.String("string"),
    	VolumeId:   pulumi.String("string"),
    	PluginId:   pulumi.String("string"),
    	MountOptions: &nomad.VolumeMountOptionsArgs{
    		FsType: pulumi.String("string"),
    		MountFlags: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	DeregisterOnDestroy: pulumi.Bool(false),
    	Context: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Name:      pulumi.String("string"),
    	Namespace: pulumi.String("string"),
    	Parameters: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Capabilities: nomad.VolumeCapabilityArray{
    		&nomad.VolumeCapabilityArgs{
    			AccessMode:     pulumi.String("string"),
    			AttachmentMode: pulumi.String("string"),
    		},
    	},
    	Secrets: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	TopologyRequest: &nomad.VolumeTopologyRequestArgs{
    		Required: &nomad.VolumeTopologyRequestRequiredArgs{
    			Topologies: nomad.VolumeTopologyRequestRequiredTopologyArray{
    				&nomad.VolumeTopologyRequestRequiredTopologyArgs{
    					Segments: pulumi.StringMap{
    						"string": pulumi.String("string"),
    					},
    				},
    			},
    		},
    	},
    	Type: pulumi.String("string"),
    })
    
    var volumeResource = new Volume("volumeResource", VolumeArgs.builder()
        .externalId("string")
        .volumeId("string")
        .pluginId("string")
        .mountOptions(VolumeMountOptionsArgs.builder()
            .fsType("string")
            .mountFlags("string")
            .build())
        .deregisterOnDestroy(false)
        .context(Map.of("string", "string"))
        .name("string")
        .namespace("string")
        .parameters(Map.of("string", "string"))
        .capabilities(VolumeCapabilityArgs.builder()
            .accessMode("string")
            .attachmentMode("string")
            .build())
        .secrets(Map.of("string", "string"))
        .topologyRequest(VolumeTopologyRequestArgs.builder()
            .required(VolumeTopologyRequestRequiredArgs.builder()
                .topologies(VolumeTopologyRequestRequiredTopologyArgs.builder()
                    .segments(Map.of("string", "string"))
                    .build())
                .build())
            .build())
        .type("string")
        .build());
    
    volume_resource = nomad.Volume("volumeResource",
        external_id="string",
        volume_id="string",
        plugin_id="string",
        mount_options=nomad.VolumeMountOptionsArgs(
            fs_type="string",
            mount_flags=["string"],
        ),
        deregister_on_destroy=False,
        context={
            "string": "string",
        },
        name="string",
        namespace="string",
        parameters={
            "string": "string",
        },
        capabilities=[nomad.VolumeCapabilityArgs(
            access_mode="string",
            attachment_mode="string",
        )],
        secrets={
            "string": "string",
        },
        topology_request=nomad.VolumeTopologyRequestArgs(
            required=nomad.VolumeTopologyRequestRequiredArgs(
                topologies=[nomad.VolumeTopologyRequestRequiredTopologyArgs(
                    segments={
                        "string": "string",
                    },
                )],
            ),
        ),
        type="string")
    
    const volumeResource = new nomad.Volume("volumeResource", {
        externalId: "string",
        volumeId: "string",
        pluginId: "string",
        mountOptions: {
            fsType: "string",
            mountFlags: ["string"],
        },
        deregisterOnDestroy: false,
        context: {
            string: "string",
        },
        name: "string",
        namespace: "string",
        parameters: {
            string: "string",
        },
        capabilities: [{
            accessMode: "string",
            attachmentMode: "string",
        }],
        secrets: {
            string: "string",
        },
        topologyRequest: {
            required: {
                topologies: [{
                    segments: {
                        string: "string",
                    },
                }],
            },
        },
        type: "string",
    });
    
    type: nomad:Volume
    properties:
        capabilities:
            - accessMode: string
              attachmentMode: string
        context:
            string: string
        deregisterOnDestroy: false
        externalId: string
        mountOptions:
            fsType: string
            mountFlags:
                - string
        name: string
        namespace: string
        parameters:
            string: string
        pluginId: string
        secrets:
            string: string
        topologyRequest:
            required:
                topologies:
                    - segments:
                        string: string
        type: string
        volumeId: string
    

    Volume 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 Volume resource accepts the following input properties:

    ExternalId string
    (string: <required>) - The ID of the physical volume from the storage provider.
    PluginId string
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    VolumeId string
    (string: <required>) - The unique ID of the volume.
    AccessMode string
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    AttachmentMode string
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    Capabilities List<VolumeCapability>
    (``Capability``: <required>) - Options for validating the capability of a volume.
    Context Dictionary<string, string>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    DeregisterOnDestroy bool
    (boolean: true) - If true, the volume will be deregistered on destroy.
    MountOptions VolumeMountOptions
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    Name string
    (string: <required>) - The display name for the volume.
    Namespace string
    (string: "default") - The namespace in which to register the volume.
    Parameters Dictionary<string, string>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    Secrets Dictionary<string, string>
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    TopologyRequest VolumeTopologyRequest
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    Type string
    (string: <required>) - The type of the volume. Currently, only csi is supported.
    ExternalId string
    (string: <required>) - The ID of the physical volume from the storage provider.
    PluginId string
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    VolumeId string
    (string: <required>) - The unique ID of the volume.
    AccessMode string
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    AttachmentMode string
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    Capabilities []VolumeCapabilityArgs
    (``Capability``: <required>) - Options for validating the capability of a volume.
    Context map[string]string
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    DeregisterOnDestroy bool
    (boolean: true) - If true, the volume will be deregistered on destroy.
    MountOptions VolumeMountOptionsArgs
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    Name string
    (string: <required>) - The display name for the volume.
    Namespace string
    (string: "default") - The namespace in which to register the volume.
    Parameters map[string]string
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    Secrets map[string]string
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    TopologyRequest VolumeTopologyRequestArgs
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    Type string
    (string: <required>) - The type of the volume. Currently, only csi is supported.
    externalId String
    (string: <required>) - The ID of the physical volume from the storage provider.
    pluginId String
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    volumeId String
    (string: <required>) - The unique ID of the volume.
    accessMode String
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    attachmentMode String
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    capabilities List<VolumeCapability>
    (``Capability``: <required>) - Options for validating the capability of a volume.
    context Map<String,String>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    deregisterOnDestroy Boolean
    (boolean: true) - If true, the volume will be deregistered on destroy.
    mountOptions VolumeMountOptions
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    name String
    (string: <required>) - The display name for the volume.
    namespace String
    (string: "default") - The namespace in which to register the volume.
    parameters Map<String,String>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    secrets Map<String,String>
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    topologyRequest VolumeTopologyRequest
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    type String
    (string: <required>) - The type of the volume. Currently, only csi is supported.
    externalId string
    (string: <required>) - The ID of the physical volume from the storage provider.
    pluginId string
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    volumeId string
    (string: <required>) - The unique ID of the volume.
    accessMode string
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    attachmentMode string
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    capabilities VolumeCapability[]
    (``Capability``: <required>) - Options for validating the capability of a volume.
    context {[key: string]: string}
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    deregisterOnDestroy boolean
    (boolean: true) - If true, the volume will be deregistered on destroy.
    mountOptions VolumeMountOptions
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    name string
    (string: <required>) - The display name for the volume.
    namespace string
    (string: "default") - The namespace in which to register the volume.
    parameters {[key: string]: string}
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    secrets {[key: string]: string}
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    topologyRequest VolumeTopologyRequest
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    type string
    (string: <required>) - The type of the volume. Currently, only csi is supported.
    external_id str
    (string: <required>) - The ID of the physical volume from the storage provider.
    plugin_id str
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    volume_id str
    (string: <required>) - The unique ID of the volume.
    access_mode str
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    attachment_mode str
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    capabilities Sequence[VolumeCapabilityArgs]
    (``Capability``: <required>) - Options for validating the capability of a volume.
    context Mapping[str, str]
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    deregister_on_destroy bool
    (boolean: true) - If true, the volume will be deregistered on destroy.
    mount_options VolumeMountOptionsArgs
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    name str
    (string: <required>) - The display name for the volume.
    namespace str
    (string: "default") - The namespace in which to register the volume.
    parameters Mapping[str, str]
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    secrets Mapping[str, str]
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    topology_request VolumeTopologyRequestArgs
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    type str
    (string: <required>) - The type of the volume. Currently, only csi is supported.
    externalId String
    (string: <required>) - The ID of the physical volume from the storage provider.
    pluginId String
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    volumeId String
    (string: <required>) - The unique ID of the volume.
    accessMode String
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    attachmentMode String
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    capabilities List<Property Map>
    (``Capability``: <required>) - Options for validating the capability of a volume.
    context Map<String>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    deregisterOnDestroy Boolean
    (boolean: true) - If true, the volume will be deregistered on destroy.
    mountOptions Property Map
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    name String
    (string: <required>) - The display name for the volume.
    namespace String
    (string: "default") - The namespace in which to register the volume.
    parameters Map<String>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    secrets Map<String>
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    topologyRequest Property Map
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    type String
    (string: <required>) - The type of the volume. Currently, only csi is supported.

    Outputs

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

    ControllerRequired bool
    ControllersExpected int
    ControllersHealthy int
    Id string
    The provider-assigned unique ID for this managed resource.
    NodesExpected int
    NodesHealthy int
    PluginProvider string
    PluginProviderVersion string
    Schedulable bool
    Topologies List<VolumeTopology>
    ControllerRequired bool
    ControllersExpected int
    ControllersHealthy int
    Id string
    The provider-assigned unique ID for this managed resource.
    NodesExpected int
    NodesHealthy int
    PluginProvider string
    PluginProviderVersion string
    Schedulable bool
    Topologies []VolumeTopology
    controllerRequired Boolean
    controllersExpected Integer
    controllersHealthy Integer
    id String
    The provider-assigned unique ID for this managed resource.
    nodesExpected Integer
    nodesHealthy Integer
    pluginProvider String
    pluginProviderVersion String
    schedulable Boolean
    topologies List<VolumeTopology>
    controllerRequired boolean
    controllersExpected number
    controllersHealthy number
    id string
    The provider-assigned unique ID for this managed resource.
    nodesExpected number
    nodesHealthy number
    pluginProvider string
    pluginProviderVersion string
    schedulable boolean
    topologies VolumeTopology[]
    controllerRequired Boolean
    controllersExpected Number
    controllersHealthy Number
    id String
    The provider-assigned unique ID for this managed resource.
    nodesExpected Number
    nodesHealthy Number
    pluginProvider String
    pluginProviderVersion String
    schedulable Boolean
    topologies List<Property Map>

    Look up Existing Volume Resource

    Get an existing Volume 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?: VolumeState, opts?: CustomResourceOptions): Volume
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            access_mode: Optional[str] = None,
            attachment_mode: Optional[str] = None,
            capabilities: Optional[Sequence[VolumeCapabilityArgs]] = None,
            context: Optional[Mapping[str, str]] = None,
            controller_required: Optional[bool] = None,
            controllers_expected: Optional[int] = None,
            controllers_healthy: Optional[int] = None,
            deregister_on_destroy: Optional[bool] = None,
            external_id: Optional[str] = None,
            mount_options: Optional[VolumeMountOptionsArgs] = None,
            name: Optional[str] = None,
            namespace: Optional[str] = None,
            nodes_expected: Optional[int] = None,
            nodes_healthy: Optional[int] = None,
            parameters: Optional[Mapping[str, str]] = None,
            plugin_id: Optional[str] = None,
            plugin_provider: Optional[str] = None,
            plugin_provider_version: Optional[str] = None,
            schedulable: Optional[bool] = None,
            secrets: Optional[Mapping[str, str]] = None,
            topologies: Optional[Sequence[VolumeTopologyArgs]] = None,
            topology_request: Optional[VolumeTopologyRequestArgs] = None,
            type: Optional[str] = None,
            volume_id: Optional[str] = None) -> Volume
    func GetVolume(ctx *Context, name string, id IDInput, state *VolumeState, opts ...ResourceOption) (*Volume, error)
    public static Volume Get(string name, Input<string> id, VolumeState? state, CustomResourceOptions? opts = null)
    public static Volume get(String name, Output<String> id, VolumeState 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:
    AccessMode string
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    AttachmentMode string
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    Capabilities List<VolumeCapability>
    (``Capability``: <required>) - Options for validating the capability of a volume.
    Context Dictionary<string, string>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    ControllerRequired bool
    ControllersExpected int
    ControllersHealthy int
    DeregisterOnDestroy bool
    (boolean: true) - If true, the volume will be deregistered on destroy.
    ExternalId string
    (string: <required>) - The ID of the physical volume from the storage provider.
    MountOptions VolumeMountOptions
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    Name string
    (string: <required>) - The display name for the volume.
    Namespace string
    (string: "default") - The namespace in which to register the volume.
    NodesExpected int
    NodesHealthy int
    Parameters Dictionary<string, string>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    PluginId string
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    PluginProvider string
    PluginProviderVersion string
    Schedulable bool
    Secrets Dictionary<string, string>
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    Topologies List<VolumeTopology>
    TopologyRequest VolumeTopologyRequest
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    Type string
    (string: <required>) - The type of the volume. Currently, only csi is supported.
    VolumeId string
    (string: <required>) - The unique ID of the volume.
    AccessMode string
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    AttachmentMode string
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    Capabilities []VolumeCapabilityArgs
    (``Capability``: <required>) - Options for validating the capability of a volume.
    Context map[string]string
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    ControllerRequired bool
    ControllersExpected int
    ControllersHealthy int
    DeregisterOnDestroy bool
    (boolean: true) - If true, the volume will be deregistered on destroy.
    ExternalId string
    (string: <required>) - The ID of the physical volume from the storage provider.
    MountOptions VolumeMountOptionsArgs
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    Name string
    (string: <required>) - The display name for the volume.
    Namespace string
    (string: "default") - The namespace in which to register the volume.
    NodesExpected int
    NodesHealthy int
    Parameters map[string]string
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    PluginId string
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    PluginProvider string
    PluginProviderVersion string
    Schedulable bool
    Secrets map[string]string
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    Topologies []VolumeTopologyArgs
    TopologyRequest VolumeTopologyRequestArgs
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    Type string
    (string: <required>) - The type of the volume. Currently, only csi is supported.
    VolumeId string
    (string: <required>) - The unique ID of the volume.
    accessMode String
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    attachmentMode String
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    capabilities List<VolumeCapability>
    (``Capability``: <required>) - Options for validating the capability of a volume.
    context Map<String,String>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    controllerRequired Boolean
    controllersExpected Integer
    controllersHealthy Integer
    deregisterOnDestroy Boolean
    (boolean: true) - If true, the volume will be deregistered on destroy.
    externalId String
    (string: <required>) - The ID of the physical volume from the storage provider.
    mountOptions VolumeMountOptions
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    name String
    (string: <required>) - The display name for the volume.
    namespace String
    (string: "default") - The namespace in which to register the volume.
    nodesExpected Integer
    nodesHealthy Integer
    parameters Map<String,String>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    pluginId String
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    pluginProvider String
    pluginProviderVersion String
    schedulable Boolean
    secrets Map<String,String>
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    topologies List<VolumeTopology>
    topologyRequest VolumeTopologyRequest
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    type String
    (string: <required>) - The type of the volume. Currently, only csi is supported.
    volumeId String
    (string: <required>) - The unique ID of the volume.
    accessMode string
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    attachmentMode string
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    capabilities VolumeCapability[]
    (``Capability``: <required>) - Options for validating the capability of a volume.
    context {[key: string]: string}
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    controllerRequired boolean
    controllersExpected number
    controllersHealthy number
    deregisterOnDestroy boolean
    (boolean: true) - If true, the volume will be deregistered on destroy.
    externalId string
    (string: <required>) - The ID of the physical volume from the storage provider.
    mountOptions VolumeMountOptions
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    name string
    (string: <required>) - The display name for the volume.
    namespace string
    (string: "default") - The namespace in which to register the volume.
    nodesExpected number
    nodesHealthy number
    parameters {[key: string]: string}
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    pluginId string
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    pluginProvider string
    pluginProviderVersion string
    schedulable boolean
    secrets {[key: string]: string}
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    topologies VolumeTopology[]
    topologyRequest VolumeTopologyRequest
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    type string
    (string: <required>) - The type of the volume. Currently, only csi is supported.
    volumeId string
    (string: <required>) - The unique ID of the volume.
    access_mode str
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    attachment_mode str
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    capabilities Sequence[VolumeCapabilityArgs]
    (``Capability``: <required>) - Options for validating the capability of a volume.
    context Mapping[str, str]
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    controller_required bool
    controllers_expected int
    controllers_healthy int
    deregister_on_destroy bool
    (boolean: true) - If true, the volume will be deregistered on destroy.
    external_id str
    (string: <required>) - The ID of the physical volume from the storage provider.
    mount_options VolumeMountOptionsArgs
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    name str
    (string: <required>) - The display name for the volume.
    namespace str
    (string: "default") - The namespace in which to register the volume.
    nodes_expected int
    nodes_healthy int
    parameters Mapping[str, str]
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    plugin_id str
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    plugin_provider str
    plugin_provider_version str
    schedulable bool
    secrets Mapping[str, str]
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    topologies Sequence[VolumeTopologyArgs]
    topology_request VolumeTopologyRequestArgs
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    type str
    (string: <required>) - The type of the volume. Currently, only csi is supported.
    volume_id str
    (string: <required>) - The unique ID of the volume.
    accessMode String
    (string: <optional>) - Deprecated. Use capability block instead. Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer

    Deprecated: use capability instead

    attachmentMode String
    (string: <otional>) - Deprecated. Use capability block instead. The storage API that will be used by the volume.

    Deprecated: use capability instead

    capabilities List<Property Map>
    (``Capability``: <required>) - Options for validating the capability of a volume.
    context Map<String>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
    controllerRequired Boolean
    controllersExpected Number
    controllersHealthy Number
    deregisterOnDestroy Boolean
    (boolean: true) - If true, the volume will be deregistered on destroy.
    externalId String
    (string: <required>) - The ID of the physical volume from the storage provider.
    mountOptions Property Map
    (block: <optional>) Options for mounting block-device volumes without a pre-formatted file system.
    name String
    (string: <required>) - The display name for the volume.
    namespace String
    (string: "default") - The namespace in which to register the volume.
    nodesExpected Number
    nodesHealthy Number
    parameters Map<String>
    (map[string]string: <optional>) - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
    pluginId String
    (string: <required>) - The ID of the Nomad plugin for registering this volume.
    pluginProvider String
    pluginProviderVersion String
    schedulable Boolean
    secrets Map<String>
    (map[string]string: <optional>) - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
    topologies List<Property Map>
    topologyRequest Property Map
    (``TopologyRequest``: <optional>) - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
    type String
    (string: <required>) - The type of the volume. Currently, only csi is supported.
    volumeId String
    (string: <required>) - The unique ID of the volume.

    Supporting Types

    VolumeCapability, VolumeCapabilityArgs

    AccessMode string
    (string: <required>) - Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer
    AttachmentMode string
    (string: <required>) - The storage API that will be used by the volume. Possible values are:

    • block-device
    • file-system
    AccessMode string
    (string: <required>) - Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer
    AttachmentMode string
    (string: <required>) - The storage API that will be used by the volume. Possible values are:

    • block-device
    • file-system
    accessMode String
    (string: <required>) - Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer
    attachmentMode String
    (string: <required>) - The storage API that will be used by the volume. Possible values are:

    • block-device
    • file-system
    accessMode string
    (string: <required>) - Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer
    attachmentMode string
    (string: <required>) - The storage API that will be used by the volume. Possible values are:

    • block-device
    • file-system
    access_mode str
    (string: <required>) - Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer
    attachment_mode str
    (string: <required>) - The storage API that will be used by the volume. Possible values are:

    • block-device
    • file-system
    accessMode String
    (string: <required>) - Defines whether a volume should be available concurrently. Possible values are:

    • single-node-reader-only
    • single-node-writer
    • multi-node-reader-only
    • multi-node-single-writer
    • multi-node-multi-writer
    attachmentMode String
    (string: <required>) - The storage API that will be used by the volume. Possible values are:

    • block-device
    • file-system

    VolumeMountOptions, VolumeMountOptionsArgs

    FsType string
    (string: <optional>) - The file system type.
    MountFlags List<string>
    ([]string: <optional>) - The flags passed to mount.
    FsType string
    (string: <optional>) - The file system type.
    MountFlags []string
    ([]string: <optional>) - The flags passed to mount.
    fsType String
    (string: <optional>) - The file system type.
    mountFlags List<String>
    ([]string: <optional>) - The flags passed to mount.
    fsType string
    (string: <optional>) - The file system type.
    mountFlags string[]
    ([]string: <optional>) - The flags passed to mount.
    fs_type str
    (string: <optional>) - The file system type.
    mount_flags Sequence[str]
    ([]string: <optional>) - The flags passed to mount.
    fsType String
    (string: <optional>) - The file system type.
    mountFlags List<String>
    ([]string: <optional>) - The flags passed to mount.

    VolumeTopology, VolumeTopologyArgs

    Segments Dictionary<string, string>

    (map[string]string) - Define the attributes for the topology request.

    In addition to the above arguments, the following attributes are exported and can be referenced:

    Segments map[string]string

    (map[string]string) - Define the attributes for the topology request.

    In addition to the above arguments, the following attributes are exported and can be referenced:

    segments Map<String,String>

    (map[string]string) - Define the attributes for the topology request.

    In addition to the above arguments, the following attributes are exported and can be referenced:

    segments {[key: string]: string}

    (map[string]string) - Define the attributes for the topology request.

    In addition to the above arguments, the following attributes are exported and can be referenced:

    segments Mapping[str, str]

    (map[string]string) - Define the attributes for the topology request.

    In addition to the above arguments, the following attributes are exported and can be referenced:

    segments Map<String>

    (map[string]string) - Define the attributes for the topology request.

    In addition to the above arguments, the following attributes are exported and can be referenced:

    VolumeTopologyRequest, VolumeTopologyRequestArgs

    Required VolumeTopologyRequestRequired
    (``Topology``: <optional>) - Required topologies indicate that the volume must be created in a location accessible from all the listed topologies.
    Required VolumeTopologyRequestRequired
    (``Topology``: <optional>) - Required topologies indicate that the volume must be created in a location accessible from all the listed topologies.
    required VolumeTopologyRequestRequired
    (``Topology``: <optional>) - Required topologies indicate that the volume must be created in a location accessible from all the listed topologies.
    required VolumeTopologyRequestRequired
    (``Topology``: <optional>) - Required topologies indicate that the volume must be created in a location accessible from all the listed topologies.
    required VolumeTopologyRequestRequired
    (``Topology``: <optional>) - Required topologies indicate that the volume must be created in a location accessible from all the listed topologies.
    required Property Map
    (``Topology``: <optional>) - Required topologies indicate that the volume must be created in a location accessible from all the listed topologies.

    VolumeTopologyRequestRequired, VolumeTopologyRequestRequiredArgs

    Topologies List<VolumeTopologyRequestRequiredTopology>
    Defines the location for the volume.
    Topologies []VolumeTopologyRequestRequiredTopology
    Defines the location for the volume.
    topologies List<VolumeTopologyRequestRequiredTopology>
    Defines the location for the volume.
    topologies VolumeTopologyRequestRequiredTopology[]
    Defines the location for the volume.
    topologies List<Property Map>
    Defines the location for the volume.

    VolumeTopologyRequestRequiredTopology, VolumeTopologyRequestRequiredTopologyArgs

    Segments Dictionary<string, string>
    Define attributes for the topology request.
    Segments map[string]string
    Define attributes for the topology request.
    segments Map<String,String>
    Define attributes for the topology request.
    segments {[key: string]: string}
    Define attributes for the topology request.
    segments Mapping[str, str]
    Define attributes for the topology request.
    segments Map<String>
    Define attributes for the topology request.

    Package Details

    Repository
    HashiCorp Nomad pulumi/pulumi-nomad
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the nomad Terraform Provider.
    nomad logo
    Nomad v2.3.2 published on Wednesday, Aug 14, 2024 by Pulumi