pulumi-nomad 2.5.0a1744783739__py3-none-any.whl → 2.5.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. pulumi_nomad/__init__.py +21 -2
  2. pulumi_nomad/_inputs.py +1151 -475
  3. pulumi_nomad/_utilities.py +1 -1
  4. pulumi_nomad/acl_auth_method.py +108 -108
  5. pulumi_nomad/acl_binding_rule.py +88 -88
  6. pulumi_nomad/acl_policy.py +71 -64
  7. pulumi_nomad/acl_role.py +40 -40
  8. pulumi_nomad/acl_token.py +127 -127
  9. pulumi_nomad/config/__init__.py +2 -2
  10. pulumi_nomad/config/__init__.pyi +2 -13
  11. pulumi_nomad/config/outputs.py +10 -11
  12. pulumi_nomad/config/vars.py +15 -30
  13. pulumi_nomad/csi_volume.py +298 -270
  14. pulumi_nomad/csi_volume_registration.py +278 -278
  15. pulumi_nomad/dynamic_host_volume.py +1005 -0
  16. pulumi_nomad/dynamic_host_volume_registration.py +740 -0
  17. pulumi_nomad/external_volume.py +257 -257
  18. pulumi_nomad/get_acl_policies.py +11 -12
  19. pulumi_nomad/get_acl_policy.py +14 -15
  20. pulumi_nomad/get_acl_role.py +13 -14
  21. pulumi_nomad/get_acl_roles.py +11 -12
  22. pulumi_nomad/get_acl_token.py +27 -28
  23. pulumi_nomad/get_acl_tokens.py +11 -12
  24. pulumi_nomad/get_allocations.py +23 -24
  25. pulumi_nomad/get_datacenters.py +18 -19
  26. pulumi_nomad/get_deployments.py +6 -7
  27. pulumi_nomad/get_dynamic_host_volume.py +352 -0
  28. pulumi_nomad/get_job.py +51 -52
  29. pulumi_nomad/get_job_parser.py +18 -19
  30. pulumi_nomad/get_jwks.py +7 -8
  31. pulumi_nomad/get_namespace.py +18 -19
  32. pulumi_nomad/get_namespaces.py +22 -17
  33. pulumi_nomad/get_node_pool.py +15 -16
  34. pulumi_nomad/get_node_pools.py +17 -18
  35. pulumi_nomad/get_plugin.py +37 -38
  36. pulumi_nomad/get_plugins.py +10 -11
  37. pulumi_nomad/get_regions.py +16 -11
  38. pulumi_nomad/get_scaling_policies.py +17 -18
  39. pulumi_nomad/get_scaling_policy.py +20 -21
  40. pulumi_nomad/get_scheduler_policy.py +10 -11
  41. pulumi_nomad/get_variable.py +18 -19
  42. pulumi_nomad/get_volumes.py +30 -31
  43. pulumi_nomad/job.py +247 -357
  44. pulumi_nomad/namespace.py +77 -77
  45. pulumi_nomad/node_pool.py +57 -57
  46. pulumi_nomad/outputs.py +1212 -635
  47. pulumi_nomad/provider.py +141 -180
  48. pulumi_nomad/pulumi-plugin.json +1 -1
  49. pulumi_nomad/quote_specification.py +40 -40
  50. pulumi_nomad/scheduler_config.py +54 -54
  51. pulumi_nomad/sentinel_policy.py +88 -88
  52. pulumi_nomad/variable.py +54 -54
  53. pulumi_nomad/volume.py +274 -274
  54. {pulumi_nomad-2.5.0a1744783739.dist-info → pulumi_nomad-2.5.1.dist-info}/METADATA +3 -3
  55. pulumi_nomad-2.5.1.dist-info/RECORD +58 -0
  56. {pulumi_nomad-2.5.0a1744783739.dist-info → pulumi_nomad-2.5.1.dist-info}/WHEEL +1 -1
  57. pulumi_nomad-2.5.0a1744783739.dist-info/RECORD +0 -55
  58. {pulumi_nomad-2.5.0a1744783739.dist-info → pulumi_nomad-2.5.1.dist-info}/top_level.txt +0 -0
@@ -1,9 +1,8 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import builtins
6
- import copy
5
+ import builtins as _builtins
7
6
  import warnings
8
7
  import sys
9
8
  import pulumi
@@ -41,30 +40,30 @@ class GetDatacentersResult:
41
40
  raise TypeError("Expected argument 'prefix' to be a str")
