pulumi-nomad 2.3.0a1714584524__py3-none-any.whl → 2.5.0a1736849564__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 +912 -97
  3. pulumi_nomad/_utilities.py +41 -5
  4. pulumi_nomad/acl_auth_method.py +40 -35
  5. pulumi_nomad/acl_binding_rule.py +5 -0
  6. pulumi_nomad/acl_policy.py +10 -5
  7. pulumi_nomad/acl_role.py +10 -5
  8. pulumi_nomad/acl_token.py +10 -5
  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 -16
  13. pulumi_nomad/csi_volume_registration.py +21 -16
  14. pulumi_nomad/external_volume.py +59 -54
  15. pulumi_nomad/get_acl_policies.py +14 -5
  16. pulumi_nomad/get_acl_policy.py +15 -5
  17. pulumi_nomad/get_acl_role.py +15 -5
  18. pulumi_nomad/get_acl_roles.py +14 -5
  19. pulumi_nomad/get_acl_token.py +22 -5
  20. pulumi_nomad/get_acl_tokens.py +14 -5
  21. pulumi_nomad/get_allocations.py +18 -5
  22. pulumi_nomad/get_datacenters.py +16 -5
  23. pulumi_nomad/get_deployments.py +18 -6
  24. pulumi_nomad/get_job.py +34 -5
  25. pulumi_nomad/get_job_parser.py +16 -5
  26. pulumi_nomad/get_jwks.py +124 -0
  27. pulumi_nomad/get_namespace.py +18 -5
  28. pulumi_nomad/get_namespaces.py +12 -5
  29. pulumi_nomad/get_node_pool.py +16 -5
  30. pulumi_nomad/get_node_pools.py +16 -5
  31. pulumi_nomad/get_plugin.py +25 -5
  32. pulumi_nomad/get_plugins.py +15 -6
  33. pulumi_nomad/get_regions.py +12 -5
  34. pulumi_nomad/get_scaling_policies.py +16 -5
  35. pulumi_nomad/get_scaling_policy.py +19 -6
  36. pulumi_nomad/get_scheduler_policy.py +14 -5
  37. pulumi_nomad/get_variable.py +17 -6
  38. pulumi_nomad/get_volumes.py +21 -6
  39. pulumi_nomad/job.py +16 -82
  40. pulumi_nomad/namespace.py +29 -24
  41. pulumi_nomad/node_pool.py +10 -5
  42. pulumi_nomad/outputs.py +309 -87
  43. pulumi_nomad/provider.py +8 -3
  44. pulumi_nomad/pulumi-plugin.json +2 -1
  45. pulumi_nomad/quote_specification.py +24 -19
  46. pulumi_nomad/scheduler_config.py +5 -0
  47. pulumi_nomad/sentinel_policy.py +5 -0
  48. pulumi_nomad/variable.py +19 -14
  49. pulumi_nomad/volume.py +65 -72
  50. {pulumi_nomad-2.3.0a1714584524.dist-info → pulumi_nomad-2.5.0a1736849564.dist-info}/METADATA +7 -6
  51. pulumi_nomad-2.5.0a1736849564.dist-info/RECORD +55 -0
  52. {pulumi_nomad-2.3.0a1714584524.dist-info → pulumi_nomad-2.5.0a1736849564.dist-info}/WHEEL +1 -1
  53. pulumi_nomad-2.3.0a1714584524.dist-info/RECORD +0 -54
  54. {pulumi_nomad-2.3.0a1714584524.dist-info → pulumi_nomad-2.5.0a1736849564.dist-info}/top_level.txt +0 -0
pulumi_nomad/outputs.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
 
