pulumi-nomad 2.3.0a1710649436__py3-none-any.whl → 2.5.0a1736834448__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 (54) hide show
  1. pulumi_nomad/__init__.py +1 -0
  2. pulumi_nomad/_inputs.py +896 -175
  3. pulumi_nomad/_utilities.py +41 -5
  4. pulumi_nomad/acl_auth_method.py +44 -41
  5. pulumi_nomad/acl_binding_rule.py +5 -0
  6. pulumi_nomad/acl_policy.py +10 -69
  7. pulumi_nomad/acl_role.py +10 -5
  8. pulumi_nomad/acl_token.py +28 -31
  9. pulumi_nomad/config/__init__.pyi +5 -0
  10. pulumi_nomad/config/outputs.py +5 -0
  11. pulumi_nomad/config/vars.py +5 -0
  12. pulumi_nomad/csi_volume.py +21 -88
  13. pulumi_nomad/csi_volume_registration.py +21 -88
  14. pulumi_nomad/external_volume.py +65 -132
  15. pulumi_nomad/get_acl_policies.py +14 -9
  16. pulumi_nomad/get_acl_policy.py +15 -9
  17. pulumi_nomad/get_acl_role.py +15 -9
  18. pulumi_nomad/get_acl_roles.py +14 -9
  19. pulumi_nomad/get_acl_token.py +22 -9
  20. pulumi_nomad/get_acl_tokens.py +14 -9
  21. pulumi_nomad/get_allocations.py +18 -9
  22. pulumi_nomad/get_datacenters.py +20 -13
  23. pulumi_nomad/get_deployments.py +18 -10
  24. pulumi_nomad/get_job.py +34 -9
  25. pulumi_nomad/get_job_parser.py +16 -29
  26. pulumi_nomad/get_jwks.py +124 -0
  27. pulumi_nomad/get_namespace.py +18 -9
  28. pulumi_nomad/get_namespaces.py +14 -9
  29. pulumi_nomad/get_node_pool.py +16 -9
  30. pulumi_nomad/get_node_pools.py +16 -9
  31. pulumi_nomad/get_plugin.py +25 -9
  32. pulumi_nomad/get_plugins.py +15 -10
  33. pulumi_nomad/get_regions.py +46 -5
  34. pulumi_nomad/get_scaling_policies.py +16 -9
  35. pulumi_nomad/get_scaling_policy.py +19 -10
  36. pulumi_nomad/get_scheduler_policy.py +14 -9
  37. pulumi_nomad/get_variable.py +17 -10
  38. pulumi_nomad/get_volumes.py +21 -10
  39. pulumi_nomad/job.py +22 -88
  40. pulumi_nomad/namespace.py +43 -40
  41. pulumi_nomad/node_pool.py +12 -9
  42. pulumi_nomad/outputs.py +293 -165
  43. pulumi_nomad/provider.py +8 -3
  44. pulumi_nomad/pulumi-plugin.json +2 -1
  45. pulumi_nomad/quote_specification.py +28 -25
  46. pulumi_nomad/scheduler_config.py +11 -10
  47. pulumi_nomad/sentinel_policy.py +11 -10
  48. pulumi_nomad/variable.py +33 -32
  49. pulumi_nomad/volume.py +73 -152
  50. {pulumi_nomad-2.3.0a1710649436.dist-info → pulumi_nomad-2.5.0a1736834448.dist-info}/METADATA +7 -6
  51. pulumi_nomad-2.5.0a1736834448.dist-info/RECORD +55 -0
  52. {pulumi_nomad-2.3.0a1710649436.dist-info → pulumi_nomad-2.5.0a1736834448.dist-info}/WHEEL +1 -1
  53. pulumi_nomad-2.3.0a1710649436.dist-info/RECORD +0 -54
  54. {pulumi_nomad-2.3.0a1710649436.dist-info → pulumi_nomad-2.5.0a1736834448.dist-info}/top_level.txt +0 -0
pulumi_nomad/volume.py CHANGED
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
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
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -126,6 +131,7 @@ class VolumeArgs:
126
131
 
127
132
  @property
128
133
  @pulumi.getter(name="accessMode")
134
+ @_utilities.deprecated("""use capability instead""")
129
135
  def access_mode(self) -> Optional[pulumi.Input[str]]:
130
136
  """
131
137
  `(string: <optional>)` - **Deprecated**. Use `capability` block instead. Defines whether a volume should be available concurrently. Possible values are:
@@ -135,9 +141,6 @@ class VolumeArgs:
135
141
  - `multi-node-single-writer`
136
142
  - `multi-node-multi-writer`
137
143
  """
138
- warnings.warn("""use capability instead""", DeprecationWarning)
139
- pulumi.log.warn("""access_mode is deprecated: use capability instead""")
140
-
141
144
  return pulumi.get(self, "access_mode")
142
145
 
143
146
  @access_mode.setter
@@ -146,13 +149,11 @@ class VolumeArgs:
146
149
 
147
150
  @property
148
151
  @pulumi.getter(name="attachmentMode")
152
+ @_utilities.deprecated("""use capability instead""")
149
153
  def attachment_mode(self) -> Optional[pulumi.Input[str]]:
150
154
  """
151
155
  `(string: <otional>)` - **Deprecated**. Use `capability` block instead. The storage API that will be used by the volume.
152
156
  """
153
- warnings.warn("""use capability instead""", DeprecationWarning)
154
- pulumi.log.warn("""attachment_mode is deprecated: use capability instead""")
155
-
156
157
  return pulumi.get(self, "attachment_mode")
157
158
 
158
159
  @attachment_mode.setter
