pulumi-nomad 2.3.0__py3-none-any.whl → 2.3.0a1710918439__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 (47) hide show
  1. pulumi_nomad/__init__.py +0 -1
  2. pulumi_nomad/_inputs.py +189 -221
  3. pulumi_nomad/acl_auth_method.py +20 -18
  4. pulumi_nomad/acl_policy.py +64 -0
  5. pulumi_nomad/acl_token.py +26 -18
  6. pulumi_nomad/csi_volume.py +72 -0
  7. pulumi_nomad/csi_volume_registration.py +72 -0
  8. pulumi_nomad/external_volume.py +78 -6
  9. pulumi_nomad/get_acl_policies.py +4 -0
  10. pulumi_nomad/get_acl_policy.py +4 -0
  11. pulumi_nomad/get_acl_role.py +4 -0
  12. pulumi_nomad/get_acl_roles.py +4 -0
  13. pulumi_nomad/get_acl_token.py +4 -0
  14. pulumi_nomad/get_acl_tokens.py +4 -0
  15. pulumi_nomad/get_allocations.py +4 -0
  16. pulumi_nomad/get_datacenters.py +8 -4
  17. pulumi_nomad/get_deployments.py +4 -5
  18. pulumi_nomad/get_job.py +4 -0
  19. pulumi_nomad/get_job_parser.py +24 -0
  20. pulumi_nomad/get_namespace.py +4 -0
  21. pulumi_nomad/get_namespaces.py +4 -2
  22. pulumi_nomad/get_node_pool.py +4 -0
  23. pulumi_nomad/get_node_pools.py +4 -0
  24. pulumi_nomad/get_plugin.py +4 -0
  25. pulumi_nomad/get_plugins.py +4 -0
  26. pulumi_nomad/get_regions.py +0 -34
  27. pulumi_nomad/get_scaling_policies.py +4 -0
  28. pulumi_nomad/get_scaling_policy.py +4 -0
  29. pulumi_nomad/get_scheduler_policy.py +4 -0
  30. pulumi_nomad/get_variable.py +4 -0
  31. pulumi_nomad/get_volumes.py +4 -0
  32. pulumi_nomad/job.py +16 -16
  33. pulumi_nomad/namespace.py +16 -14
  34. pulumi_nomad/node_pool.py +4 -2
  35. pulumi_nomad/outputs.py +182 -274
  36. pulumi_nomad/pulumi-plugin.json +1 -2
  37. pulumi_nomad/quote_specification.py +6 -4
  38. pulumi_nomad/scheduler_config.py +10 -6
  39. pulumi_nomad/sentinel_policy.py +10 -6
  40. pulumi_nomad/variable.py +18 -14
  41. pulumi_nomad/volume.py +80 -8
  42. {pulumi_nomad-2.3.0.dist-info → pulumi_nomad-2.3.0a1710918439.dist-info}/METADATA +1 -1
  43. pulumi_nomad-2.3.0a1710918439.dist-info/RECORD +54 -0
  44. pulumi_nomad/get_jwks.py +0 -116
  45. pulumi_nomad-2.3.0.dist-info/RECORD +0 -55
  46. {pulumi_nomad-2.3.0.dist-info → pulumi_nomad-2.3.0a1710918439.dist-info}/WHEEL +0 -0
  47. {pulumi_nomad-2.3.0.dist-info → pulumi_nomad-2.3.0a1710918439.dist-info}/top_level.txt +0 -0