42
41
  pulumi.set(__self__, "prefix", prefix)
43
42
 
44
- @property
43
+ @_builtins.property
45
44
  @pulumi.getter
46
- def datacenters(self) -> Sequence[builtins.str]:
45
+ def datacenters(self) -> Sequence[_builtins.str]:
47
46
  """
48
47
  `list(string)` a list of datacenters.
49
48
  """
50
49
  return pulumi.get(self, "datacenters")
51
50
 
52
- @property
51
+ @_builtins.property
53
52
  @pulumi.getter
54
- def id(self) -> builtins.str:
53
+ def id(self) -> _builtins.str:
55
54
  """
56
55
  The provider-assigned unique ID for this managed resource.
57
56
  """
58
57
  return pulumi.get(self, "id")
59
58
 
60
- @property
59
+ @_builtins.property
61
60
  @pulumi.getter(name="ignoreDownNodes")
62
- def ignore_down_nodes(self) -> Optional[builtins.bool]:
61
+ def ignore_down_nodes(self) -> Optional[_builtins.bool]:
63
62
  return pulumi.get(self, "ignore_down_nodes")
64
63
 
65
- @property
64
+ @_builtins.property
66
65
  @pulumi.getter
67
- def prefix(self) -> Optional[builtins.str]:
66
+ def prefix(self) -> Optional[_builtins.str]:
68
67
  return pulumi.get(self, "prefix")
69
68
 
70
69
 
@@ -80,8 +79,8 @@ class AwaitableGetDatacentersResult(GetDatacentersResult):
80
79
  prefix=self.prefix)
81
80
 
82
81
 
