HashiCorp Nomad
ExternalVolume
Create a ExternalVolume Resource
new ExternalVolume(name: string, args: ExternalVolumeArgs, opts?: CustomResourceOptions);
@overload
def ExternalVolume(resource_name: str,
opts: Optional[ResourceOptions] = None,
capabilities: Optional[Sequence[ExternalVolumeCapabilityArgs]] = None,
capacity_max: Optional[str] = None,
capacity_min: Optional[str] = None,
clone_id: Optional[str] = None,
mount_options: Optional[ExternalVolumeMountOptionsArgs] = None,
name: Optional[str] = None,
namespace: Optional[str] = None,
parameters: Optional[Mapping[str, str]] = None,
plugin_id: Optional[str] = None,
secrets: Optional[Mapping[str, str]] = None,
snapshot_id: Optional[str] = None,
type: Optional[str] = None,
volume_id: Optional[str] = None)
@overload
def ExternalVolume(resource_name: str,
args: ExternalVolumeArgs,
opts: Optional[ResourceOptions] = None)
func NewExternalVolume(ctx *Context, name string, args ExternalVolumeArgs, opts ...ResourceOption) (*ExternalVolume, error)
public ExternalVolume(string name, ExternalVolumeArgs args, CustomResourceOptions? opts = null)
public ExternalVolume(String name, ExternalVolumeArgs args)
public ExternalVolume(String name, ExternalVolumeArgs args, CustomResourceOptions options)
type: nomad:ExternalVolume
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ExternalVolumeArgs
- 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 ExternalVolumeArgs
- 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 ExternalVolumeArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ExternalVolumeArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ExternalVolumeArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
ExternalVolume 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 ExternalVolume resource accepts the following input properties:
- Capabilities
List<External
Volume Capability Args> Capabilities intended to be used in a job. At least one capability must be provided.
- Plugin
Id string The ID of the CSI plugin that manages this volume.
- Volume
Id string The unique ID of the volume, how jobs will refer to the volume.
- Capacity
Max string Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- Capacity
Min string Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- Clone
Id string The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- Mount
Options ExternalVolume Mount Options Args Options for mounting 'block-device' volumes without a pre-formatted file system.
- Name string
The display name of the volume.
- Namespace string
The namespace in which to create the volume.
- Parameters Dictionary<string, string>
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- Secrets Dictionary<string, string>
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- Snapshot
Id string The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- Type string
The type of the volume. Currently, only 'csi' is supported.
- Capabilities
[]External
Volume Capability Args Capabilities intended to be used in a job. At least one capability must be provided.
- Plugin
Id string The ID of the CSI plugin that manages this volume.
- Volume
Id string The unique ID of the volume, how jobs will refer to the volume.
- Capacity
Max string Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- Capacity
Min string Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- Clone
Id string The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- Mount
Options ExternalVolume Mount Options Args Options for mounting 'block-device' volumes without a pre-formatted file system.
- Name string
The display name of the volume.
- Namespace string
The namespace in which to create the volume.
- Parameters map[string]string
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- Secrets map[string]string
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- Snapshot
Id string The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- Type string
The type of the volume. Currently, only 'csi' is supported.
- capabilities
List<External
Volume Capability Args> Capabilities intended to be used in a job. At least one capability must be provided.
- plugin
Id String The ID of the CSI plugin that manages this volume.
- volume
Id String The unique ID of the volume, how jobs will refer to the volume.
- capacity
Max String Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- capacity
Min String Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- clone
Id String The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- mount
Options ExternalVolume Mount Options Args Options for mounting 'block-device' volumes without a pre-formatted file system.
- name String
The display name of the volume.
- namespace String
The namespace in which to create the volume.
- parameters Map<String,String>
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- secrets Map<String,String>
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- snapshot
Id String The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- type String
The type of the volume. Currently, only 'csi' is supported.
- capabilities
External
Volume Capability Args[] Capabilities intended to be used in a job. At least one capability must be provided.
- plugin
Id string The ID of the CSI plugin that manages this volume.
- volume
Id string The unique ID of the volume, how jobs will refer to the volume.
- capacity
Max string Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- capacity
Min string Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- clone
Id string The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- mount
Options ExternalVolume Mount Options Args Options for mounting 'block-device' volumes without a pre-formatted file system.
- name string
The display name of the volume.
- namespace string
The namespace in which to create the volume.
- parameters {[key: string]: string}
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- secrets {[key: string]: string}
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- snapshot
Id string The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- type string
The type of the volume. Currently, only 'csi' is supported.
- capabilities
Sequence[External
Volume Capability Args] Capabilities intended to be used in a job. At least one capability must be provided.
- plugin_
id str The ID of the CSI plugin that manages this volume.
- volume_
id str The unique ID of the volume, how jobs will refer to the volume.
- capacity_
max str Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- capacity_
min str Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- clone_
id str The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- mount_
options ExternalVolume Mount Options Args Options for mounting 'block-device' volumes without a pre-formatted file system.
- name str
The display name of the volume.
- namespace str
The namespace in which to create the volume.
- parameters Mapping[str, str]
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- secrets Mapping[str, str]
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- snapshot_
id str The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- type str
The type of the volume. Currently, only 'csi' is supported.
- capabilities List<Property Map>
Capabilities intended to be used in a job. At least one capability must be provided.
- plugin
Id String The ID of the CSI plugin that manages this volume.
- volume
Id String The unique ID of the volume, how jobs will refer to the volume.
- capacity
Max String Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- capacity
Min String Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- clone
Id String The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- mount
Options Property Map Options for mounting 'block-device' volumes without a pre-formatted file system.
- name String
The display name of the volume.
- namespace String
The namespace in which to create the volume.
- parameters Map<String>
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- secrets Map<String>
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- snapshot
Id String The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- type String
The type of the volume. Currently, only 'csi' is supported.
Outputs
All input properties are implicitly available as output properties. Additionally, the ExternalVolume resource produces the following output properties:
- Controller
Required bool - Controllers
Expected int - Controllers
Healthy int - Id string
The provider-assigned unique ID for this managed resource.
- Nodes
Expected int - Nodes
Healthy int - Plugin
Provider string - Plugin
Provider stringVersion - Schedulable bool
- Controller
Required bool - Controllers
Expected int - Controllers
Healthy int - Id string
The provider-assigned unique ID for this managed resource.
- Nodes
Expected int - Nodes
Healthy int - Plugin
Provider string - Plugin
Provider stringVersion - Schedulable bool
- controller
Required Boolean - controllers
Expected Integer - controllers
Healthy Integer - id String
The provider-assigned unique ID for this managed resource.
- nodes
Expected Integer - nodes
Healthy Integer - plugin
Provider String - plugin
Provider StringVersion - schedulable Boolean
- controller
Required boolean - controllers
Expected number - controllers
Healthy number - id string
The provider-assigned unique ID for this managed resource.
- nodes
Expected number - nodes
Healthy number - plugin
Provider string - plugin
Provider stringVersion - schedulable boolean
- controller_
required bool - controllers_
expected int - controllers_
healthy int - id str
The provider-assigned unique ID for this managed resource.
- nodes_
expected int - nodes_
healthy int - plugin_
provider str - plugin_
provider_ strversion - schedulable bool
- controller
Required Boolean - controllers
Expected Number - controllers
Healthy Number - id String
The provider-assigned unique ID for this managed resource.
- nodes
Expected Number - nodes
Healthy Number - plugin
Provider String - plugin
Provider StringVersion - schedulable Boolean
Look up an Existing ExternalVolume Resource
Get an existing ExternalVolume 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?: ExternalVolumeState, opts?: CustomResourceOptions): ExternalVolume
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
capabilities: Optional[Sequence[ExternalVolumeCapabilityArgs]] = None,
capacity_max: Optional[str] = None,
capacity_min: Optional[str] = None,
clone_id: Optional[str] = None,
controller_required: Optional[bool] = None,
controllers_expected: Optional[int] = None,
controllers_healthy: Optional[int] = None,
mount_options: Optional[ExternalVolumeMountOptionsArgs] = 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,
snapshot_id: Optional[str] = None,
type: Optional[str] = None,
volume_id: Optional[str] = None) -> ExternalVolume
func GetExternalVolume(ctx *Context, name string, id IDInput, state *ExternalVolumeState, opts ...ResourceOption) (*ExternalVolume, error)
public static ExternalVolume Get(string name, Input<string> id, ExternalVolumeState? state, CustomResourceOptions? opts = null)
public static ExternalVolume get(String name, Output<String> id, ExternalVolumeState 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.
- Capabilities
List<External
Volume Capability Args> Capabilities intended to be used in a job. At least one capability must be provided.
- Capacity
Max string Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- Capacity
Min string Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- Clone
Id string The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- Controller
Required bool - Controllers
Expected int - Controllers
Healthy int - Mount
Options ExternalVolume Mount Options Args Options for mounting 'block-device' volumes without a pre-formatted file system.
- Name string
The display name of the volume.
- Namespace string
The namespace in which to create the volume.
- Nodes
Expected int - Nodes
Healthy int - Parameters Dictionary<string, string>
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- Plugin
Id string The ID of the CSI plugin that manages this volume.
- Plugin
Provider string - Plugin
Provider stringVersion - Schedulable bool
- Secrets Dictionary<string, string>
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- Snapshot
Id string The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- Type string
The type of the volume. Currently, only 'csi' is supported.
- Volume
Id string The unique ID of the volume, how jobs will refer to the volume.
- Capabilities
[]External
Volume Capability Args Capabilities intended to be used in a job. At least one capability must be provided.
- Capacity
Max string Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- Capacity
Min string Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- Clone
Id string The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- Controller
Required bool - Controllers
Expected int - Controllers
Healthy int - Mount
Options ExternalVolume Mount Options Args Options for mounting 'block-device' volumes without a pre-formatted file system.
- Name string
The display name of the volume.
- Namespace string
The namespace in which to create the volume.
- Nodes
Expected int - Nodes
Healthy int - Parameters map[string]string
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- Plugin
Id string The ID of the CSI plugin that manages this volume.
- Plugin
Provider string - Plugin
Provider stringVersion - Schedulable bool
- Secrets map[string]string
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- Snapshot
Id string The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- Type string
The type of the volume. Currently, only 'csi' is supported.
- Volume
Id string The unique ID of the volume, how jobs will refer to the volume.
- capabilities
List<External
Volume Capability Args> Capabilities intended to be used in a job. At least one capability must be provided.
- capacity
Max String Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- capacity
Min String Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- clone
Id String The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- controller
Required Boolean - controllers
Expected Integer - controllers
Healthy Integer - mount
Options ExternalVolume Mount Options Args Options for mounting 'block-device' volumes without a pre-formatted file system.
- name String
The display name of the volume.
- namespace String
The namespace in which to create the volume.
- nodes
Expected Integer - nodes
Healthy Integer - parameters Map<String,String>
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- plugin
Id String The ID of the CSI plugin that manages this volume.
- plugin
Provider String - plugin
Provider StringVersion - schedulable Boolean
- secrets Map<String,String>
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- snapshot
Id String The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- type String
The type of the volume. Currently, only 'csi' is supported.
- volume
Id String The unique ID of the volume, how jobs will refer to the volume.
- capabilities
External
Volume Capability Args[] Capabilities intended to be used in a job. At least one capability must be provided.
- capacity
Max string Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- capacity
Min string Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- clone
Id string The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- controller
Required boolean - controllers
Expected number - controllers
Healthy number - mount
Options ExternalVolume Mount Options Args Options for mounting 'block-device' volumes without a pre-formatted file system.
- name string
The display name of the volume.
- namespace string
The namespace in which to create the volume.
- nodes
Expected number - nodes
Healthy number - parameters {[key: string]: string}
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- plugin
Id string The ID of the CSI plugin that manages this volume.
- plugin
Provider string - plugin
Provider stringVersion - schedulable boolean
- secrets {[key: string]: string}
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- snapshot
Id string The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- type string
The type of the volume. Currently, only 'csi' is supported.
- volume
Id string The unique ID of the volume, how jobs will refer to the volume.
- capabilities
Sequence[External
Volume Capability Args] Capabilities intended to be used in a job. At least one capability must be provided.
- capacity_
max str Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- capacity_
min str Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- clone_
id str The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- controller_
required bool - controllers_
expected int - controllers_
healthy int - mount_
options ExternalVolume Mount Options Args Options for mounting 'block-device' volumes without a pre-formatted file system.
- name str
The display name of the volume.
- namespace str
The namespace in which to create the volume.
- nodes_
expected int - nodes_
healthy int - parameters Mapping[str, str]
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- plugin_
id str The ID of the CSI plugin that manages this volume.
- plugin_
provider str - plugin_
provider_ strversion - schedulable bool
- secrets Mapping[str, str]
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- snapshot_
id str The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- type str
The type of the volume. Currently, only 'csi' is supported.
- volume_
id str The unique ID of the volume, how jobs will refer to the volume.
- capabilities List<Property Map>
Capabilities intended to be used in a job. At least one capability must be provided.
- capacity
Max String Defines how large the volume can be. The storage provider may return a volume that is smaller than this value.
- capacity
Min String Defines how small the volume can be. The storage provider may return a volume that is larger than this value.
- clone
Id String The volume ID to clone when creating this volume. Storage provider must support cloning. Conflicts with 'snapshot_id'.
- controller
Required Boolean - controllers
Expected Number - controllers
Healthy Number - mount
Options Property Map Options for mounting 'block-device' volumes without a pre-formatted file system.
- name String
The display name of the volume.
- namespace String
The namespace in which to create the volume.
- nodes
Expected Number - nodes
Healthy Number - parameters Map<String>
An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
- plugin
Id String The ID of the CSI plugin that manages this volume.
- plugin
Provider String - plugin
Provider StringVersion - schedulable Boolean
- secrets Map<String>
An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
- snapshot
Id String The snapshot ID to restore when creating this volume. Storage provider must support snapshots. Conflicts with 'clone_id'.
- type String
The type of the volume. Currently, only 'csi' is supported.
- volume
Id String The unique ID of the volume, how jobs will refer to the volume.
Supporting Types
ExternalVolumeCapability
- Access
Mode string - Attachment
Mode string
- Access
Mode string - Attachment
Mode string
- access
Mode String - attachment
Mode String
- access
Mode string - attachment
Mode string
- access_
mode str - attachment_
mode str
- access
Mode String - attachment
Mode String
ExternalVolumeMountOptions
- Fs
Type string - Mount
Flags List<string>
- Fs
Type string - Mount
Flags []string
- fs
Type String - mount
Flags List<String>
- fs
Type string - mount
Flags string[]
- fs_
type str - mount_
flags Sequence[str]
- fs
Type String - mount
Flags List<String>
Package Details
- Repository
- https://github.com/pulumi/pulumi-nomad
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
nomad
Terraform Provider.