pulumi_nomad/outputs.py CHANGED
@@ -67,7 +67,6 @@ __all__ = [
67
67
  'GetJobTaskGroupTaskResult',
68
68
  'GetJobTaskGroupTaskVolumeMountResult',
69
69
  'GetJobTaskGroupVolumeResult',
70
- 'GetJwksKeyResult',
71
70
  'GetNamespaceCapabilityResult',
72
71
  'GetNamespaceNodePoolConfigResult',
73
72
  'GetNodePoolSchedulerConfigResult',
@@ -84,36 +83,22 @@ class AclAuthMethodConfig(dict):
84
83
  suggest = None
85
84
  if key == "allowedRedirectUris":
86
85
  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"
87
92
  elif key == "boundAudiences":
88
93
  suggest = "bound_audiences"
89
- elif key == "boundIssuers":
90
- suggest = "bound_issuers"
91
94
  elif key == "claimMappings":
92
95
  suggest = "claim_mappings"
93
- elif key == "clockSkewLeeway":
94
- suggest = "clock_skew_leeway"
95
96
  elif key == "discoveryCaPems":
96
97
  suggest = "discovery_ca_pems"
97
- elif key == "expirationLeeway":
98
- suggest = "expiration_leeway"
99
- elif key == "jwksCaCert":
100
- suggest = "jwks_ca_cert"
101
- elif key == "jwksUrl":
102
- suggest = "jwks_url"
103
- elif key == "jwtValidationPubKeys":
104
- suggest = "jwt_validation_pub_keys"
105
98
  elif key == "listClaimMappings":
106
99
  suggest = "list_claim_mappings"
107
- elif key == "notBeforeLeeway":
108
- suggest = "not_before_leeway"
109
- elif key == "oidcClientId":
110
- suggest = "oidc_client_id"
111
- elif key == "oidcClientSecret":
112
- suggest = "oidc_client_secret"
113
100
  elif key == "oidcDisableUserinfo":
114
101
  suggest = "oidc_disable_userinfo"
115
- elif key == "oidcDiscoveryUrl":
116
- suggest = "oidc_discovery_url"
117
102
  elif key == "oidcScopes":
118
103
  suggest = "oidc_scopes"
119
104
  elif key == "signingAlgs":
@@ -131,93 +116,56 @@ class AclAuthMethodConfig(dict):
131
116
  return super().get(key, default)
132
117
 
133
118
  def __init__(__self__, *,
134
- allowed_redirect_uris: Optional[Sequence[str]] = None,
119
+ allowed_redirect_uris: Sequence[str],
120
+ oidc_client_id: str,
121
+ oidc_client_secret: str,
122
+ oidc_discovery_url: str,
135
123
  bound_audiences: Optional[Sequence[str]] = None,
136
- bound_issuers: Optional[Sequence[str]] = None,
137
124
  claim_mappings: Optional[Mapping[str, str]] = None,
138
- clock_skew_leeway: Optional[str] = None,
139
125
  discovery_ca_pems: Optional[Sequence[str]] = None,
140
- expiration_leeway: Optional[str] = None,
141
- jwks_ca_cert: Optional[str] = None,
142
- jwks_url: Optional[str] = None,
143
- jwt_validation_pub_keys: Optional[Sequence[str]] = None,
144
126
  list_claim_mappings: Optional[Mapping[str, str]] = None,
145
- not_before_leeway: Optional[str] = None,
146
- oidc_client_id: Optional[str] = None,
147
- oidc_client_secret: Optional[str] = None,
148
127
  oidc_disable_userinfo: Optional[bool] = None,
149
- oidc_discovery_url: Optional[str] = None,
150
128
  oidc_scopes: Optional[Sequence[str]] = None,
151
129
  signing_algs: Optional[Sequence[str]] = None):
152
130
  """
153
131
  :param Sequence[str] allowed_redirect_uris: `([]string: <optional>)` - A list of allowed values
154
132
  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).
155
139
  :param Sequence[str] bound_audiences: `([]string: <optional>)` - List of auth claims that are
156
140
  valid for login.
157
- :param Sequence[str] bound_issuers: `([]string: <optional>)` - The value against which to match
158
- the iss claim in a JWT.
159
- :param Mapping[str, str] claim_mappings: Mappings of claims (key) that will be copied to a metadata field (value).
160
- :param str clock_skew_leeway: `(string: <optional>)` - Duration of leeway when validating
161
- all claims in the form of a time duration such as "5m" or "1h".
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
143
  :param Sequence[str] discovery_ca_pems: `([]string: <optional>)` - PEM encoded CA certs for use
163
144
  by the TLS client used to talk with the OIDC Discovery URL.
164
- :param str expiration_leeway: `(string: <optional>)` - Duration of leeway when validating
165
- expiration of a JWT in the form of a time duration such as "5m" or "1h".
166
- :param str jwks_ca_cert: `(string: <optional>)` - PEM encoded CA cert for use by the
167
- TLS client used to talk with the JWKS server.
168
- :param str jwks_url: `(string: <optional>)` - JSON Web Key Sets url for authenticating
169
- signatures.
170
- :param Sequence[str] jwt_validation_pub_keys: `([]string: <optional>)` - List of PEM-encoded
171
- public keys to use to authenticate signatures locally.
172
- :param Mapping[str, str] list_claim_mappings: Mappings of list claims (key) that will be copied to a metadata field (value).
173
- :param str not_before_leeway: `(string: <optional>)` - Duration of leeway when validating
174
- not before values of a token in the form of a time duration such as "5m" or "1h".
175
- :param str oidc_client_id: `(string: <optional>)` - The OAuth Client ID configured
176
- with the OIDC provider.
177
- :param str oidc_client_secret: `(string: <optional>)` - The OAuth Client Secret
178
- configured with the OIDC provider.
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).
179
147
  :param bool oidc_disable_userinfo: `(bool: false)` - When set to `true`, Nomad will
180
148
  not make a request to the identity provider to get OIDC `UserInfo`.
181
149
  You may wish to set this if your identity provider doesn't send any
182
150
  additional claims from the `UserInfo` endpoint.
183
- :param str oidc_discovery_url: `(string: <optional>)` - The OIDC Discovery URL,
184
- without any .well-known component (base path).
185
151
  :param Sequence[str] oidc_scopes: `([]string: <optional>)` - List of OIDC scopes.
186
152
  :param Sequence[str] signing_algs: `([]string: <optional>)` - A list of supported signing
187
153
  algorithms.
188
154
  """
189
- if allowed_redirect_uris is not None:
190
- pulumi.set(__self__, "allowed_redirect_uris", allowed_redirect_uris)
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)
191
159
  if bound_audiences is not None:
192
160
  pulumi.set(__self__, "bound_audiences", bound_audiences)
193
- if bound_issuers is not None:
194
- pulumi.set(__self__, "bound_issuers", bound_issuers)
195
161
  if claim_mappings is not None:
196
162
  pulumi.set(__self__, "claim_mappings", claim_mappings)
197
- if clock_skew_leeway is not None:
198
- pulumi.set(__self__, "clock_skew_leeway", clock_skew_leeway)
199
163
  if discovery_ca_pems is not None:
200
164
  pulumi.set(__self__, "discovery_ca_pems", discovery_ca_pems)
201
- if expiration_leeway is not None:
202
- pulumi.set(__self__, "expiration_leeway", expiration_leeway)
203
- if jwks_ca_cert is not None:
204
- pulumi.set(__self__, "jwks_ca_cert", jwks_ca_cert)
205
- if jwks_url is not None:
206
- pulumi.set(__self__, "jwks_url", jwks_url)
207
- if jwt_validation_pub_keys is not None:
208
- pulumi.set(__self__, "jwt_validation_pub_keys", jwt_validation_pub_keys)
209
165
  if list_claim_mappings is not None:
210
166
  pulumi.set(__self__, "list_claim_mappings", list_claim_mappings)
211
- if not_before_leeway is not None:
212
- pulumi.set(__self__, "not_before_leeway", not_before_leeway)
213
- if oidc_client_id is not None:
214
- pulumi.set(__self__, "oidc_client_id", oidc_client_id)
215
- if oidc_client_secret is not None:
216
- pulumi.set(__self__, "oidc_client_secret", oidc_client_secret)
217
167
  if oidc_disable_userinfo is not None:
218
168
  pulumi.set(__self__, "oidc_disable_userinfo", oidc_disable_userinfo)
219
- if oidc_discovery_url is not None:
220
- pulumi.set(__self__, "oidc_discovery_url", oidc_discovery_url)
221
169
  if oidc_scopes is not None:
222
170
  pulumi.set(__self__, "oidc_scopes", oidc_scopes)
223
171
  if signing_algs is not None:
@@ -225,7 +173,7 @@ class AclAuthMethodConfig(dict):
225
173
 
226
174
  @property
227
175
  @pulumi.getter(name="allowedRedirectUris")
228
- def allowed_redirect_uris(self) -> Optional[Sequence[str]]:
176
+ def allowed_redirect_uris(self) -> Sequence[str]:
229
177
  """
230
178
  `([]string: <optional>)` - A list of allowed values
231
179
  that can be used for the redirect URI.
@@ -233,39 +181,49 @@ class AclAuthMethodConfig(dict):
233
181
  return pulumi.get(self, "allowed_redirect_uris")
234
182
 
235
183
  @property
236
- @pulumi.getter(name="boundAudiences")
237
- def bound_audiences(self) -> Optional[Sequence[str]]:
184
+ @pulumi.getter(name="oidcClientId")
185
+ def oidc_client_id(self) -> str:
238
186
  """
239
- `([]string: <optional>)` - List of auth claims that are
240
- valid for login.
187
+ `(string: <required>)` - The OAuth Client ID configured
188
+ with the OIDC provider.
241
189
  """
242
- return pulumi.get(self, "bound_audiences")
190
+ return pulumi.get(self, "oidc_client_id")
243
191
 
244
192
  @property
245
- @pulumi.getter(name="boundIssuers")
246
- def bound_issuers(self) -> Optional[Sequence[str]]:
193
+ @pulumi.getter(name="oidcClientSecret")
194
+ def oidc_client_secret(self) -> str:
247
195
  """
248
- `([]string: <optional>)` - The value against which to match
249
- the iss claim in a JWT.
196
+ `(string: <required>)` - The OAuth Client Secret
197
+ configured with the OIDC provider.
250
198
  """
251
- return pulumi.get(self, "bound_issuers")
199
+ return pulumi.get(self, "oidc_client_secret")
252
200
 
253
201
  @property
254
- @pulumi.getter(name="claimMappings")
255
- def claim_mappings(self) -> Optional[Mapping[str, str]]:
202
+ @pulumi.getter(name="oidcDiscoveryUrl")
203
+ def oidc_discovery_url(self) -> str:
256
204
  """
257
- Mappings of claims (key) that will be copied to a metadata field (value).
205
+ `(string: <required>)` - The OIDC Discovery URL,
206
+ without any .well-known component (base path).
258
207
  """
259
- return pulumi.get(self, "claim_mappings")
208
+ return pulumi.get(self, "oidc_discovery_url")
209
+
210
+ @property
211
+ @pulumi.getter(name="boundAudiences")
212
+ def bound_audiences(self) -> Optional[Sequence[str]]:
213
+ """
214
+ `([]string: <optional>)` - List of auth claims that are
215
+ valid for login.
216
+ """
217
+ return pulumi.get(self, "bound_audiences")
260
218
 
261
219
  @property
262
- @pulumi.getter(name="clockSkewLeeway")
263
- def clock_skew_leeway(self) -> Optional[str]:
220
+ @pulumi.getter(name="claimMappings")
221
+ def claim_mappings(self) -> Optional[Mapping[str, str]]:
264
222
  """
265
- `(string: <optional>)` - Duration of leeway when validating
266
- all claims in the form of a time duration such as "5m" or "1h".
223
+ `(map[string]string: <optional>)` - Mappings of claims (key)
224
+ that will be copied to a metadata field (value).
267
225
  """
268
- return pulumi.get(self, "clock_skew_leeway")
226
+ return pulumi.get(self, "claim_mappings")
269
227
 
270
228
  @property
271
229
  @pulumi.getter(name="discoveryCaPems")
@@ -276,77 +234,15 @@ class AclAuthMethodConfig(dict):
276
234
  """