@@ -67,6 +72,7 @@ __all__ = [
67
72
  'GetJobTaskGroupTaskResult',
68
73
  'GetJobTaskGroupTaskVolumeMountResult',
69
74
  'GetJobTaskGroupVolumeResult',
75
+ 'GetJwksKeyResult',
70
76
  'GetNamespaceCapabilityResult',
71
77
  'GetNamespaceNodePoolConfigResult',
72
78
  'GetNodePoolSchedulerConfigResult',
@@ -83,22 +89,36 @@ class AclAuthMethodConfig(dict):
83
89
  suggest = None
84
90
  if key == "allowedRedirectUris":
85
91
  suggest = "allowed_redirect_uris"
86
- elif key == "oidcClientId":
87
- suggest = "oidc_client_id"
88
- elif key == "oidcClientSecret":
89
- suggest = "oidc_client_secret"
90
- elif key == "oidcDiscoveryUrl":
91
- suggest = "oidc_discovery_url"
92
92
  elif key == "boundAudiences":
93
93
  suggest = "bound_audiences"
94
+ elif key == "boundIssuers":
95
+ suggest = "bound_issuers"
94
96
  elif key == "claimMappings":
95
97
  suggest = "claim_mappings"
98
+ elif key == "clockSkewLeeway":
99
+ suggest = "clock_skew_leeway"
96
100
  elif key == "discoveryCaPems":
97
101
  suggest = "discovery_ca_pems"
102
+ elif key == "expirationLeeway":
103
+ suggest = "expiration_leeway"
104
+ elif key == "jwksCaCert":
105
+ suggest = "jwks_ca_cert"
106
+ elif key == "jwksUrl":
107
+ suggest = "jwks_url"
108
+ elif key == "jwtValidationPubKeys":
109
+ suggest = "jwt_validation_pub_keys"
98
110
  elif key == "listClaimMappings":
99
111
  suggest = "list_claim_mappings"
112
+ elif key == "notBeforeLeeway":
113
+ suggest = "not_before_leeway"
114
+ elif key == "oidcClientId":
115
+ suggest = "oidc_client_id"
116
+ elif key == "oidcClientSecret":
117
+ suggest = "oidc_client_secret"
100
118
  elif key == "oidcDisableUserinfo":
101
119
  suggest = "oidc_disable_userinfo"
120
+ elif key == "oidcDiscoveryUrl":
121
+ suggest = "oidc_discovery_url"
102
122
  elif key == "oidcScopes":
103
123
  suggest = "oidc_scopes"
104
124
  elif key == "signingAlgs":
@@ -116,56 +136,93 @@ class AclAuthMethodConfig(dict):
116
136
  return super().get(key, default)
117
137
 
118
138
  def __init__(__self__, *,
119
- allowed_redirect_uris: Sequence[str],
120
- oidc_client_id: str,
121
- oidc_client_secret: str,
122
- oidc_discovery_url: str,
139
+ allowed_redirect_uris: Optional[Sequence[str]] = None,
123
140
  bound_audiences: Optional[Sequence[str]] = None,
141
+ bound_issuers: Optional[Sequence[str]] = None,
124
142
  claim_mappings: Optional[Mapping[str, str]] = None,
143
+ clock_skew_leeway: Optional[str] = None,
125
144
  discovery_ca_pems: Optional[Sequence[str]] = None,
145
+ expiration_leeway: Optional[str] = None,
146
+ jwks_ca_cert: Optional[str] = None,
147
+ jwks_url: Optional[str] = None,
148
+ jwt_validation_pub_keys: Optional[Sequence[str]] = None,
126
149
  list_claim_mappings: Optional[Mapping[str, str]] = None,
150
+ not_before_leeway: Optional[str] = None,
151
+ oidc_client_id: Optional[str] = None,
152
+ oidc_client_secret: Optional[str] = None,
127
153
  oidc_disable_userinfo: Optional[bool] = None,
154
+ oidc_discovery_url: Optional[str] = None,
128
155
  oidc_scopes: Optional[Sequence[str]] = None,
129
156
  signing_algs: Optional[Sequence[str]] = None):
130
157
  """
131
158
  :param Sequence[str] allowed_redirect_uris: `([]string: <optional>)` - A list of allowed values
132
159
  that can be used for the redirect URI.
133
- :param str oidc_client_id: `(string: <required>)` - The OAuth Client ID configured
134
- with the OIDC provider.
135
- :param str oidc_client_secret: `(string: <required>)` - The OAuth Client Secret
136
- configured with the OIDC provider.
137
- :param str oidc_discovery_url: `(string: <required>)` - The OIDC Discovery URL,
138
- without any .well-known component (base path).
139
160
  :param Sequence[str] bound_audiences: `([]string: <optional>)` - List of auth claims that are
140
161
  valid for login.
141
- :param Mapping[str, str] claim_mappings: `(map[string]string: <optional>)` - Mappings of claims (key)
142
- that will be copied to a metadata field (value).
162
+ :param Sequence[str] bound_issuers: `([]string: <optional>)` - The value against which to match
163
+ the iss claim in a JWT.
164
+ :param Mapping[str, str] claim_mappings: Mappings of claims (key) that will be copied to a metadata field (value).
165
+ :param str clock_skew_leeway: `(string: <optional>)` - Duration of leeway when validating
166
+ all claims in the form of a time duration such as "5m" or "1h".
143
167
  :param Sequence[str] discovery_ca_pems: `([]string: <optional>)` - PEM encoded CA certs for use
144
168
  by the TLS client used to talk with the OIDC Discovery URL.
145
- :param Mapping[str, str] list_claim_mappings: `(map[string]string: <optional>)` - Mappings of list
146
- claims (key) that will be copied to a metadata field (value).
169
+ :param str expiration_leeway: `(string: <optional>)` - Duration of leeway when validating
170
+ expiration of a JWT in the form of a time duration such as "5m" or "1h".
171
+ :param str jwks_ca_cert: `(string: <optional>)` - PEM encoded CA cert for use by the
172
+ TLS client used to talk with the JWKS server.
173
+ :param str jwks_url: `(string: <optional>)` - JSON Web Key Sets url for authenticating
174
+ signatures.
175
+ :param Sequence[str] jwt_validation_pub_keys: `([]string: <optional>)` - List of PEM-encoded
176
+ public keys to use to authenticate signatures locally.
177
+ :param Mapping[str, str] list_claim_mappings: Mappings of list claims (key) that will be copied to a metadata field (value).
178
+ :param str not_before_leeway: `(string: <optional>)` - Duration of leeway when validating
179
+ not before values of a token in the form of a time duration such as "5m" or "1h".
180
+ :param str oidc_client_id: `(string: <optional>)` - The OAuth Client ID configured
181
+ with the OIDC provider.
182
+ :param str oidc_client_secret: `(string: <optional>)` - The OAuth Client Secret
183
+ configured with the OIDC provider.
147
184
  :param bool oidc_disable_userinfo: `(bool: false)` - When set to `true`, Nomad will
148
185
  not make a request to the identity provider to get OIDC `UserInfo`.
149
186
  You may wish to set this if your identity provider doesn't send any
150
187
  additional claims from the `UserInfo` endpoint.
188
+ :param str oidc_discovery_url: `(string: <optional>)` - The OIDC Discovery URL,
189
+ without any .well-known component (base path).
151
190
  :param Sequence[str] oidc_scopes: `([]string: <optional>)` - List of OIDC scopes.
152
191
  :param Sequence[str] signing_algs: `([]string: <optional>)` - A list of supported signing
153
192
  algorithms.
154
193
  """
155
- pulumi.set(__self__, "allowed_redirect_uris", allowed_redirect_uris)
156
- pulumi.set(__self__, "oidc_client_id", oidc_client_id)
157
- pulumi.set(__self__, "oidc_client_secret", oidc_client_secret)
158
- pulumi.set(__self__, "oidc_discovery_url", oidc_discovery_url)
194
+ if allowed_redirect_uris is not None:
195
+ pulumi.set(__self__, "allowed_redirect_uris", allowed_redirect_uris)
159
196
  if bound_audiences is not None:
160
197
  pulumi.set(__self__, "bound_audiences", bound_audiences)
198
+ if bound_issuers is not None:
199
+ pulumi.set(__self__, "bound_issuers", bound_issuers)
161
200
  if claim_mappings is not None:
162
201
  pulumi.set(__self__, "claim_mappings", claim_mappings)
202
+ if clock_skew_leeway is not None:
203
+ pulumi.set(__self__, "clock_skew_leeway", clock_skew_leeway)
163
204
  if discovery_ca_pems is not None:
164
205
  pulumi.set(__self__, "discovery_ca_pems", discovery_ca_pems)
206
+ if expiration_leeway is not None:
207
+ pulumi.set(__self__, "expiration_leeway", expiration_leeway)
208
+ if jwks_ca_cert is not None:
209
+ pulumi.set(__self__, "jwks_ca_cert", jwks_ca_cert)
210
+ if jwks_url is not None:
211
+ pulumi.set(__self__, "jwks_url", jwks_url)
212
+ if jwt_validation_pub_keys is not None:
213
+ pulumi.set(__self__, "jwt_validation_pub_keys", jwt_validation_pub_keys)
165
214
  if list_claim_mappings is not None:
166
215
  pulumi.set(__self__, "list_claim_mappings", list_claim_mappings)
216
+ if not_before_leeway is not None:
217
+ pulumi.set(__self__, "not_before_leeway", not_before_leeway)
218
+ if oidc_client_id is not None:
219
+ pulumi.set(__self__, "oidc_client_id", oidc_client_id)
220
+ if oidc_client_secret is not None:
221
+ pulumi.set(__self__, "oidc_client_secret", oidc_client_secret)
167
222
  if oidc_disable_userinfo is not None:
168
223
  pulumi.set(__self__, "oidc_disable_userinfo", oidc_disable_userinfo)
224
+ if oidc_discovery_url is not None:
225
+ pulumi.set(__self__, "oidc_discovery_url", oidc_discovery_url)
169
226
  if oidc_scopes is not None:
170
227
  pulumi.set(__self__, "oidc_scopes", oidc_scopes)
171
228
  if signing_algs is not None:
@@ -173,40 +230,13 @@ class AclAuthMethodConfig(dict):
173
230
 
174
231
  @property
175
232
  @pulumi.getter(name="allowedRedirectUris")
176
- def allowed_redirect_uris(self) -> Sequence[str]:
233
+ def allowed_redirect_uris(self) -> Optional[Sequence[str]]:
177
234
  """
178
235
  `([]string: <optional>)` - A list of allowed values
179
236
  that can be used for the redirect URI.
180
237
  """
181
238
  return pulumi.get(self, "allowed_redirect_uris")
182
239
 
183
- @property
184
- @pulumi.getter(name="oidcClientId")
185
- def oidc_client_id(self) -> str:
186
- """
187
- `(string: <required>)` - The OAuth Client ID configured
188
- with the OIDC provider.
189
- """
190
- return pulumi.get(self, "oidc_client_id")
191
-
192
- @property
193
- @pulumi.getter(name="oidcClientSecret")
194
- def oidc_client_secret(self) -> str:
195
- """
196
- `(string: <required>)` - The OAuth Client Secret
197
- configured with the OIDC provider.
198
- """
199
- return pulumi.get(self, "oidc_client_secret")
200
-
201
- @property
202
- @pulumi.getter(name="oidcDiscoveryUrl")
203
- def oidc_discovery_url(self) -> str:
204
- """
205
- `(string: <required>)` - The OIDC Discovery URL,
206
- without any .well-known component (base path).
207
- """
208
- return pulumi.get(self, "oidc_discovery_url")
209
-
210
240
  @property
211
241
  @pulumi.getter(name="boundAudiences")
212
242
  def bound_audiences(self) -> Optional[Sequence[str]]:
@@ -216,15 +246,32 @@ class AclAuthMethodConfig(dict):
216
246
  """
217
247
  return pulumi.get(self, "bound_audiences")
218
248
 
249
+ @property
250
+ @pulumi.getter(name="boundIssuers")
251
+ def bound_issuers(self) -> Optional[Sequence[str]]:
252
+ """
253
+ `([]string: <optional>)` - The value against which to match
254
+ the iss claim in a JWT.
255
+ """
256
+ return pulumi.get(self, "bound_issuers")
257
+
219
258
  @property
220
259
  @pulumi.getter(name="claimMappings")
221
260
  def claim_mappings(self) -> Optional[Mapping[str, str]]:
222
261
  """
223
- `(map[string]string: <optional>)` - Mappings of claims (key)
224
- that will be copied to a metadata field (value).
262
+ Mappings of claims (key) that will be copied to a metadata field (value).
225
263
  """
226
264
  return pulumi.get(self, "claim_mappings")
227
265
 
266
+ @property
267
+ @pulumi.getter(name="clockSkewLeeway")
268
+ def clock_skew_leeway(self) -> Optional[str]:
269
+ """
270
+ `(string: <optional>)` - Duration of leeway when validating
271
+ all claims in the form of a time duration such as "5m" or "1h".
272
+ """
273
+ return pulumi.get(self, "clock_skew_leeway")
274
+
228
275
  @property
229
276
  @pulumi.getter(name="discoveryCaPems")
230
277
  def discovery_ca_pems(self) -> Optional[Sequence[str]]:
@@ -234,15 +281,77 @@ class AclAuthMethodConfig(dict):
234
281
  """
235
282
  return pulumi.get(self, "discovery_ca_pems")
236
283
 
284
+ @property
285
+ @pulumi.getter(name="expirationLeeway")
286
+ def expiration_leeway(self) -> Optional[str]:
287
+ """
288
+ `(string: <optional>)` - Duration of leeway when validating
289
+ expiration of a JWT in the form of a time duration such as "5m" or "1h".
290
+ """
291
+ return pulumi.get(self, "expiration_leeway")
292
+
293
+ @property
294
+ @pulumi.getter(name="jwksCaCert")
295
+ def jwks_ca_cert(self) -> Optional[str]:
296
+ """
297
+ `(string: <optional>)` - PEM encoded CA cert for use by the
298
+ TLS client used to talk with the JWKS server.
299
+ """
300
+ return pulumi.get(self, "jwks_ca_cert")
301
+
302
+ @property
303
+ @pulumi.getter(name="jwksUrl")
304
+ def jwks_url(self) -> Optional[str]:
305
+ """
306
+ `(string: <optional>)` - JSON Web Key Sets url for authenticating
307
+ signatures.
308
+ """
309
+ return pulumi.get(self, "jwks_url")
310
+
311
+ @property
312
+ @pulumi.getter(name="jwtValidationPubKeys")
313
+ def jwt_validation_pub_keys(self) -> Optional[Sequence[str]]:
314
+ """
315
+ `([]string: <optional>)` - List of PEM-encoded
316
+ public keys to use to authenticate signatures locally.
317
+ """
318
+ return pulumi.get(self, "jwt_validation_pub_keys")
319
+
237
320
  @property
238
321
  @pulumi.getter(name="listClaimMappings")
239
322
  def list_claim_mappings(self) -> Optional[Mapping[str, str]]:
240
323
  """
241
- `(map[string]string: <optional>)` - Mappings of list
242
- claims (key) that will be copied to a metadata field (value).
324
+ Mappings of list claims (key) that will be copied to a metadata field (value).
243
325
  """
244
326
  return pulumi.get(self, "list_claim_mappings")
245
327
 
328
+ @property
329
+ @pulumi.getter(name="notBeforeLeeway")
330
+ def not_before_leeway(self) -> Optional[str]:
331
+ """
332
+ `(string: <optional>)` - Duration of leeway when validating
333
+ not before values of a token in the form of a time duration such as "5m" or "1h".
334
+ """
335
+ return pulumi.get(self, "not_before_leeway")
336
+
337
+ @property
338
+ @pulumi.getter(name="oidcClientId")
339
+ def oidc_client_id(self) -> Optional[str]:
340
+ """
341
+ `(string: <optional>)` - The OAuth Client ID configured
342
+ with the OIDC provider.
343
+ """
344
+ return pulumi.get(self, "oidc_client_id")
345
+
346
+ @property
347
+ @pulumi.getter(name="oidcClientSecret")
348
+ def oidc_client_secret(self) -> Optional[str]:
349
+ """
350
+ `(string: <optional>)` - The OAuth Client Secret
351
+ configured with the OIDC provider.
352
+ """
353
+ return pulumi.get(self, "oidc_client_secret")
354
+
246
355
  @property
247
356
  @pulumi.getter(name="oidcDisableUserinfo")
248
357
  def oidc_disable_userinfo(self) -> Optional[bool]:
@@ -254,6 +363,15 @@ class AclAuthMethodConfig(dict):
254
363
  """
255
364
  return pulumi.get(self, "oidc_disable_userinfo")
256
365
 
366
+ @property
367
+ @pulumi.getter(name="oidcDiscoveryUrl")
368
+ def oidc_discovery_url(self) -> Optional[str]:
369
+ """
370
+ `(string: <optional>)` - The OIDC Discovery URL,
371
+ without any .well-known component (base path).
372
+ """
373
+ return pulumi.get(self, "oidc_discovery_url")
374
+
257
375
  @property
258
376
  @pulumi.getter(name="oidcScopes")
259
377
  def oidc_scopes(self) -> Optional[Sequence[str]]:
@@ -619,12 +737,24 @@ class CsiVolumeRegistrationMountOptions(dict):
619
737
  class CsiVolumeRegistrationTopology(dict):
620
738
  def __init__(__self__, *,
621
739
  segments: Optional[Mapping[str, str]] = None):
740
+ """
741
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
742
+
743
+ In addition to the above arguments, the following attributes are exported and
744
+ can be referenced:
745
+ """
622
746
  if segments is not None:
623
747
  pulumi.set(__self__, "segments", segments)
624
748
 
625
749
  @property
626
750
  @pulumi.getter
627
751
  def segments(self) -> Optional[Mapping[str, str]]:
752
+ """
753
+ `(map[string]string)` - Define the attributes for the topology request.
754
+
755
+ In addition to the above arguments, the following attributes are exported and
756
+ can be referenced:
757
+ """
628
758
  return pulumi.get(self, "segments")
629
759
 
630
760
 
@@ -687,12 +817,24 @@ class CsiVolumeRegistrationTopologyRequestRequiredTopology(dict):
687
817
  class CsiVolumeTopology(dict):
688
818
  def __init__(__self__, *,
689
819
  segments: Optional[Mapping[str, str]] = None):
820
+ """
821
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
822
+
823
+ In addition to the above arguments, the following attributes are exported and
824
+ can be referenced:
825
+ """
690
826
  if segments is not None:
691
827
  pulumi.set(__self__, "segments", segments)
692
828
 
693
829
  @property
694
830
  @pulumi.getter
695
831
  def segments(self) -> Optional[Mapping[str, str]]:
832
+ """
833
+ `(map[string]string)` - Define the attributes for the topology request.
834
+
835
+ In addition to the above arguments, the following attributes are exported and
836
+ can be referenced:
837
+ """
696
838
  return pulumi.get(self, "segments")
697
839
 
698
840
 
@@ -915,12 +1057,24 @@ class ExternalVolumeMountOptions(dict):
915
1057
  class ExternalVolumeTopology(dict):
916
1058
  def __init__(__self__, *,
917
1059
  segments: Optional[Mapping[str, str]] = None):
1060
+ """
1061
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
1062
+
1063
+ In addition to the above arguments, the following attributes are exported and
1064
+ can be referenced:
1065
+ """
918
1066
  if segments is not None:
919
1067
  pulumi.set(__self__, "segments", segments)
920
1068
 
921
1069
  @property
922
1070
  @pulumi.getter
923
1071
  def segments(self) -> Optional[Mapping[str, str]]:
1072
+ """
1073
+ `(map[string]string)` - Define the attributes for the topology request.
1074
+
1075
+ In addition to the above arguments, the following attributes are exported and
1076
+ can be referenced:
1077
+ """
924
1078
  return pulumi.get(self, "segments")
925
1079
 
926
1080
 
@@ -1048,19 +1202,14 @@ class JobHcl2(dict):
1048
1202
 
1049
1203
  def __init__(__self__, *,
1050
1204
  allow_fs: Optional[bool] = None,
1051
- enabled: Optional[bool] = None,
1052
- vars: Optional[Mapping[str, Any]] = None):
1205
+ vars: Optional[Mapping[str, str]] = None):
1053
1206
  """
1054
1207
  :param bool allow_fs: `(boolean: false)` - Set this to `true` to be able to use
1055
1208
  HCL2 filesystem functions
1056
- :param bool enabled: `(boolean: false)` - **Deprecated** All HCL jobs are parsed as
1057
- HCL2 by default.
1058
- :param Mapping[str, Any] vars: Additional variables to use when templating the job with HCL2
1209
+ :param Mapping[str, str] vars: Additional variables to use when templating the job with HCL2
1059
1210
  """
1060
1211
  if allow_fs is not None:
1061
1212
  pulumi.set(__self__, "allow_fs", allow_fs)
1062
- if enabled is not None:
1063
- pulumi.set(__self__, "enabled", enabled)
1064
1213
  if vars is not None:
1065
1214
  pulumi.set(__self__, "vars", vars)
1066
1215
 
@@ -1075,19 +1224,7 @@ class JobHcl2(dict):
1075
1224
 
1076
1225
  @property
1077
1226
  @pulumi.getter
1078
- def enabled(self) -> Optional[bool]:
1079
- """
1080
- `(boolean: false)` - **Deprecated** All HCL jobs are parsed as
1081
- HCL2 by default.
1082
- """
1083
- warnings.warn("""Starting with version 2.0.0 of the Nomad provider, jobs are parsed using HCL2 by default, so this field is no longer used and may be safely removed from your configuration files. Set 'hcl1 = true' if you must use HCL1 job parsing.""", DeprecationWarning)
1084
- pulumi.log.warn("""enabled is deprecated: Starting with version 2.0.0 of the Nomad provider, jobs are parsed using HCL2 by default, so this field is no longer used and may be safely removed from your configuration files. Set 'hcl1 = true' if you must use HCL1 job parsing.""")
1085
-
1086
- return pulumi.get(self, "enabled")
1087
-
1088
- @property
1089
- @pulumi.getter
1090
- def vars(self) -> Optional[Mapping[str, Any]]:
1227
+ def vars(self) -> Optional[Mapping[str, str]]:
1091
1228
  """
1092
1229
  Additional variables to use when templating the job with HCL2
1093
1230
  """
@@ -1098,7 +1235,7 @@ class JobHcl2(dict):
1098
1235
  class JobTaskGroup(dict):
1099
1236
  def __init__(__self__, *,
1100
1237
  count: Optional[int] = None,
1101
- meta: Optional[Mapping[str, Any]] = None,
1238
+ meta: Optional[Mapping[str, str]] = None,
1102
1239
  name: Optional[str] = None,
1103
1240
  tasks: Optional[Sequence['outputs.JobTaskGroupTask']] = None,
1104
1241
  volumes: Optional[Sequence['outputs.JobTaskGroupVolume']] = None):
@@ -1120,7 +1257,7 @@ class JobTaskGroup(dict):
1120
1257
 
1121
1258
  @property
1122
1259
  @pulumi.getter
1123
- def meta(self) -> Optional[Mapping[str, Any]]:
1260
+ def meta(self) -> Optional[Mapping[str, str]]:
1124
1261
  return pulumi.get(self, "meta")
1125
1262
 
1126
1263
  @property
@@ -1160,7 +1297,7 @@ class JobTaskGroupTask(dict):
1160
1297
 
1161
1298
  def __init__(__self__, *,
1162
1299
  driver: Optional[str] = None,
1163
- meta: Optional[Mapping[str, Any]] = None,
1300
+ meta: Optional[Mapping[str, str]] = None,
1164
1301
  name: Optional[str] = None,
1165
1302
  volume_mounts: Optional[Sequence['outputs.JobTaskGroupTaskVolumeMount']] = None):
1166
1303
  if driver is not None:
@@ -1179,7 +1316,7 @@ class JobTaskGroupTask(dict):
1179
1316
 
1180
1317
  @property
1181
1318
  @pulumi.getter
1182
- def meta(self) -> Optional[Mapping[str, Any]]:
1319
+ def meta(self) -> Optional[Mapping[str, str]]:
1183
1320
  return pulumi.get(self, "meta")
1184
1321
 
1185
1322
  @property
@@ -1674,12 +1811,24 @@ class VolumeMountOptions(dict):
1674
1811
  class VolumeTopology(dict):
1675
1812
  def __init__(__self__, *,
1676
1813
  segments: Optional[Mapping[str, str]] = None):
1814
+ """
1815
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
1816
+
1817
+ In addition to the above arguments, the following attributes are exported and
1818
+ can be referenced:
1819
+ """
1677
1820
  if segments is not None:
1678
1821
  pulumi.set(__self__, "segments", segments)
1679
1822
 
1680
1823
  @property
1681
1824
  @pulumi.getter
1682
1825
  def segments(self) -> Optional[Mapping[str, str]]:
1826
+ """
1827
+ `(map[string]string)` - Define the attributes for the topology request.
1828
+
1829
+ In addition to the above arguments, the following attributes are exported and
1830
+ can be referenced:
1831
+ """
1683
1832
  return pulumi.get(self, "segments")
1684
1833
 
1685
1834
 
@@ -2335,7 +2484,7 @@ class GetJobPeriodicConfigResult(dict):
2335
2484
  class GetJobTaskGroupResult(dict):
2336
2485
  def __init__(__self__, *,
2337
2486
  count: int,
2338
- meta: Mapping[str, Any],
2487
+ meta: Mapping[str, str],
2339
2488
  name: str,
2340
2489
  tasks: Sequence['outputs.GetJobTaskGroupTaskResult'],
2341
2490
  volumes: Sequence['outputs.GetJobTaskGroupVolumeResult']):
@@ -2355,7 +2504,7 @@ class GetJobTaskGroupResult(dict):
2355
2504
 
2356
2505
  @property
2357
2506
  @pulumi.getter
2358
- def meta(self) -> Mapping[str, Any]:
2507
+ def meta(self) -> Mapping[str, str]:
2359
2508
  return pulumi.get(self, "meta")
2360
2509
 
2361
2510
  @property
@@ -2381,7 +2530,7 @@ class GetJobTaskGroupResult(dict):
2381
2530
  class GetJobTaskGroupTaskResult(dict):
2382
2531
  def __init__(__self__, *,
2383
2532
  driver: str,
2384
- meta: Mapping[str, Any],
2533
+ meta: Mapping[str, str],
2385
2534
  name: str,
2386
2535
  volume_mounts: Sequence['outputs.GetJobTaskGroupTaskVolumeMountResult']):
2387
2536
  """
@@ -2399,7 +2548,7 @@ class GetJobTaskGroupTaskResult(dict):
2399
2548
 
2400
2549
  @property
2401
2550
  @pulumi.getter
2402
- def meta(self) -> Mapping[str, Any]:
2551
+ def meta(self) -> Mapping[str, str]:
2403
2552
  return pulumi.get(self, "meta")
2404
2553
 
2405
2554
  @property
@@ -2485,6 +2634,79 @@ class GetJobTaskGroupVolumeResult(dict):
2485
2634
  return pulumi.get(self, "type")
2486
2635
 
2487
2636
 
2637
+ @pulumi.output_type
2638
+ class GetJwksKeyResult(dict):
2639
+ def __init__(__self__, *,
2640
+ algorithm: str,
2641
+ exponent: str,
2642
+ key_id: str,
2643
+ key_type: str,
2644
+ key_use: str,
2645
+ modulus: str):
2646
+ """
2647
+ :param str algorithm: `(string)` - JWK field `alg`
2648
+ :param str exponent: `(string)` - JWK field `e`
2649
+ :param str key_id: `(string)` - JWK field `kid`
2650
+ :param str key_type: `(string)` - JWK field `kty`
2651
+ :param str key_use: `(string)` - JWK field `use`
2652
+ :param str modulus: `(string)` - JWK field `n`
2653
+ """
2654
+ pulumi.set(__self__, "algorithm", algorithm)
2655
+ pulumi.set(__self__, "exponent", exponent)
2656
+ pulumi.set(__self__, "key_id", key_id)
2657
+ pulumi.set(__self__, "key_type", key_type)
2658
+ pulumi.set(__self__, "key_use", key_use)
2659
+ pulumi.set(__self__, "modulus", modulus)
2660
+
2661
+ @property
2662
+ @pulumi.getter
2663
+ def algorithm(self) -> str:
2664
+ """
2665
+ `(string)` - JWK field `alg`
2666
+ """
2667
+ return pulumi.get(self, "algorithm")
2668
+
2669
+ @property
2670
+ @pulumi.getter
2671
+ def exponent(self) -> str:
2672
+ """
2673
+ `(string)` - JWK field `e`
2674
+ """
2675
+ return pulumi.get(self, "exponent")
2676
+
2677
+ @property
2678
+ @pulumi.getter(name="keyId")
2679
+ def key_id(self) -> str:
2680
+ """
2681
+ `(string)` - JWK field `kid`
2682
+ """
2683
+ return pulumi.get(self, "key_id")
2684
+
2685
+ @property
2686
+ @pulumi.getter(name="keyType")
2687
+ def key_type(self) -> str:
2688
+ """
2689
+ `(string)` - JWK field `kty`
2690
+ """
2691
+ return pulumi.get(self, "key_type")
2692
+
2693
+ @property
2694
+ @pulumi.getter(name="keyUse")
2695
+ def key_use(self) -> str:
2696
+ """
2697
+ `(string)` - JWK field `use`
2698
+ """
2699
+ return pulumi.get(self, "key_use")
2700
+
2701
+ @property
2702
+ @pulumi.getter
2703
+ def modulus(self) -> str:
2704
+ """
2705
+ `(string)` - JWK field `n`
2706
+ """
2707
+ return pulumi.get(self, "modulus")
2708
+
2709
+
2488
2710
  @pulumi.output_type
2489
2711
  class GetNamespaceCapabilityResult(dict):
2490
2712
  def __init__(__self__, *,
@@ -2696,12 +2918,12 @@ class GetScalingPoliciesPolicyResult(dict):
2696
2918
  def __init__(__self__, *,
2697
2919
  enabled: bool,
2698
2920
  id: str,
2699
- target: Mapping[str, Any],
2921
+ target: Mapping[str, str],
2700
2922
  type: str):
2701
2923
  """
2702
2924
  :param bool enabled: `(boolean)` - Whether or not the scaling policy is enabled.
2703
2925
  :param str id: `(string)` - The scaling policy ID.
2704
- :param Mapping[str, Any] target: `(map[string]string)` - The scaling policy target.
2926
+ :param Mapping[str, str] target: `(map[string]string)` - The scaling policy target.
2705
2927
  :param str type: `(string)` - An optional string to filter scaling policies based on policy type. If not provided, policies of all types are returned.
2706
2928
  """
2707
2929
  pulumi.set(__self__, "enabled", enabled)
@@ -2727,7 +2949,7 @@ class GetScalingPoliciesPolicyResult(dict):
2727
2949
 
2728
2950
  @property
2729
2951
  @pulumi.getter
2730
- def target(self) -> Mapping[str, Any]:
2952
+ def target(self) -> Mapping[str, str]:
2731
2953
  """
2732
2954
  `(map[string]string)` - The scaling policy target.
2733
2955
  """