@@ -318,23 +319,14 @@ class _VolumeState:
318
319
  :param pulumi.Input[str] attachment_mode: `(string: <otional>)` - **Deprecated**. Use `capability` block instead. The storage API that will be used by the volume.
319
320
  :param pulumi.Input[Sequence[pulumi.Input['VolumeCapabilityArgs']]] capabilities: `(``Capability``: <required>)` - Options for validating the capability of a volume.
320
321
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] context: `(map[string]string: <optional>)` - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
321
- :param pulumi.Input[bool] controller_required: `(boolean)`
322
- :param pulumi.Input[int] controllers_expected: `(integer)`
323
- :param pulumi.Input[int] controllers_healthy: `(integer)`
324
322
  :param pulumi.Input[bool] deregister_on_destroy: `(boolean: true)` - If true, the volume will be deregistered on destroy.
325
323
  :param pulumi.Input[str] external_id: `(string: <required>)` - The ID of the physical volume from the storage provider.
326
324
  :param pulumi.Input['VolumeMountOptionsArgs'] mount_options: `(block: <optional>)` Options for mounting `block-device` volumes without a pre-formatted file system.
327
325
  :param pulumi.Input[str] name: `(string: <required>)` - The display name for the volume.
328
326
  :param pulumi.Input[str] namespace: `(string: "default")` - The namespace in which to register the volume.
329
- :param pulumi.Input[int] nodes_expected: `(integer)`
330
- :param pulumi.Input[int] nodes_healthy: `(integer)`
331
327
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: `(map[string]string: <optional>)` - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
332
328
  :param pulumi.Input[str] plugin_id: `(string: <required>)` - The ID of the Nomad plugin for registering this volume.
333
- :param pulumi.Input[str] plugin_provider: `(string)`
334
- :param pulumi.Input[str] plugin_provider_version: `(string)`
335
- :param pulumi.Input[bool] schedulable: `(boolean)`
336
329
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] secrets: `(map[string]string: <optional>)` - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
337
- :param pulumi.Input[Sequence[pulumi.Input['VolumeTopologyArgs']]] topologies: `(List of topologies)`
338
330
  :param pulumi.Input['VolumeTopologyRequestArgs'] topology_request: `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
339
331
  :param pulumi.Input[str] type: `(string: <required>)` - The type of the volume. Currently, only `csi` is supported.
340
332
  :param pulumi.Input[str] volume_id: `(string: <required>)` - The unique ID of the volume.
@@ -396,6 +388,7 @@ class _VolumeState:
396
388
 
397
389
  @property
398
390
  @pulumi.getter(name="accessMode")
391
+ @_utilities.deprecated("""use capability instead""")
399
392
  def access_mode(self) -> Optional[pulumi.Input[str]]:
400
393
  """
401
394
  `(string: <optional>)` - **Deprecated**. Use `capability` block instead. Defines whether a volume should be available concurrently. Possible values are:
@@ -405,9 +398,6 @@ class _VolumeState:
405
398
  - `multi-node-single-writer`
406
399
  - `multi-node-multi-writer`
407
400
  """
408
- warnings.warn("""use capability instead""", DeprecationWarning)
409
- pulumi.log.warn("""access_mode is deprecated: use capability instead""")
410
-
411
401
  return pulumi.get(self, "access_mode")
412
402
 
413
403
  @access_mode.setter
@@ -416,13 +406,11 @@ class _VolumeState:
416
406
 
417
407
  @property
418
408
  @pulumi.getter(name="attachmentMode")
409
+ @_utilities.deprecated("""use capability instead""")
419
410
  def attachment_mode(self) -> Optional[pulumi.Input[str]]:
420
411
  """
421
412
  `(string: <otional>)` - **Deprecated**. Use `capability` block instead. The storage API that will be used by the volume.
422
413
  """
423
- warnings.warn("""use capability instead""", DeprecationWarning)
424
- pulumi.log.warn("""attachment_mode is deprecated: use capability instead""")
425
-
426
414
  return pulumi.get(self, "attachment_mode")
427
415
 
428
416
  @attachment_mode.setter
@@ -456,9 +444,6 @@ class _VolumeState:
456
444
  @property
457
445
  @pulumi.getter(name="controllerRequired")
458
446
  def controller_required(self) -> Optional[pulumi.Input[bool]]:
459
- """
460
- `(boolean)`
461
- """
462
447
  return pulumi.get(self, "controller_required")
463
448
 
464
449
  @controller_required.setter
@@ -468,9 +453,6 @@ class _VolumeState:
468
453
  @property
469
454
  @pulumi.getter(name="controllersExpected")
470
455
  def controllers_expected(self) -> Optional[pulumi.Input[int]]:
471
- """
472
- `(integer)`
473
- """
474
456
  return pulumi.get(self, "controllers_expected")
475
457
 
476
458
  @controllers_expected.setter
@@ -480,9 +462,6 @@ class _VolumeState:
480
462
  @property
481
463
  @pulumi.getter(name="controllersHealthy")
482
464
  def controllers_healthy(self) -> Optional[pulumi.Input[int]]:
483
- """
484
- `(integer)`
485
- """
486
465
  return pulumi.get(self, "controllers_healthy")
487
466
 
488
467
  @controllers_healthy.setter
@@ -552,9 +531,6 @@ class _VolumeState:
552
531
  @property
553
532
  @pulumi.getter(name="nodesExpected")
554
533
  def nodes_expected(self) -> Optional[pulumi.Input[int]]:
555
- """
556
- `(integer)`
557
- """
558
534
  return pulumi.get(self, "nodes_expected")
559
535
 
560
536
  @nodes_expected.setter
@@ -564,9 +540,6 @@ class _VolumeState:
564
540
  @property
565
541
  @pulumi.getter(name="nodesHealthy")
566
542
  def nodes_healthy(self) -> Optional[pulumi.Input[int]]:
567
- """
568
- `(integer)`
569
- """
570
543
  return pulumi.get(self, "nodes_healthy")
571
544
 
572
545
  @nodes_healthy.setter
@@ -600,9 +573,6 @@ class _VolumeState:
600
573
  @property
601
574
  @pulumi.getter(name="pluginProvider")
602
575
  def plugin_provider(self) -> Optional[pulumi.Input[str]]:
603
- """
604
- `(string)`
605
- """
606
576
  return pulumi.get(self, "plugin_provider")
607
577
 
608
578
  @plugin_provider.setter
@@ -612,9 +582,6 @@ class _VolumeState:
612
582
  @property
613
583
  @pulumi.getter(name="pluginProviderVersion")
614
584
  def plugin_provider_version(self) -> Optional[pulumi.Input[str]]:
615
- """
616
- `(string)`
617
- """
618
585
  return pulumi.get(self, "plugin_provider_version")
619
586
 
620
587
  @plugin_provider_version.setter
@@ -624,9 +591,6 @@ class _VolumeState:
624
591
  @property
625
592
  @pulumi.getter
626
593
  def schedulable(self) -> Optional[pulumi.Input[bool]]:
627
- """
628
- `(boolean)`
629
- """
630
594
  return pulumi.get(self, "schedulable")
631
595
 
632
596
  @schedulable.setter
@@ -648,9 +612,6 @@ class _VolumeState:
648
612
  @property
649
613
  @pulumi.getter
650
614
  def topologies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VolumeTopologyArgs']]]]:
651
- """
652
- `(List of topologies)`
653
- """
654
615
  return pulumi.get(self, "topologies")
655
616
 
656
617
  @topologies.setter
@@ -701,17 +662,17 @@ class Volume(pulumi.CustomResource):
701
662
  opts: Optional[pulumi.ResourceOptions] = None,
702
663
  access_mode: Optional[pulumi.Input[str]] = None,
703
664
  attachment_mode: Optional[pulumi.Input[str]] = None,
704
- capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeCapabilityArgs']]]]] = None,
665
+ capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VolumeCapabilityArgs', 'VolumeCapabilityArgsDict']]]]] = None,
705
666
  context: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
706
667
  deregister_on_destroy: Optional[pulumi.Input[bool]] = None,
707
668
  external_id: Optional[pulumi.Input[str]] = None,
708
- mount_options: Optional[pulumi.Input[pulumi.InputType['VolumeMountOptionsArgs']]] = None,
669
+ mount_options: Optional[pulumi.Input[Union['VolumeMountOptionsArgs', 'VolumeMountOptionsArgsDict']]] = None,
709
670
  name: Optional[pulumi.Input[str]] = None,
710
671
  namespace: Optional[pulumi.Input[str]] = None,
711
672
  parameters: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
712
673
  plugin_id: Optional[pulumi.Input[str]] = None,
713
674
  secrets: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
714
- topology_request: Optional[pulumi.Input[pulumi.InputType['VolumeTopologyRequestArgs']]] = None,
675
+ topology_request: Optional[pulumi.Input[Union['VolumeTopologyRequestArgs', 'VolumeTopologyRequestArgsDict']]] = None,
715
676
  type: Optional[pulumi.Input[str]] = None,
716
677
  volume_id: Optional[pulumi.Input[str]] = None,
717
678
  __props__=None):
@@ -720,45 +681,45 @@ class Volume(pulumi.CustomResource):
720
681
 
721
682
  Registering a volume:
722
683
 
723
- <!--Start PulumiCodeChooser -->
724
684
  ```python