277
235
  return pulumi.get(self, "discovery_ca_pems")
278
236
 
279
- @property
280
- @pulumi.getter(name="expirationLeeway")
281
- def expiration_leeway(self) -> Optional[str]:
282
- """
283
- `(string: <optional>)` - Duration of leeway when validating
284
- expiration of a JWT in the form of a time duration such as "5m" or "1h".
285
- """
286
- return pulumi.get(self, "expiration_leeway")
287
-
288
- @property
289
- @pulumi.getter(name="jwksCaCert")
290
- def jwks_ca_cert(self) -> Optional[str]:
291
- """
292
- `(string: <optional>)` - PEM encoded CA cert for use by the
293
- TLS client used to talk with the JWKS server.
294
- """
295
- return pulumi.get(self, "jwks_ca_cert")
296
-
297
- @property
298
- @pulumi.getter(name="jwksUrl")
299
- def jwks_url(self) -> Optional[str]:
300
- """
301
- `(string: <optional>)` - JSON Web Key Sets url for authenticating
302
- signatures.
303
- """
304
- return pulumi.get(self, "jwks_url")
305
-
306
- @property
307
- @pulumi.getter(name="jwtValidationPubKeys")
308
- def jwt_validation_pub_keys(self) -> Optional[Sequence[str]]:
309
- """
310
- `([]string: <optional>)` - List of PEM-encoded
311
- public keys to use to authenticate signatures locally.
312
- """
313
- return pulumi.get(self, "jwt_validation_pub_keys")
314
-
315
237
  @property
316
238
  @pulumi.getter(name="listClaimMappings")
317
239
  def list_claim_mappings(self) -> Optional[Mapping[str, str]]:
318
240
  """
319
- Mappings of list claims (key) that will be copied to a metadata field (value).
241
+ `(map[string]string: <optional>)` - Mappings of list
242
+ claims (key) that will be copied to a metadata field (value).
320
243
  """
321
244
  return pulumi.get(self, "list_claim_mappings")
322
245
 
323
- @property
324
- @pulumi.getter(name="notBeforeLeeway")
325
- def not_before_leeway(self) -> Optional[str]:
326
- """
327
- `(string: <optional>)` - Duration of leeway when validating
328
- not before values of a token in the form of a time duration such as "5m" or "1h".
329
- """
330
- return pulumi.get(self, "not_before_leeway")
331
-
332
- @property
333
- @pulumi.getter(name="oidcClientId")
334
- def oidc_client_id(self) -> Optional[str]:
335
- """
336
- `(string: <optional>)` - The OAuth Client ID configured
337
- with the OIDC provider.
338
- """
339
- return pulumi.get(self, "oidc_client_id")
340
-
341
- @property
342
- @pulumi.getter(name="oidcClientSecret")
343
- def oidc_client_secret(self) -> Optional[str]:
344
- """
345
- `(string: <optional>)` - The OAuth Client Secret
346
- configured with the OIDC provider.
347
- """
348
- return pulumi.get(self, "oidc_client_secret")
349
-
350
246
  @property
351
247
  @pulumi.getter(name="oidcDisableUserinfo")
352
248
  def oidc_disable_userinfo(self) -> Optional[bool]:
@@ -358,15 +254,6 @@ class AclAuthMethodConfig(dict):
358
254
  """
359
255
  return pulumi.get(self, "oidc_disable_userinfo")
360
256
 
361
- @property
362
- @pulumi.getter(name="oidcDiscoveryUrl")
363
- def oidc_discovery_url(self) -> Optional[str]:
364
- """
365
- `(string: <optional>)` - The OIDC Discovery URL,
366
- without any .well-known component (base path).
367
- """
368
- return pulumi.get(self, "oidc_discovery_url")
369
-
370
257
  @property
371
258
  @pulumi.getter(name="oidcScopes")
372
259
  def oidc_scopes(self) -> Optional[Sequence[str]]:
@@ -410,10 +297,15 @@ class AclPolicyJobAcl(dict):
410
297
  namespace: Optional[str] = None,
411
298
  task: Optional[str] = None):
412
299
  """
413
- :param str job_id: Job
414
- :param str group: Group
415
- :param str namespace: Namespace
416
- :param str task: Task
300
+ :param str job_id: `(string: <optional>` - The job to attach the policy. Required if
301
+ `group` is set.
302
+ :param str group: `(string: <optional>` - The group to attach the policy. Required if
303
+ `task` is set.
304
+ :param str namespace: `(string: "default")` - The namespace to attach the policy.
305
+ Required if `job_id` is set.
306
+ :param str task: `(string: <optional>` - The task to attach the policy.
307
+
308
+ [nomad_docs_wi]: https://www.nomadproject.io/docs/concepts/workload-identity#workload-associated-acl-policies
417
309
  """
418
310
  pulumi.set(__self__, "job_id", job_id)
419
311
  if group is not None:
@@ -427,7 +319,8 @@ class AclPolicyJobAcl(dict):
427
319
  @pulumi.getter(name="jobId")
428
320
  def job_id(self) -> str:
429
321
  """