83
- def get_datacenters(ignore_down_nodes: Optional[builtins.bool] = None,
84
- prefix: Optional[builtins.str] = None,
82
+ def get_datacenters(ignore_down_nodes: Optional[_builtins.bool] = None,
83
+ prefix: Optional[_builtins.str] = None,
85
84
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDatacentersResult:
86
85
  """
87
86
  Retrieve a list of datacenters.
@@ -97,8 +96,8 @@ def get_datacenters(ignore_down_nodes: Optional[builtins.bool] = None,
97
96
  ```
98
97
 
99
98
 
100
- :param builtins.bool ignore_down_nodes: `(bool: false)`: An optional flag that, if set to `true` will ignore down nodes when compiling the list of datacenters.
101
- :param builtins.str prefix: `(string)`: An optional string to filter datacenters based on name prefix. If not provided, all datacenters are returned.
99
+ :param _builtins.bool ignore_down_nodes: `(bool: false)`: An optional flag that, if set to `true` will ignore down nodes when compiling the list of datacenters.
100
+ :param _builtins.str prefix: `(string)`: An optional string to filter datacenters based on name prefix. If not provided, all datacenters are returned.
102
101
  """
103
102
  __args__ = dict()
104
103
  __args__['ignoreDownNodes'] = ignore_down_nodes
@@ -111,8 +110,8 @@ def get_datacenters(ignore_down_nodes: Optional[builtins.bool] = None,
111
110
  id=pulumi.get(__ret__, 'id'),
112
111
  ignore_down_nodes=pulumi.get(__ret__, 'ignore_down_nodes'),
113
112
  prefix=pulumi.get(__ret__, 'prefix'))
114
- def get_datacenters_output(ignore_down_nodes: Optional[pulumi.Input[Optional[builtins.bool]]] = None,
115
- prefix: Optional[pulumi.Input[Optional[builtins.str]]] = None,
113
+ def get_datacenters_output(ignore_down_nodes: Optional[pulumi.Input[Optional[_builtins.bool]]] = None,
114
+ prefix: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
116
115
  opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDatacentersResult]:
117
116
  """
118
117
  Retrieve a list of datacenters.
@@ -128,8 +127,8 @@ def get_datacenters_output(ignore_down_nodes: Optional[pulumi.Input[Optional[bui
128
127
  ```
129
128
 
130
129
 
131
- :param builtins.bool ignore_down_nodes: `(bool: false)`: An optional flag that, if set to `true` will ignore down nodes when compiling the list of datacenters.
132
- :param builtins.str prefix: `(string)`: An optional string to filter datacenters based on name prefix. If not provided, all datacenters are returned.
130
+ :param _builtins.bool ignore_down_nodes: `(bool: false)`: An optional flag that, if set to `true` will ignore down nodes when compiling the list of datacenters.
131
+ :param _builtins.str prefix: `(string)`: An optional string to filter datacenters based on name prefix. If not provided, all datacenters are returned.
133
132
  """
134
133
  __args__ = dict()
135
134
  __args__['ignoreDownNodes'] = ignore_down_nodes
@@ -1,9 +1,8 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import builtins
6
- import copy
5
+ import builtins as _builtins
7
6
  import warnings
8
7
  import sys
9
8
  import pulumi
@@ -35,9 +34,9 @@ class GetDeploymentsResult:
35
34
  raise TypeError("Expected argument 'id' to be a str")
36
35
  pulumi.set(__self__, "id", id)
37
36
 
38
- @property
37
+ @_builtins.property
39
38
  @pulumi.getter
40
- def deployments(self) -> Sequence[Mapping[str, builtins.str]]:
39
+ def deployments(self) -> Sequence[Mapping[str, _builtins.str]]:
41
40
  """
42
41
  `list of maps` a list of deployments in the cluster.
43
42
  * `ID`: `string` Deployment ID.
@@ -48,9 +47,9 @@ class GetDeploymentsResult:
48
47
  """
49
48
  return pulumi.get(self, "deployments")
50
49
 
51
- @property
50
+ @_builtins.property
52
51
  @pulumi.getter
53
- def id(self) -> builtins.str:
52
+ def id(self) -> _builtins.str:
54
53
  """
55
54
  The provider-assigned unique ID for this managed resource.
56
55
  """
@@ -0,0 +1,352 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'GetDynamicHostVolumeResult',
20
+ 'AwaitableGetDynamicHostVolumeResult',
21
+ 'get_dynamic_host_volume',
22
+ 'get_dynamic_host_volume_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetDynamicHostVolumeResult:
27
+ """
28
+ A collection of values returned by getDynamicHostVolume.
29
+ """
30
+ def __init__(__self__, capabilities=None, capacity=None, capacity_bytes=None, capacity_max=None, capacity_max_bytes=None, capacity_min=None, capacity_min_bytes=None, constraints=None, host_path=None, id=None, name=None, namespace=None, node_id=None, node_pool=None, parameters=None, plugin_id=None, state=None):
31
+ if capabilities and not isinstance(capabilities, list):
32
+ raise TypeError("Expected argument 'capabilities' to be a list")
33
+ pulumi.set(__self__, "capabilities", capabilities)
34
+ if capacity and not isinstance(capacity, str):
35
+ raise TypeError("Expected argument 'capacity' to be a str")
36
+ pulumi.set(__self__, "capacity", capacity)
37
+ if capacity_bytes and not isinstance(capacity_bytes, int):
38
+ raise TypeError("Expected argument 'capacity_bytes' to be a int")
39
+ pulumi.set(__self__, "capacity_bytes", capacity_bytes)
40
+ if capacity_max and not isinstance(capacity_max, str):
41
+ raise TypeError("Expected argument 'capacity_max' to be a str")
42
+ pulumi.set(__self__, "capacity_max", capacity_max)
43
+ if capacity_max_bytes and not isinstance(capacity_max_bytes, int):
44
+ raise TypeError("Expected argument 'capacity_max_bytes' to be a int")
45
+ pulumi.set(__self__, "capacity_max_bytes", capacity_max_bytes)
46
+ if capacity_min and not isinstance(capacity_min, str):
47
+ raise TypeError("Expected argument 'capacity_min' to be a str")
48
+ pulumi.set(__self__, "capacity_min", capacity_min)
49
+ if capacity_min_bytes and not isinstance(capacity_min_bytes, int):
50
+ raise TypeError("Expected argument 'capacity_min_bytes' to be a int")
51
+ pulumi.set(__self__, "capacity_min_bytes", capacity_min_bytes)
52
+ if constraints and not isinstance(constraints, list):
53
+ raise TypeError("Expected argument 'constraints' to be a list")
54
+ pulumi.set(__self__, "constraints", constraints)
55
+ if host_path and not isinstance(host_path, str):
56
+ raise TypeError("Expected argument 'host_path' to be a str")
57
+ pulumi.set(__self__, "host_path", host_path)
58
+ if id and not isinstance(id, str):
59
+ raise TypeError("Expected argument 'id' to be a str")
60
+ pulumi.set(__self__, "id", id)
61
+ if name and not isinstance(name, str):
62
+ raise TypeError("Expected argument 'name' to be a str")
63
+ pulumi.set(__self__, "name", name)
64
+ if namespace and not isinstance(namespace, str):
65
+ raise TypeError("Expected argument 'namespace' to be a str")
66
+ pulumi.set(__self__, "namespace", namespace)
67
+ if node_id and not isinstance(node_id, str):
68
+ raise TypeError("Expected argument 'node_id' to be a str")
69
+ pulumi.set(__self__, "node_id", node_id)
70
+ if node_pool and not isinstance(node_pool, str):
71
+ raise TypeError("Expected argument 'node_pool' to be a str")
72
+ pulumi.set(__self__, "node_pool", node_pool)
73
+ if parameters and not isinstance(parameters, dict):
74
+ raise TypeError("Expected argument 'parameters' to be a dict")
75
+ pulumi.set(__self__, "parameters", parameters)
76
+ if plugin_id and not isinstance(plugin_id, str):
77
+ raise TypeError("Expected argument 'plugin_id' to be a str")
78
+ pulumi.set(__self__, "plugin_id", plugin_id)
79
+ if state and not isinstance(state, str):
80
+ raise TypeError("Expected argument 'state' to be a str")
81
+ pulumi.set(__self__, "state", state)
82
+
83
+ @_builtins.property
84
+ @pulumi.getter
85
+ def capabilities(self) -> Sequence['outputs.GetDynamicHostVolumeCapabilityResult']:
86
+ """
87
+ `(block)` - Option for validating the capability of a
88
+ volume. Each capability block has the following attributes:
89
+ """
90
+ return pulumi.get(self, "capabilities")
91
+
92
+ @_builtins.property
93
+ @pulumi.getter
94
+ def capacity(self) -> _builtins.str:
95
+ """
96
+ `(string)` - The size of the volume, in human-friendly format
97
+ (ex. 10 GiB)
98
+ """
99
+ return pulumi.get(self, "capacity")
100
+
101
+ @_builtins.property
102
+ @pulumi.getter(name="capacityBytes")
103
+ def capacity_bytes(self) -> _builtins.int:
104
+ """
105
+ `(int)` - The size of the volume, in bytes.
106
+ """
107
+ return pulumi.get(self, "capacity_bytes")
108
+
109
+ @_builtins.property
110
+ @pulumi.getter(name="capacityMax")
111
+ def capacity_max(self) -> _builtins.str:
112
+ """
113
+ `(string)` - The requested maximum capacity of the volume, in
114
+ human-friendly format (ex. 10 GiB).
115
+ """
116
+ return pulumi.get(self, "capacity_max")
117
+
118
+ @_builtins.property
119
+ @pulumi.getter(name="capacityMaxBytes")
120
+ def capacity_max_bytes(self) -> _builtins.int:
121
+ """
122
+ `(string)` - The requested maximum capacity of the
123
+ volume, in bytes.
124
+ """
125
+ return pulumi.get(self, "capacity_max_bytes")
126
+
127
+ @_builtins.property
128
+ @pulumi.getter(name="capacityMin")
129
+ def capacity_min(self) -> _builtins.str:
130
+ """
131
+ `(string)` - The requested minimum capacity of the volume, in
132
+ human-friendly format (ex. 10 GiB).
133
+ """
134
+ return pulumi.get(self, "capacity_min")
135
+
136
+ @_builtins.property
137
+ @pulumi.getter(name="capacityMinBytes")
138
+ def capacity_min_bytes(self) -> _builtins.int:
139
+ """
140
+ `(string)` - The requested minimum capacity of the
141
+ volume, in bytes.
142
+ """
143
+ return pulumi.get(self, "capacity_min_bytes")
144
+
145
+ @_builtins.property
146
+ @pulumi.getter
147
+ def constraints(self) -> Sequence['outputs.GetDynamicHostVolumeConstraintResult']:
148
+ """
149
+ `(block)` - The restrictions used to place the volume on a node,
150
+ similar to the [`constraint`][] block on a Nomad job specification. A volume
151
+ may have multiple `constraint` blocks. Each constraint block has the following
152
+ attributes.
153
+ """
154
+ return pulumi.get(self, "constraints")
155
+
156
+ @_builtins.property
157
+ @pulumi.getter(name="hostPath")
158
+ def host_path(self) -> _builtins.str:
159
+ """
160
+ `(string)` - The path on disk where the volume exists.
161
+ """
162
+ return pulumi.get(self, "host_path")
163
+
164
+ @_builtins.property
165
+ @pulumi.getter
166
+ def id(self) -> _builtins.str:
167
+ return pulumi.get(self, "id")
168
+
169
+ @_builtins.property
170
+ @pulumi.getter
171
+ def name(self) -> _builtins.str:
172
+ """
173
+ `(string)` - The name of the volume, which is used as the
174
+ [`volume.source`][volume_source] field in job specifications that claim this
175
+ volume. Host volume names are be unique per node. Names are visible to any
176
+ user with `node:read` ACL, even across namespaces, so they should not be
177
+ treated as sensitive values.
178
+ """
179
+ return pulumi.get(self, "name")
180
+
181
+ @_builtins.property
182
+ @pulumi.getter
183
+ def namespace(self) -> Optional[_builtins.str]:
184
+ """
185
+ `(string)` - The namespace of the volume.
186
+ """
187
+ return pulumi.get(self, "namespace")
188
+
189
+ @_builtins.property
190
+ @pulumi.getter(name="nodeId")
191
+ def node_id(self) -> _builtins.str:
192
+ """
193
+ `(string)` - A specific node where the volume is mounted.
194
+ """
195
+ return pulumi.get(self, "node_id")
196
+
197
+ @_builtins.property
198
+ @pulumi.getter(name="nodePool")
199
+ def node_pool(self) -> _builtins.str:
200
+ """
201
+ `(string: <optional>)` - The node pool of the node where the
202
+ volume is mounted.
203
+ """
204
+ return pulumi.get(self, "node_pool")
205
+
206
+ @_builtins.property
207
+ @pulumi.getter
208
+ def parameters(self) -> Mapping[str, _builtins.str]:
209
+ """
210
+ `(map<string|string>)` - A key-value map of strings
211
+ passed directly to the plugin to configure the volume. The details of these
212
+ parameters are specific to the plugin.
213
+ """
214
+ return pulumi.get(self, "parameters")
215
+
216
+ @_builtins.property
217
+ @pulumi.getter(name="pluginId")
218
+ def plugin_id(self) -> _builtins.str:
219
+ """
220
+ `(string: <required>)` - The ID of the [dynamic host volume
221
+ plugin][dhv_plugin] that manages this volume.
222
+ """
223
+ return pulumi.get(self, "plugin_id")
224
+
225
+ @_builtins.property
226
+ @pulumi.getter
227
+ def state(self) -> _builtins.str:
228
+ return pulumi.get(self, "state")
229
+
230
+
231
+ class AwaitableGetDynamicHostVolumeResult(GetDynamicHostVolumeResult):
232
+ # pylint: disable=using-constant-test
233
+ def __await__(self):
234
+ if False:
235
+ yield self
236
+ return GetDynamicHostVolumeResult(
237
+ capabilities=self.capabilities,
238
+ capacity=self.capacity,
239
+ capacity_bytes=self.capacity_bytes,
240
+ capacity_max=self.capacity_max,
241
+ capacity_max_bytes=self.capacity_max_bytes,
242
+ capacity_min=self.capacity_min,
243
+ capacity_min_bytes=self.capacity_min_bytes,
244
+ constraints=self.constraints,
245
+ host_path=self.host_path,
246
+ id=self.id,
247
+ name=self.name,
248
+ namespace=self.namespace,
249
+ node_id=self.node_id,
250
+ node_pool=self.node_pool,
251
+ parameters=self.parameters,
252
+ plugin_id=self.plugin_id,
253
+ state=self.state)
254
+
255
+
256
+ def get_dynamic_host_volume(id: Optional[_builtins.str] = None,
257
+ namespace: Optional[_builtins.str] = None,
258
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDynamicHostVolumeResult:
259
+ """
260
+ Get information on a dynamic host volume from Nomad.
261
+
262
+ ## Example Usage
263
+
264
+ Check for the existing of a host volume:
265
+
266
+ ```python
267
+ import pulumi
268
+ import pulumi_nomad as nomad
269
+
270
+ example = nomad.get_dynamic_host_volume(namespace="prod",
271
+ id="d688ff7a-d299-11ef-ae3c-6f2400953c18")
272
+ ```
273
+
274
+ This will check for a dynamic host volume with the ID
275
+ `d688ff7a-d299-11ef-ae3c-6f2400953c18`.
276
+
277
+
278
+ :param _builtins.str id: `(string)` - the ID of the volume
279
+ :param _builtins.str namespace: `(string)` - the namespace of the volume. Defaults to `"default"`
280
+ """
281
+ __args__ = dict()
282
+ __args__['id'] = id
283
+ __args__['namespace'] = namespace
284
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
285
+ __ret__ = pulumi.runtime.invoke('nomad:index/getDynamicHostVolume:getDynamicHostVolume', __args__, opts=opts, typ=GetDynamicHostVolumeResult).value
286
+
287
+ return AwaitableGetDynamicHostVolumeResult(
288
+ capabilities=pulumi.get(__ret__, 'capabilities'),
289
+ capacity=pulumi.get(__ret__, 'capacity'),
290
+ capacity_bytes=pulumi.get(__ret__, 'capacity_bytes'),
291
+ capacity_max=pulumi.get(__ret__, 'capacity_max'),
292
+ capacity_max_bytes=pulumi.get(__ret__, 'capacity_max_bytes'),
293
+ capacity_min=pulumi.get(__ret__, 'capacity_min'),
294
+ capacity_min_bytes=pulumi.get(__ret__, 'capacity_min_bytes'),
295
+ constraints=pulumi.get(__ret__, 'constraints'),
296
+ host_path=pulumi.get(__ret__, 'host_path'),
297
+ id=pulumi.get(__ret__, 'id'),
298
+ name=pulumi.get(__ret__, 'name'),
299
+ namespace=pulumi.get(__ret__, 'namespace'),
300
+ node_id=pulumi.get(__ret__, 'node_id'),
301
+ node_pool=pulumi.get(__ret__, 'node_pool'),
302
+ parameters=pulumi.get(__ret__, 'parameters'),
303
+ plugin_id=pulumi.get(__ret__, 'plugin_id'),
304
+ state=pulumi.get(__ret__, 'state'))
305
+ def get_dynamic_host_volume_output(id: Optional[pulumi.Input[_builtins.str]] = None,
306
+ namespace: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
307
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDynamicHostVolumeResult]:
308
+ """
309
+ Get information on a dynamic host volume from Nomad.
310
+
311
+ ## Example Usage
312
+
313
+ Check for the existing of a host volume:
314
+
315
+ ```python
316
+ import pulumi
317
+ import pulumi_nomad as nomad
318
+
319
+ example = nomad.get_dynamic_host_volume(namespace="prod",
320
+ id="d688ff7a-d299-11ef-ae3c-6f2400953c18")
321
+ ```
322
+
323
+ This will check for a dynamic host volume with the ID
324
+ `d688ff7a-d299-11ef-ae3c-6f2400953c18`.
325
+
326
+
327
+ :param _builtins.str id: `(string)` - the ID of the volume
328
+ :param _builtins.str namespace: `(string)` - the namespace of the volume. Defaults to `"default"`
329
+ """
330
+ __args__ = dict()
331
+ __args__['id'] = id
332
+ __args__['namespace'] = namespace
333
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
334
+ __ret__ = pulumi.runtime.invoke_output('nomad:index/getDynamicHostVolume:getDynamicHostVolume', __args__, opts=opts, typ=GetDynamicHostVolumeResult)
335
+ return __ret__.apply(lambda __response__: GetDynamicHostVolumeResult(
336
+ capabilities=pulumi.get(__response__, 'capabilities'),
337
+ capacity=pulumi.get(__response__, 'capacity'),
338
+ capacity_bytes=pulumi.get(__response__, 'capacity_bytes'),
339
+ capacity_max=pulumi.get(__response__, 'capacity_max'),
340
+ capacity_max_bytes=pulumi.get(__response__, 'capacity_max_bytes'),
341
+ capacity_min=pulumi.get(__response__, 'capacity_min'),
342
+ capacity_min_bytes=pulumi.get(__response__, 'capacity_min_bytes'),
343
+ constraints=pulumi.get(__response__, 'constraints'),
344
+ host_path=pulumi.get(__response__, 'host_path'),
345
+ id=pulumi.get(__response__, 'id'),
346
+ name=pulumi.get(__response__, 'name'),
347
+ namespace=pulumi.get(__response__, 'namespace'),
348
+ node_id=pulumi.get(__response__, 'node_id'),
349
+ node_pool=pulumi.get(__response__, 'node_pool'),
350
+ parameters=pulumi.get(__response__, 'parameters'),
351
+ plugin_id=pulumi.get(__response__, 'plugin_id'),
352
+ state=pulumi.get(__response__, 'state')))