725
685
  import pulumi
726
686
  import pulumi_nomad as nomad
727
687
 
688
+ # It can sometimes be helpful to wait for a particular plugin to be available
728
689
  ebs = nomad.get_plugin(plugin_id="aws-ebs0",
729
690
  wait_for_healthy=True)
730
- mysql_volume = nomad.Volume("mysqlVolume",
691
+ mysql_volume = nomad.Volume("mysql_volume",
731
692
  type="csi",
732
693
  plugin_id="aws-ebs0",
733
694
  volume_id="mysql_volume",
734
- external_id=module["hashistack"]["ebs_test_volume_id"],
735
- capabilities=[nomad.VolumeCapabilityArgs(
736
- access_mode="single-node-writer",
737
- attachment_mode="file-system",
738
- )],
739
- mount_options=nomad.VolumeMountOptionsArgs(
740
- fs_type="ext4",
741
- ),
742
- topology_request=nomad.VolumeTopologyRequestArgs(
743
- required=nomad.VolumeTopologyRequestRequiredArgs(
744
- topologies=[
745
- nomad.VolumeTopologyRequestRequiredTopologyArgs(
746
- segments={
695
+ name="mysql_volume",
696
+ external_id=hashistack["ebsTestVolumeId"],
697
+ capabilities=[{
698
+ "access_mode": "single-node-writer",
699
+ "attachment_mode": "file-system",
700
+ }],
701
+ mount_options={
702
+ "fs_type": "ext4",
703
+ },
704
+ topology_request={
705
+ "required": {
706
+ "topologies": [
707
+ {
708
+ "segments": {
747
709
  "rack": "R1",
748
710
  "zone": "us-east-1a",
749
711
  },
750
- ),
751
- nomad.VolumeTopologyRequestRequiredTopologyArgs(
752
- segments={
712
+ },
713
+ {
714
+ "segments": {
753
715
  "rack": "R2",
754
716
  },
755
- ),
717
+ },
756
718
  ],
757
- ),
758
- ),
759
- opts=pulumi.ResourceOptions(depends_on=[ebs]))
719
+ },
720
+ },
721
+ opts = pulumi.ResourceOptions(depends_on=[ebs]))
760
722
  ```
761
- <!--End PulumiCodeChooser -->
762
723
 
763
724
  :param str resource_name: The name of the resource.
764
725
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -769,17 +730,17 @@ class Volume(pulumi.CustomResource):
769
730
  - `multi-node-single-writer`
770
731
  - `multi-node-multi-writer`
771
732
  :param pulumi.Input[str] attachment_mode: `(string: <otional>)` - **Deprecated**. Use `capability` block instead. The storage API that will be used by the volume.
772
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeCapabilityArgs']]]] capabilities: `(``Capability``: <required>)` - Options for validating the capability of a volume.
733
+ :param pulumi.Input[Sequence[pulumi.Input[Union['VolumeCapabilityArgs', 'VolumeCapabilityArgsDict']]]] capabilities: `(``Capability``: <required>)` - Options for validating the capability of a volume.
773
734
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] context: `(map[string]string: <optional>)` - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
774
735
  :param pulumi.Input[bool] deregister_on_destroy: `(boolean: true)` - If true, the volume will be deregistered on destroy.
775
736
  :param pulumi.Input[str] external_id: `(string: <required>)` - The ID of the physical volume from the storage provider.
776
- :param pulumi.Input[pulumi.InputType['VolumeMountOptionsArgs']] mount_options: `(block: <optional>)` Options for mounting `block-device` volumes without a pre-formatted file system.
737
+ :param pulumi.Input[Union['VolumeMountOptionsArgs', 'VolumeMountOptionsArgsDict']] mount_options: `(block: <optional>)` Options for mounting `block-device` volumes without a pre-formatted file system.
777
738
  :param pulumi.Input[str] name: `(string: <required>)` - The display name for the volume.
778
739
  :param pulumi.Input[str] namespace: `(string: "default")` - The namespace in which to register the volume.
779
740
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: `(map[string]string: <optional>)` - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
780
741
  :param pulumi.Input[str] plugin_id: `(string: <required>)` - The ID of the Nomad plugin for registering this volume.
781
742
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] secrets: `(map[string]string: <optional>)` - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
782
- :param pulumi.Input[pulumi.InputType['VolumeTopologyRequestArgs']] topology_request: `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
743
+ :param pulumi.Input[Union['VolumeTopologyRequestArgs', 'VolumeTopologyRequestArgsDict']] topology_request: `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
783
744
  :param pulumi.Input[str] type: `(string: <required>)` - The type of the volume. Currently, only `csi` is supported.
784
745
  :param pulumi.Input[str] volume_id: `(string: <required>)` - The unique ID of the volume.
785
746
  """
@@ -794,45 +755,45 @@ class Volume(pulumi.CustomResource):
794
755
 
795
756
  Registering a volume:
796
757
 
797
- <!--Start PulumiCodeChooser -->
798
758
  ```python
799
759
  import pulumi
800
760
  import pulumi_nomad as nomad
801
761
 
762
+ # It can sometimes be helpful to wait for a particular plugin to be available
802
763
  ebs = nomad.get_plugin(plugin_id="aws-ebs0",
803
764
  wait_for_healthy=True)
804
- mysql_volume = nomad.Volume("mysqlVolume",
765
+ mysql_volume = nomad.Volume("mysql_volume",
805
766
  type="csi",
806
767
  plugin_id="aws-ebs0",
807
768
  volume_id="mysql_volume",
808
- external_id=module["hashistack"]["ebs_test_volume_id"],
809
- capabilities=[nomad.VolumeCapabilityArgs(
810
- access_mode="single-node-writer",
811
- attachment_mode="file-system",
812
- )],
813
- mount_options=nomad.VolumeMountOptionsArgs(
814
- fs_type="ext4",
815
- ),
816
- topology_request=nomad.VolumeTopologyRequestArgs(
817
- required=nomad.VolumeTopologyRequestRequiredArgs(
818
- topologies=[
819
- nomad.VolumeTopologyRequestRequiredTopologyArgs(
820
- segments={
769
+ name="mysql_volume",
770
+ external_id=hashistack["ebsTestVolumeId"],
771
+ capabilities=[{
772
+ "access_mode": "single-node-writer",
773
+ "attachment_mode": "file-system",
774
+ }],
775
+ mount_options={
776
+ "fs_type": "ext4",
777
+ },
778
+ topology_request={
779
+ "required": {
780
+ "topologies": [
781
+ {
782
+ "segments": {
821
783
  "rack": "R1",
822
784
  "zone": "us-east-1a",
823
785
  },
824
- ),
825
- nomad.VolumeTopologyRequestRequiredTopologyArgs(
826
- segments={
786
+ },
787
+ {
788
+ "segments": {
827
789
  "rack": "R2",
828
790
  },
829
- ),
791
+ },
830
792
  ],
831
- ),
832
- ),
833
- opts=pulumi.ResourceOptions(depends_on=[ebs]))
793
+ },
794
+ },
795
+ opts = pulumi.ResourceOptions(depends_on=[ebs]))
834
796
  ```
835
- <!--End PulumiCodeChooser -->
836
797
 
837
798
  :param str resource_name: The name of the resource.
838
799
  :param VolumeArgs args: The arguments to use to populate this resource's properties.
@@ -851,17 +812,17 @@ class Volume(pulumi.CustomResource):
851
812
  opts: Optional[pulumi.ResourceOptions] = None,
852
813
  access_mode: Optional[pulumi.Input[str]] = None,
853
814
  attachment_mode: Optional[pulumi.Input[str]] = None,
854
- capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeCapabilityArgs']]]]] = None,
815
+ capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VolumeCapabilityArgs', 'VolumeCapabilityArgsDict']]]]] = None,
855
816
  context: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
856
817
  deregister_on_destroy: Optional[pulumi.Input[bool]] = None,
857
818
  external_id: Optional[pulumi.Input[str]] = None,
858
- mount_options: Optional[pulumi.Input[pulumi.InputType['VolumeMountOptionsArgs']]] = None,
819
+ mount_options: Optional[pulumi.Input[Union['VolumeMountOptionsArgs', 'VolumeMountOptionsArgsDict']]] = None,
859
820
  name: Optional[pulumi.Input[str]] = None,
860
821
  namespace: Optional[pulumi.Input[str]] = None,
861
822
  parameters: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
862
823
  plugin_id: Optional[pulumi.Input[str]] = None,
863
824
  secrets: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
864
- topology_request: Optional[pulumi.Input[pulumi.InputType['VolumeTopologyRequestArgs']]] = None,
825
+ topology_request: Optional[pulumi.Input[Union['VolumeTopologyRequestArgs', 'VolumeTopologyRequestArgsDict']]] = None,
865
826
  type: Optional[pulumi.Input[str]] = None,
866
827
  volume_id: Optional[pulumi.Input[str]] = None,
867
828
  __props__=None):
@@ -917,14 +878,14 @@ class Volume(pulumi.CustomResource):
917
878
  opts: Optional[pulumi.ResourceOptions] = None,
918
879
  access_mode: Optional[pulumi.Input[str]] = None,
919
880
  attachment_mode: Optional[pulumi.Input[str]] = None,
920
- capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeCapabilityArgs']]]]] = None,
881
+ capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VolumeCapabilityArgs', 'VolumeCapabilityArgsDict']]]]] = None,
921
882
  context: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
922
883
  controller_required: Optional[pulumi.Input[bool]] = None,
923
884
  controllers_expected: Optional[pulumi.Input[int]] = None,
924
885
  controllers_healthy: Optional[pulumi.Input[int]] = None,
925
886
  deregister_on_destroy: Optional[pulumi.Input[bool]] = None,
926
887
  external_id: Optional[pulumi.Input[str]] = None,
927
- mount_options: Optional[pulumi.Input[pulumi.InputType['VolumeMountOptionsArgs']]] = None,
888
+ mount_options: Optional[pulumi.Input[Union['VolumeMountOptionsArgs', 'VolumeMountOptionsArgsDict']]] = None,
928
889
  name: Optional[pulumi.Input[str]] = None,
929
890
  namespace: Optional[pulumi.Input[str]] = None,
930
891
  nodes_expected: Optional[pulumi.Input[int]] = None,
@@ -935,8 +896,8 @@ class Volume(pulumi.CustomResource):
935
896
  plugin_provider_version: Optional[pulumi.Input[str]] = None,
936
897
  schedulable: Optional[pulumi.Input[bool]] = None,
937
898
  secrets: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
938
- topologies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeTopologyArgs']]]]] = None,
939
- topology_request: Optional[pulumi.Input[pulumi.InputType['VolumeTopologyRequestArgs']]] = None,
899
+ topologies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VolumeTopologyArgs', 'VolumeTopologyArgsDict']]]]] = None,
900
+ topology_request: Optional[pulumi.Input[Union['VolumeTopologyRequestArgs', 'VolumeTopologyRequestArgsDict']]] = None,
940
901
  type: Optional[pulumi.Input[str]] = None,
941
902
  volume_id: Optional[pulumi.Input[str]] = None) -> 'Volume':
942
903
  """
@@ -953,26 +914,17 @@ class Volume(pulumi.CustomResource):
953
914
  - `multi-node-single-writer`
954
915
  - `multi-node-multi-writer`
955
916
  :param pulumi.Input[str] attachment_mode: `(string: <otional>)` - **Deprecated**. Use `capability` block instead. The storage API that will be used by the volume.
956
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeCapabilityArgs']]]] capabilities: `(``Capability``: <required>)` - Options for validating the capability of a volume.
917
+ :param pulumi.Input[Sequence[pulumi.Input[Union['VolumeCapabilityArgs', 'VolumeCapabilityArgsDict']]]] capabilities: `(``Capability``: <required>)` - Options for validating the capability of a volume.
957
918
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] context: `(map[string]string: <optional>)` - An optional key-value map of strings passed directly to the CSI plugin to validate the volume.
958
- :param pulumi.Input[bool] controller_required: `(boolean)`
959
- :param pulumi.Input[int] controllers_expected: `(integer)`
960
- :param pulumi.Input[int] controllers_healthy: `(integer)`
961
919
  :param pulumi.Input[bool] deregister_on_destroy: `(boolean: true)` - If true, the volume will be deregistered on destroy.
962
920
  :param pulumi.Input[str] external_id: `(string: <required>)` - The ID of the physical volume from the storage provider.
963
- :param pulumi.Input[pulumi.InputType['VolumeMountOptionsArgs']] mount_options: `(block: <optional>)` Options for mounting `block-device` volumes without a pre-formatted file system.
921
+ :param pulumi.Input[Union['VolumeMountOptionsArgs', 'VolumeMountOptionsArgsDict']] mount_options: `(block: <optional>)` Options for mounting `block-device` volumes without a pre-formatted file system.
964
922
  :param pulumi.Input[str] name: `(string: <required>)` - The display name for the volume.
965
923
  :param pulumi.Input[str] namespace: `(string: "default")` - The namespace in which to register the volume.
966
- :param pulumi.Input[int] nodes_expected: `(integer)`
967
- :param pulumi.Input[int] nodes_healthy: `(integer)`
968
924
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] parameters: `(map[string]string: <optional>)` - An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
969
925
  :param pulumi.Input[str] plugin_id: `(string: <required>)` - The ID of the Nomad plugin for registering this volume.
970
- :param pulumi.Input[str] plugin_provider: `(string)`
971
- :param pulumi.Input[str] plugin_provider_version: `(string)`
972
- :param pulumi.Input[bool] schedulable: `(boolean)`
973
926
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] secrets: `(map[string]string: <optional>)` - An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
974
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VolumeTopologyArgs']]]] topologies: `(List of topologies)`
975
- :param pulumi.Input[pulumi.InputType['VolumeTopologyRequestArgs']] topology_request: `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
927
+ :param pulumi.Input[Union['VolumeTopologyRequestArgs', 'VolumeTopologyRequestArgsDict']] topology_request: `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
976
928
  :param pulumi.Input[str] type: `(string: <required>)` - The type of the volume. Currently, only `csi` is supported.
977
929
  :param pulumi.Input[str] volume_id: `(string: <required>)` - The unique ID of the volume.
978
930
  """
@@ -1008,6 +960,7 @@ class Volume(pulumi.CustomResource):
1008
960
 
1009
961
  @property
1010
962
  @pulumi.getter(name="accessMode")
963
+ @_utilities.deprecated("""use capability instead""")
1011
964
  def access_mode(self) -> pulumi.Output[Optional[str]]:
1012
965
  """
1013
966
  `(string: <optional>)` - **Deprecated**. Use `capability` block instead. Defines whether a volume should be available concurrently. Possible values are:
@@ -1017,20 +970,15 @@ class Volume(pulumi.CustomResource):
1017
970
  - `multi-node-single-writer`
1018
971
  - `multi-node-multi-writer`
1019
972
  """
1020
- warnings.warn("""use capability instead""", DeprecationWarning)
1021
- pulumi.log.warn("""access_mode is deprecated: use capability instead""")
1022
-
1023
973
  return pulumi.get(self, "access_mode")
1024
974
 
1025
975
  @property
1026
976
  @pulumi.getter(name="attachmentMode")
977
+ @_utilities.deprecated("""use capability instead""")
1027
978
  def attachment_mode(self) -> pulumi.Output[Optional[str]]:
1028
979
  """
1029
980
  `(string: <otional>)` - **Deprecated**. Use `capability` block instead. The storage API that will be used by the volume.
1030
981
  """
1031
- warnings.warn("""use capability instead""", DeprecationWarning)
1032
- pulumi.log.warn("""attachment_mode is deprecated: use capability instead""")
1033
-
1034
982
  return pulumi.get(self, "attachment_mode")
1035
983
 
1036
984
  @property
@@ -1052,25 +1000,16 @@ class Volume(pulumi.CustomResource):
1052
1000
  @property
1053
1001
  @pulumi.getter(name="controllerRequired")
1054
1002
  def controller_required(self) -> pulumi.Output[bool]:
1055
- """
1056
- `(boolean)`
1057
- """
1058
1003
  return pulumi.get(self, "controller_required")
1059
1004
 
1060
1005
  @property
1061
1006
  @pulumi.getter(name="controllersExpected")
1062
1007
  def controllers_expected(self) -> pulumi.Output[int]:
1063
- """
1064
- `(integer)`
1065
- """
1066
1008
  return pulumi.get(self, "controllers_expected")
1067
1009
 
1068
1010
  @property
1069
1011
  @pulumi.getter(name="controllersHealthy")
1070
1012
  def controllers_healthy(self) -> pulumi.Output[int]:
1071
- """
1072
- `(integer)`
1073
- """
1074
1013
  return pulumi.get(self, "controllers_healthy")
1075
1014
 
1076
1015
  @property
@@ -1116,17 +1055,11 @@ class Volume(pulumi.CustomResource):
1116
1055
  @property
1117
1056
  @pulumi.getter(name="nodesExpected")
1118
1057
  def nodes_expected(self) -> pulumi.Output[int]:
1119
- """
1120
- `(integer)`
1121
- """
1122
1058
  return pulumi.get(self, "nodes_expected")
1123
1059
 
1124
1060
  @property
1125
1061
  @pulumi.getter(name="nodesHealthy")
1126
1062
  def nodes_healthy(self) -> pulumi.Output[int]:
1127
- """
1128
- `(integer)`
1129
- """
1130
1063
  return pulumi.get(self, "nodes_healthy")
1131
1064
 
1132
1065
  @property
@@ -1148,25 +1081,16 @@ class Volume(pulumi.CustomResource):
1148
1081
  @property
1149
1082
  @pulumi.getter(name="pluginProvider")
1150
1083
  def plugin_provider(self) -> pulumi.Output[str]:
1151
- """
1152
- `(string)`
1153
- """
1154
1084
  return pulumi.get(self, "plugin_provider")
1155
1085
 
1156
1086
  @property
1157
1087
  @pulumi.getter(name="pluginProviderVersion")
1158
1088
  def plugin_provider_version(self) -> pulumi.Output[str]:
1159
- """
1160
- `(string)`
1161
- """
1162
1089
  return pulumi.get(self, "plugin_provider_version")
1163
1090
 
1164
1091
  @property
1165
1092
  @pulumi.getter
1166
1093
  def schedulable(self) -> pulumi.Output[bool]:
1167
- """
1168
- `(boolean)`
1169
- """
1170
1094
  return pulumi.get(self, "schedulable")
1171
1095
 
1172
1096
  @property
@@ -1180,9 +1104,6 @@ class Volume(pulumi.CustomResource):
1180
1104
  @property
1181
1105
  @pulumi.getter
1182
1106
  def topologies(self) -> pulumi.Output[Sequence['outputs.VolumeTopology']]:
1183
- """
1184
- `(List of topologies)`
1185
- """
1186
1107
  return pulumi.get(self, "topologies")
1187
1108
 
1188
1109
  @property
@@ -1,16 +1,17 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: pulumi_nomad
3
- Version: 2.3.0a1710649436
3
+ Version: 2.5.0a1736834448
4
4
  Summary: A Pulumi package for creating and managing nomad cloud resources.
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://pulumi.io
7
7
  Project-URL: Repository, https://github.com/pulumi/pulumi-nomad
8
8
  Keywords: pulumi,nomad
9
- Requires-Python: >=3.8
9
+ Requires-Python: >=3.9
10
10
  Description-Content-Type: text/markdown
11
- Requires-Dist: parver >=0.2.1
12
- Requires-Dist: pulumi <4.0.0,>=3.0.0
13
- Requires-Dist: semver >=2.8.1
11
+ Requires-Dist: parver>=0.2.1
12
+ Requires-Dist: pulumi<4.0.0,>=3.142.0
13
+ Requires-Dist: semver>=2.8.1
14
+ Requires-Dist: typing-extensions>=4.11; python_version < "3.11"
14
15
 
15
16
  [![Actions Status](https://github.com/pulumi/pulumi-nomad/workflows/master/badge.svg)](https://github.com/pulumi/pulumi-nomad/actions)
16
17
  [![Slack](http://www.pulumi.com/images/docs/badges/slack.svg)](https://slack.pulumi.com)
@@ -0,0 +1,55 @@
1
+ pulumi_nomad/__init__.py,sha256=1DS6wdOPeFhuGq-lUYG1tHqsPNoxIJT2IWHBlaNeRCA,4356
2
+ pulumi_nomad/_inputs.py,sha256=mwfcjsP32ejso1JvknhuH8lMjr1I9N6YElHg2tuuX5I,100573
3
+ pulumi_nomad/_utilities.py,sha256=-gxwnD6__OYdSf8jJgJijNuu-UHUwi5pJ1H7-eIHDhg,10504
4
+ pulumi_nomad/acl_auth_method.py,sha256=HA1sE-51l_las1glgEzWzu9oV5AfflE9bvzE1xRs-fA,23956
5
+ pulumi_nomad/acl_binding_rule.py,sha256=LYTpE6qHi8RMi58dPDpAbCuUCNyleUw1qgG8BcoX4J8,16570
6
+ pulumi_nomad/acl_policy.py,sha256=vRw-YjlK3j9YuNcCHG1992gNOsYuEuuu8wIw5IqKwh8,12430
7
+ pulumi_nomad/acl_role.py,sha256=KoNdfLfa9cXE1YaNKapzcOu69-SwBYpf_fDhPIr3JAg,10770
8
+ pulumi_nomad/acl_token.py,sha256=MMIfjY3nifPwKIVVrtcOfJvnVJhKw3rMc0ly68hPOII,28966
9
+ pulumi_nomad/csi_volume.py,sha256=0C5_Ld0sziRlzLMub_qbgw36avICwwDDArD1B0Q4eqw,49125
10
+ pulumi_nomad/csi_volume_registration.py,sha256=uw_SzZWB5T3rvevddrs1h_GV-ZTVHXXfxsaxIrMs3GU,51232
11
+ pulumi_nomad/external_volume.py,sha256=xiKGJuKuvvRNBQwHwz6EN_NBLfERjn7dFaF5x_hwuzc,50546
12
+ pulumi_nomad/get_acl_policies.py,sha256=WG6yzwoqQOWClGioIWfsJzsXZbrEgdNDioelc98W5pw,4198
13
+ pulumi_nomad/get_acl_policy.py,sha256=dSLj1kd0gaMjgWvP8MJxtvw6aCxkJGE4Vnwl5PopDf0,4489
14
+ pulumi_nomad/get_acl_role.py,sha256=FpY0hAZvPaAM33Fs8_2Ed9F4DciNJlEiXknI5GDOcBY,4558
15
+ pulumi_nomad/get_acl_roles.py,sha256=7s3ryjIqyvXWM55CdSXWn4wZ4ye5N550u9kSFIyISLs,4087
16
+ pulumi_nomad/get_acl_token.py,sha256=i9vvqSt0jXEd5wtwcjkAqd1kjx3yVAd2zIhQ7NMzZHM,8738
17
+ pulumi_nomad/get_acl_tokens.py,sha256=didK4e5rmvCSsinp5eio6V3YVXoqgkObpha8o_g73tI,4065
18
+ pulumi_nomad/get_allocations.py,sha256=V4kYfmHig9SB8LSjWDjxXKjfSjwEONvEi8VWRFboHzk,6183
19
+ pulumi_nomad/get_datacenters.py,sha256=5f0KtsEvKFTBIBGqcDL312XnAdqw4l2QTJnxOxk1c10,5427
20
+ pulumi_nomad/get_deployments.py,sha256=svdChkXUFczt1vrVXnsik9Fi1kGXTZKDmOcaUXvOp_o,3577
21
+ pulumi_nomad/get_job.py,sha256=Oqjcy58OxmXmEoVzqzgfON74xD4gyHGFRJ4ySWSFjk4,15175
22
+ pulumi_nomad/get_job_parser.py,sha256=iYxoRKaWKhnE80xx55OIOZxosWjNex7rAZxD76kKif4,4730
23
+ pulumi_nomad/get_jwks.py,sha256=OrSyk_2BsMhWCQ1nz875jAOsZfSKazMDne6L_pUyOaw,4033
24
+ pulumi_nomad/get_namespace.py,sha256=ax9c5mje24iPKzw1vkKlp3axQn_Qmn7eZB6T4gkrrPo,6217
25
+ pulumi_nomad/get_namespaces.py,sha256=t0kvs0o2foVP1PbCRa1iTsv5FrIiEHCP1JNBaeBflms,4128
26
+ pulumi_nomad/get_node_pool.py,sha256=WTUdOdGgiuQ4cYcebOBfyE9Tg1KpdXzsV8DYKGy5IM0,5184
27
+ pulumi_nomad/get_node_pools.py,sha256=D4jQnEFtUUvMHfwBYPJFoqbzdMR0s3xv1IQaDMnqpr0,5099
28
+ pulumi_nomad/get_plugin.py,sha256=Wfd10t0ZssFA6NZEO8Oom-Y7QzhRwjsk8wxP4V6NEPw,12152
29
+ pulumi_nomad/get_plugins.py,sha256=0auHzPflbZv3eTqHdXEAlYqlVFsKG1jO5Cbt1HpkcyA,3736
30
+ pulumi_nomad/get_regions.py,sha256=ZPPDUdycfJpokrwbmOAIs5KZWc6vbzM5NEhQmMjccaE,3838
31
+ pulumi_nomad/get_scaling_policies.py,sha256=4RFYYA4Z2GJgQucwUDs8UmH6p5wbGYN58oYT0_gmp6M,5392
32
+ pulumi_nomad/get_scaling_policy.py,sha256=r1vm3Xvand5U42cysVV-rNuhVw0hR_qen0JcES1vcIE,5948
33
+ pulumi_nomad/get_scheduler_policy.py,sha256=bvlNznBqE4cqvCeP_wfbd4AYzG0VSsz49W4yZti7POU,5319
34
+ pulumi_nomad/get_variable.py,sha256=UBzXqMIDztydAGgvqyjP0sPQwhoEGug1VAJjE1K0b2g,4834
35
+ pulumi_nomad/get_volumes.py,sha256=0UGJg4AEnWJv_BG22Me_EpQoWirA_wH-GEE0nQWb8eo,6322
36
+ pulumi_nomad/job.py,sha256=aPufenKt_3u28C1X58uWx3stILWMdRXArXkImjC6HI0,48196
37
+ pulumi_nomad/namespace.py,sha256=7Bq_f1bG40gUz04Jnr5Cnym1FpNTAlQDD27XYQg-vp8,20779
38
+ pulumi_nomad/node_pool.py,sha256=WHW0fEZd5Sw625v24IvEWpQSl1xSJsR5zE_dPm9Sn9o,13420
39
+ pulumi_nomad/outputs.py,sha256=2FjJnNOGrUvZhybf2BEA9RYGSxFMUUx2OItUFhYQr0s,103667
40
+ pulumi_nomad/provider.py,sha256=IWzu62XrgBMool1GiOsU4_Yv0bPZCkY_1StS9z1OPM0,21768
41
+ pulumi_nomad/pulumi-plugin.json,sha256=i4WRyyHUrxpqbLAHLwt3cFhAiorqzqzzXtcU4pNrzFE,81
42
+ pulumi_nomad/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
43
+ pulumi_nomad/quote_specification.py,sha256=1sb80ZJL4tllOu0_ove0nLSsjvKgmK1sKCkc3WadMis,12277
44
+ pulumi_nomad/scheduler_config.py,sha256=DkE30G6eeiNoSFCzPWrRKbijo4n83UHjBNQZLjL8rQk,14284
45
+ pulumi_nomad/sentinel_policy.py,sha256=x9FwUnGBrXLt4fo1fZNSHDY4ukJdBGdBYMDAnwoJIJE,17232
46
+ pulumi_nomad/variable.py,sha256=e81MdYOOjhWfQ_ZddYijhxyGQ4pUgcrOnOu2SVdofIY,11885
47
+ pulumi_nomad/volume.py,sha256=QaPFYCztcrsX7WE585oH9FGWpE-uYhRBfeYLf8CjmTA,54951
48
+ pulumi_nomad/config/__init__.py,sha256=cfY0smRZD3fDVc93ZIAxEl_IM2pynmXB52n3Ahzi030,285
49
+ pulumi_nomad/config/__init__.pyi,sha256=ZFmbRCMsjcMqRsOkohuoubzDqF1rsUlPox6-OtD73ac,2039
50
+ pulumi_nomad/config/outputs.py,sha256=Uip-ODtWe-P7OpRSW6W_V4c8OgmVP_VjYH0KlxxyVXk,1177
51
+ pulumi_nomad/config/vars.py,sha256=svrn_iqEdBe6m9S1xEKUWULVbbx1uHCi5A02ErDpPZk,3606
52
+ pulumi_nomad-2.5.0a1736834448.dist-info/METADATA,sha256=0zJQYr71UYJm9pKa9lVLTGPowxaHdg3OTWDfbv_TSAs,4793
53
+ pulumi_nomad-2.5.0a1736834448.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
54
+ pulumi_nomad-2.5.0a1736834448.dist-info/top_level.txt,sha256=1JxoZWssmXqN-8vVDXtedeoWtI703uNWUOzlm8Byv-o,13
55
+ pulumi_nomad-2.5.0a1736834448.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.43.0)
2
+ Generator: setuptools (75.8.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5