430
- Job
322
+ `(string: <optional>` - The job to attach the policy. Required if
323
+ `group` is set.
431
324
  """
432
325
  return pulumi.get(self, "job_id")
433
326
 
@@ -435,7 +328,8 @@ class AclPolicyJobAcl(dict):
435
328
  @pulumi.getter
436
329
  def group(self) -> Optional[str]:
437
330
  """
438
- Group
331
+ `(string: <optional>` - The group to attach the policy. Required if
332
+ `task` is set.
439
333
  """
440
334
  return pulumi.get(self, "group")
441
335
 
@@ -443,7 +337,8 @@ class AclPolicyJobAcl(dict):
443
337
  @pulumi.getter
444
338
  def namespace(self) -> Optional[str]:
445
339
  """
446
- Namespace
340
+ `(string: "default")` - The namespace to attach the policy.
341
+ Required if `job_id` is set.
447
342
  """
448
343
  return pulumi.get(self, "namespace")
449
344
 
@@ -451,7 +346,9 @@ class AclPolicyJobAcl(dict):
451
346
  @pulumi.getter
452
347
  def task(self) -> Optional[str]:
453
348
  """
454
- Task
349
+ `(string: <optional>` - The task to attach the policy.
350
+
351
+ [nomad_docs_wi]: https://www.nomadproject.io/docs/concepts/workload-identity#workload-associated-acl-policies
455
352
  """
456
353
  return pulumi.get(self, "task")
457
354
 
@@ -732,12 +629,24 @@ class CsiVolumeRegistrationMountOptions(dict):
732
629
  class CsiVolumeRegistrationTopology(dict):
733
630
  def __init__(__self__, *,
734
631
  segments: Optional[Mapping[str, str]] = None):
632
+ """
633
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
634
+
635
+ In addition to the above arguments, the following attributes are exported and
636
+ can be referenced:
637
+ """
735
638
  if segments is not None:
736
639
  pulumi.set(__self__, "segments", segments)
737
640
 
738
641
  @property
739
642
  @pulumi.getter
740
643
  def segments(self) -> Optional[Mapping[str, str]]:
644
+ """
645
+ `(map[string]string)` - Define the attributes for the topology request.
646
+
647
+ In addition to the above arguments, the following attributes are exported and
648
+ can be referenced:
649
+ """
741
650
  return pulumi.get(self, "segments")
742
651
 
743
652
 
@@ -765,7 +674,7 @@ class CsiVolumeRegistrationTopologyRequestRequired(dict):
765
674
  def __init__(__self__, *,
766
675
  topologies: Sequence['outputs.CsiVolumeRegistrationTopologyRequestRequiredTopology']):
767
676
  """
768
- :param Sequence['CsiVolumeRegistrationTopologyRequestRequiredTopologyArgs'] topologies: Defines the location for the volume.
677
+ :param Sequence['CsiVolumeRegistrationTopologyRequestRequiredTopologyArgs'] topologies: `(List of segments: <required>)` - Defines the location for the volume.
769
678
  """
770
679
  pulumi.set(__self__, "topologies", topologies)
771
680
 
@@ -773,7 +682,7 @@ class CsiVolumeRegistrationTopologyRequestRequired(dict):
773
682
  @pulumi.getter
774
683
  def topologies(self) -> Sequence['outputs.CsiVolumeRegistrationTopologyRequestRequiredTopology']:
775
684
  """
776
- Defines the location for the volume.
685
+ `(List of segments: <required>)` - Defines the location for the volume.
777
686
  """
778
687
  return pulumi.get(self, "topologies")
779
688
 
@@ -783,7 +692,10 @@ class CsiVolumeRegistrationTopologyRequestRequiredTopology(dict):
783
692
  def __init__(__self__, *,
784
693
  segments: Mapping[str, str]):
785
694
  """
786
- :param Mapping[str, str] segments: Define attributes for the topology request.
695
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
696
+
697
+ In addition to the above arguments, the following attributes are exported and
698
+ can be referenced:
787
699
  """
788
700
  pulumi.set(__self__, "segments", segments)
789
701
 
@@ -791,7 +703,10 @@ class CsiVolumeRegistrationTopologyRequestRequiredTopology(dict):
791
703
  @pulumi.getter
792
704
  def segments(self) -> Mapping[str, str]:
793
705
  """
794
- Define attributes for the topology request.
706
+ `(map[string]string)` - Define the attributes for the topology request.
707
+
708
+ In addition to the above arguments, the following attributes are exported and
709
+ can be referenced:
795
710
  """
796
711
  return pulumi.get(self, "segments")
797
712
 
@@ -800,12 +715,24 @@ class CsiVolumeRegistrationTopologyRequestRequiredTopology(dict):
800
715
  class CsiVolumeTopology(dict):
801
716
  def __init__(__self__, *,
802
717
  segments: Optional[Mapping[str, str]] = None):
718
+ """
719
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
720
+
721
+ In addition to the above arguments, the following attributes are exported and
722
+ can be referenced:
723
+ """
803
724
  if segments is not None:
804
725
  pulumi.set(__self__, "segments", segments)
805
726
 
806
727
  @property
807
728
  @pulumi.getter
808
729
  def segments(self) -> Optional[Mapping[str, str]]:
730
+ """
731
+ `(map[string]string)` - Define the attributes for the topology request.
732
+
733
+ In addition to the above arguments, the following attributes are exported and
734
+ can be referenced:
735
+ """
809
736
  return pulumi.get(self, "segments")
810
737
 
811
738
 
@@ -845,7 +772,7 @@ class CsiVolumeTopologyRequestPreferred(dict):
845
772
  def __init__(__self__, *,
846
773
  topologies: Sequence['outputs.CsiVolumeTopologyRequestPreferredTopology']):
847
774
  """
848
- :param Sequence['CsiVolumeTopologyRequestPreferredTopologyArgs'] topologies: Defines the location for the volume.
775
+ :param Sequence['CsiVolumeTopologyRequestPreferredTopologyArgs'] topologies: `(List of segments: <required>)` - Defines the location for the volume.
849
776
  """
850
777
  pulumi.set(__self__, "topologies", topologies)
851
778
 
@@ -853,7 +780,7 @@ class CsiVolumeTopologyRequestPreferred(dict):
853
780
  @pulumi.getter
854
781
  def topologies(self) -> Sequence['outputs.CsiVolumeTopologyRequestPreferredTopology']:
855
782
  """
856
- Defines the location for the volume.
783
+ `(List of segments: <required>)` - Defines the location for the volume.
857
784
  """
858
785
  return pulumi.get(self, "topologies")
859
786
 
@@ -863,7 +790,10 @@ class CsiVolumeTopologyRequestPreferredTopology(dict):
863
790
  def __init__(__self__, *,
864
791
  segments: Mapping[str, str]):
865
792
  """
866
- :param Mapping[str, str] segments: Define the attributes for the topology request.
793
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
794
+
795
+ In addition to the above arguments, the following attributes are exported and
796
+ can be referenced:
867
797
  """
868
798
  pulumi.set(__self__, "segments", segments)
869
799
 
@@ -871,7 +801,10 @@ class CsiVolumeTopologyRequestPreferredTopology(dict):
871
801
  @pulumi.getter
872
802
  def segments(self) -> Mapping[str, str]:
873
803
  """
874
- Define the attributes for the topology request.
804
+ `(map[string]string)` - Define the attributes for the topology request.
805
+
806
+ In addition to the above arguments, the following attributes are exported and
807
+ can be referenced:
875
808
  """
876
809
  return pulumi.get(self, "segments")
877
810
 
@@ -881,7 +814,7 @@ class CsiVolumeTopologyRequestRequired(dict):
881
814
  def __init__(__self__, *,
882
815
  topologies: Sequence['outputs.CsiVolumeTopologyRequestRequiredTopology']):
883
816
  """
884
- :param Sequence['CsiVolumeTopologyRequestRequiredTopologyArgs'] topologies: Defines the location for the volume.
817
+ :param Sequence['CsiVolumeTopologyRequestRequiredTopologyArgs'] topologies: `(List of segments: <required>)` - Defines the location for the volume.
885
818
  """
886
819
  pulumi.set(__self__, "topologies", topologies)
887
820
 
@@ -889,7 +822,7 @@ class CsiVolumeTopologyRequestRequired(dict):
889
822
  @pulumi.getter
890
823
  def topologies(self) -> Sequence['outputs.CsiVolumeTopologyRequestRequiredTopology']:
891
824
  """
892
- Defines the location for the volume.
825
+ `(List of segments: <required>)` - Defines the location for the volume.
893
826
  """
894
827
  return pulumi.get(self, "topologies")
895
828
 
@@ -899,7 +832,10 @@ class CsiVolumeTopologyRequestRequiredTopology(dict):
899
832
  def __init__(__self__, *,
900
833
  segments: Mapping[str, str]):
901
834
  """
902
- :param Mapping[str, str] segments: Define the attributes for the topology request.
835
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
836
+
837
+ In addition to the above arguments, the following attributes are exported and
838
+ can be referenced:
903
839
  """
904
840
  pulumi.set(__self__, "segments", segments)
905
841
 
@@ -907,7 +843,10 @@ class CsiVolumeTopologyRequestRequiredTopology(dict):
907
843
  @pulumi.getter
908
844
  def segments(self) -> Mapping[str, str]:
909
845
  """
910
- Define the attributes for the topology request.
846
+ `(map[string]string)` - Define the attributes for the topology request.
847
+
848
+ In addition to the above arguments, the following attributes are exported and
849
+ can be referenced:
911
850
  """
912
851
  return pulumi.get(self, "segments")
913
852
 
@@ -1028,12 +967,24 @@ class ExternalVolumeMountOptions(dict):
1028
967
  class ExternalVolumeTopology(dict):
1029
968
  def __init__(__self__, *,
1030
969
  segments: Optional[Mapping[str, str]] = None):
970
+ """
971
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
972
+
973
+ In addition to the above arguments, the following attributes are exported and
974
+ can be referenced:
975
+ """
1031
976
  if segments is not None:
1032
977
  pulumi.set(__self__, "segments", segments)
1033
978
 
1034
979
  @property
1035
980
  @pulumi.getter
1036
981
  def segments(self) -> Optional[Mapping[str, str]]:
982
+ """
983
+ `(map[string]string)` - Define the attributes for the topology request.
984
+
985
+ In addition to the above arguments, the following attributes are exported and
986
+ can be referenced:
987
+ """
1037
988
  return pulumi.get(self, "segments")
1038
989
 
1039
990
 
@@ -1073,7 +1024,7 @@ class ExternalVolumeTopologyRequestPreferred(dict):
1073
1024
  def __init__(__self__, *,
1074
1025
  topologies: Sequence['outputs.ExternalVolumeTopologyRequestPreferredTopology']):
1075
1026
  """
1076
- :param Sequence['ExternalVolumeTopologyRequestPreferredTopologyArgs'] topologies: Defines the location for the volume.
1027
+ :param Sequence['ExternalVolumeTopologyRequestPreferredTopologyArgs'] topologies: `(List of segments: <required>)` - Defines the location for the volume.
1077
1028
  """
1078
1029
  pulumi.set(__self__, "topologies", topologies)
1079
1030
 
@@ -1081,7 +1032,7 @@ class ExternalVolumeTopologyRequestPreferred(dict):
1081
1032
  @pulumi.getter
1082
1033
  def topologies(self) -> Sequence['outputs.ExternalVolumeTopologyRequestPreferredTopology']:
1083
1034
  """
1084
- Defines the location for the volume.
1035
+ `(List of segments: <required>)` - Defines the location for the volume.
1085
1036
  """
1086
1037
  return pulumi.get(self, "topologies")
1087
1038
 
@@ -1091,7 +1042,10 @@ class ExternalVolumeTopologyRequestPreferredTopology(dict):
1091
1042
  def __init__(__self__, *,
1092
1043
  segments: Mapping[str, str]):
1093
1044
  """
1094
- :param Mapping[str, str] segments: Define the attributes for the topology request.
1045
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
1046
+
1047
+ In addition to the above arguments, the following attributes are exported and
1048
+ can be referenced:
1095
1049
  """
1096
1050
  pulumi.set(__self__, "segments", segments)
1097
1051
 
@@ -1099,7 +1053,10 @@ class ExternalVolumeTopologyRequestPreferredTopology(dict):
1099
1053
  @pulumi.getter
1100
1054
  def segments(self) -> Mapping[str, str]:
1101
1055
  """
1102
- Define the attributes for the topology request.
1056
+ `(map[string]string)` - Define the attributes for the topology request.
1057
+
1058
+ In addition to the above arguments, the following attributes are exported and
1059
+ can be referenced:
1103
1060
  """
1104
1061
  return pulumi.get(self, "segments")
1105
1062
 
@@ -1109,7 +1066,7 @@ class ExternalVolumeTopologyRequestRequired(dict):
1109
1066
  def __init__(__self__, *,
1110
1067
  topologies: Sequence['outputs.ExternalVolumeTopologyRequestRequiredTopology']):
1111
1068
  """
1112
- :param Sequence['ExternalVolumeTopologyRequestRequiredTopologyArgs'] topologies: Defines the location for the volume.
1069
+ :param Sequence['ExternalVolumeTopologyRequestRequiredTopologyArgs'] topologies: `(List of segments: <required>)` - Defines the location for the volume.
1113
1070
  """
1114
1071
  pulumi.set(__self__, "topologies", topologies)
1115
1072
 
@@ -1117,7 +1074,7 @@ class ExternalVolumeTopologyRequestRequired(dict):
1117
1074
  @pulumi.getter
1118
1075
  def topologies(self) -> Sequence['outputs.ExternalVolumeTopologyRequestRequiredTopology']:
1119
1076
  """
1120
- Defines the location for the volume.
1077
+ `(List of segments: <required>)` - Defines the location for the volume.
1121
1078
  """
1122
1079
  return pulumi.get(self, "topologies")
1123
1080
 
@@ -1127,7 +1084,10 @@ class ExternalVolumeTopologyRequestRequiredTopology(dict):
1127
1084
  def __init__(__self__, *,
1128
1085
  segments: Mapping[str, str]):
1129
1086
  """
1130
- :param Mapping[str, str] segments: Define the attributes for the topology request.
1087
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
1088
+
1089
+ In addition to the above arguments, the following attributes are exported and
1090
+ can be referenced:
1131
1091
  """
1132
1092
  pulumi.set(__self__, "segments", segments)
1133
1093
 
@@ -1135,7 +1095,10 @@ class ExternalVolumeTopologyRequestRequiredTopology(dict):
1135
1095
  @pulumi.getter
1136
1096
  def segments(self) -> Mapping[str, str]:
1137
1097
  """
1138
- Define the attributes for the topology request.
1098
+ `(map[string]string)` - Define the attributes for the topology request.
1099
+
1100
+ In addition to the above arguments, the following attributes are exported and
1101
+ can be referenced:
1139
1102
  """
1140
1103
  return pulumi.get(self, "segments")
1141
1104
 
@@ -1787,12 +1750,24 @@ class VolumeMountOptions(dict):
1787
1750
  class VolumeTopology(dict):
1788
1751
  def __init__(__self__, *,
1789
1752
  segments: Optional[Mapping[str, str]] = None):
1753
+ """
1754
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
1755
+
1756
+ In addition to the above arguments, the following attributes are exported and
1757
+ can be referenced:
1758
+ """
1790
1759
  if segments is not None:
1791
1760
  pulumi.set(__self__, "segments", segments)
1792
1761
 
1793
1762
  @property
1794
1763
  @pulumi.getter
1795
1764
  def segments(self) -> Optional[Mapping[str, str]]:
1765
+ """
1766
+ `(map[string]string)` - Define the attributes for the topology request.
1767
+
1768
+ In addition to the above arguments, the following attributes are exported and
1769
+ can be referenced:
1770
+ """
1796
1771
  return pulumi.get(self, "segments")
1797
1772
 
1798
1773
 
@@ -1820,7 +1795,7 @@ class VolumeTopologyRequestRequired(dict):
1820
1795
  def __init__(__self__, *,
1821
1796
  topologies: Sequence['outputs.VolumeTopologyRequestRequiredTopology']):
1822
1797
  """
1823
- :param Sequence['VolumeTopologyRequestRequiredTopologyArgs'] topologies: Defines the location for the volume.
1798
+ :param Sequence['VolumeTopologyRequestRequiredTopologyArgs'] topologies: `(List of segments: <required>)` - Defines the location for the volume.
1824
1799
  """
1825
1800
  pulumi.set(__self__, "topologies", topologies)
1826
1801
 
@@ -1828,7 +1803,7 @@ class VolumeTopologyRequestRequired(dict):
1828
1803
  @pulumi.getter
1829
1804
  def topologies(self) -> Sequence['outputs.VolumeTopologyRequestRequiredTopology']:
1830
1805
  """
1831
- Defines the location for the volume.
1806
+ `(List of segments: <required>)` - Defines the location for the volume.
1832
1807
  """
1833
1808
  return pulumi.get(self, "topologies")
1834
1809
 
@@ -1838,7 +1813,10 @@ class VolumeTopologyRequestRequiredTopology(dict):
1838
1813
  def __init__(__self__, *,
1839
1814
  segments: Mapping[str, str]):
1840
1815
  """
1841
- :param Mapping[str, str] segments: Define attributes for the topology request.
1816
+ :param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
1817
+
1818
+ In addition to the above arguments, the following attributes are exported and
1819
+ can be referenced:
1842
1820
  """
1843
1821
  pulumi.set(__self__, "segments", segments)
1844
1822
 
@@ -1846,7 +1824,10 @@ class VolumeTopologyRequestRequiredTopology(dict):
1846
1824
  @pulumi.getter
1847
1825
  def segments(self) -> Mapping[str, str]:
1848
1826
  """
1849
- Define attributes for the topology request.
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:
1850
1831
  """
1851
1832
  return pulumi.get(self, "segments")
1852
1833
 
@@ -2598,79 +2579,6 @@ class GetJobTaskGroupVolumeResult(dict):
2598
2579
  return pulumi.get(self, "type")
2599
2580
 
2600
2581
 
2601
- @pulumi.output_type
2602
- class GetJwksKeyResult(dict):
2603
- def __init__(__self__, *,
2604
- algorithm: str,
2605
- exponent: str,
2606
- key_id: str,
2607
- key_type: str,
2608
- key_use: str,
2609
- modulus: str):
2610
- """
2611
- :param str algorithm: `(string)` - JWK field `alg`
2612
- :param str exponent: `(string)` - JWK field `e`
2613
- :param str key_id: `(string)` - JWK field `kid`
2614
- :param str key_type: `(string)` - JWK field `kty`
2615
- :param str key_use: `(string)` - JWK field `use`
2616
- :param str modulus: `(string)` - JWK field `n`
2617
- """
2618
- pulumi.set(__self__, "algorithm", algorithm)
2619
- pulumi.set(__self__, "exponent", exponent)
2620
- pulumi.set(__self__, "key_id", key_id)
2621
- pulumi.set(__self__, "key_type", key_type)
2622
- pulumi.set(__self__, "key_use", key_use)
2623
- pulumi.set(__self__, "modulus", modulus)
2624
-
2625
- @property
2626
- @pulumi.getter
2627
- def algorithm(self) -> str:
2628
- """
2629
- `(string)` - JWK field `alg`
2630
- """
2631
- return pulumi.get(self, "algorithm")
2632
-
2633
- @property
2634
- @pulumi.getter
2635
- def exponent(self) -> str:
2636
- """
2637
- `(string)` - JWK field `e`
2638
- """
2639
- return pulumi.get(self, "exponent")
2640
-
2641
- @property
2642
- @pulumi.getter(name="keyId")
2643
- def key_id(self) -> str:
2644
- """
2645
- `(string)` - JWK field `kid`
2646
- """
2647
- return pulumi.get(self, "key_id")
2648
-
2649
- @property
2650
- @pulumi.getter(name="keyType")
2651
- def key_type(self) -> str:
2652
- """
2653
- `(string)` - JWK field `kty`
2654
- """
2655
- return pulumi.get(self, "key_type")
2656
-
2657
- @property
2658
- @pulumi.getter(name="keyUse")
2659
- def key_use(self) -> str:
2660
- """
2661
- `(string)` - JWK field `use`
2662
- """
2663
- return pulumi.get(self, "key_use")
2664
-
2665
- @property
2666
- @pulumi.getter
2667
- def modulus(self) -> str:
2668
- """
2669
- `(string)` - JWK field `n`
2670
- """
2671
- return pulumi.get(self, "modulus")
2672
-
2673
-
2674
2582
  @pulumi.output_type
2675
2583
  class GetNamespaceCapabilityResult(dict):
2676
2584
  def __init__(__self__, *,