pulumi-nomad 2.3.0a1717543517__py3-none-any.whl → 2.3.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pulumi_nomad/__init__.py +1 -0
- pulumi_nomad/_inputs.py +238 -66
- pulumi_nomad/_utilities.py +40 -4
- pulumi_nomad/acl_auth_method.py +37 -37
- pulumi_nomad/acl_policy.py +5 -5
- pulumi_nomad/acl_role.py +5 -5
- pulumi_nomad/acl_token.py +5 -5
- pulumi_nomad/csi_volume.py +16 -16
- pulumi_nomad/csi_volume_registration.py +16 -16
- pulumi_nomad/external_volume.py +54 -54
- pulumi_nomad/get_jwks.py +116 -0
- pulumi_nomad/job.py +11 -21
- pulumi_nomad/namespace.py +24 -24
- pulumi_nomad/node_pool.py +5 -5
- pulumi_nomad/outputs.py +291 -59
- pulumi_nomad/provider.py +3 -3
- pulumi_nomad/pulumi-plugin.json +1 -1
- pulumi_nomad/quote_specification.py +19 -19
- pulumi_nomad/volume.py +60 -72
- {pulumi_nomad-2.3.0a1717543517.dist-info → pulumi_nomad-2.3.1.dist-info}/METADATA +1 -1
- {pulumi_nomad-2.3.0a1717543517.dist-info → pulumi_nomad-2.3.1.dist-info}/RECORD +23 -22
- {pulumi_nomad-2.3.0a1717543517.dist-info → pulumi_nomad-2.3.1.dist-info}/WHEEL +1 -1
- {pulumi_nomad-2.3.0a1717543517.dist-info → pulumi_nomad-2.3.1.dist-info}/top_level.txt +0 -0
pulumi_nomad/outputs.py
CHANGED
@@ -67,6 +67,7 @@ __all__ = [
|
|
67
67
|
'GetJobTaskGroupTaskResult',
|
68
68
|
'GetJobTaskGroupTaskVolumeMountResult',
|
69
69
|
'GetJobTaskGroupVolumeResult',
|
70
|
+
'GetJwksKeyResult',
|
70
71
|
'GetNamespaceCapabilityResult',
|
71
72
|
'GetNamespaceNodePoolConfigResult',
|
72
73
|
'GetNodePoolSchedulerConfigResult',
|
@@ -83,22 +84,36 @@ class AclAuthMethodConfig(dict):
|
|
83
84
|
suggest = None
|
84
85
|
if key == "allowedRedirectUris":
|
85
86
|
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
87
|
elif key == "boundAudiences":
|
93
88
|
suggest = "bound_audiences"
|
89
|
+
elif key == "boundIssuers":
|
90
|
+
suggest = "bound_issuers"
|
94
91
|
elif key == "claimMappings":
|
95
92
|
suggest = "claim_mappings"
|
93
|
+
elif key == "clockSkewLeeway":
|
94
|
+
suggest = "clock_skew_leeway"
|
96
95
|
elif key == "discoveryCaPems":
|
97
96
|
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"
|
98
105
|
elif key == "listClaimMappings":
|
99
106
|
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"
|
100
113
|
elif key == "oidcDisableUserinfo":
|
101
114
|
suggest = "oidc_disable_userinfo"
|
115
|
+
elif key == "oidcDiscoveryUrl":
|
116
|
+
suggest = "oidc_discovery_url"
|
102
117
|
elif key == "oidcScopes":
|
103
118
|
suggest = "oidc_scopes"
|
104
119
|
elif key == "signingAlgs":
|
@@ -116,56 +131,93 @@ class AclAuthMethodConfig(dict):
|
|
116
131
|
return super().get(key, default)
|
117
132
|
|
118
133
|
def __init__(__self__, *,
|
119
|
-
allowed_redirect_uris: Sequence[str],
|
120
|
-
oidc_client_id: str,
|
121
|
-
oidc_client_secret: str,
|
122
|
-
oidc_discovery_url: str,
|
134
|
+
allowed_redirect_uris: Optional[Sequence[str]] = None,
|
123
135
|
bound_audiences: Optional[Sequence[str]] = None,
|
136
|
+
bound_issuers: Optional[Sequence[str]] = None,
|
124
137
|
claim_mappings: Optional[Mapping[str, str]] = None,
|
138
|
+
clock_skew_leeway: Optional[str] = None,
|
125
139
|
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,
|
126
144
|
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,
|
127
148
|
oidc_disable_userinfo: Optional[bool] = None,
|
149
|
+
oidc_discovery_url: Optional[str] = None,
|
128
150
|
oidc_scopes: Optional[Sequence[str]] = None,
|
129
151
|
signing_algs: Optional[Sequence[str]] = None):
|
130
152
|
"""
|
131
153
|
:param Sequence[str] allowed_redirect_uris: `([]string: <optional>)` - A list of allowed values
|
132
154
|
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
155
|
:param Sequence[str] bound_audiences: `([]string: <optional>)` - List of auth claims that are
|
140
156
|
valid for login.
|
141
|
-
:param
|
142
|
-
|
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".
|
143
162
|
:param Sequence[str] discovery_ca_pems: `([]string: <optional>)` - PEM encoded CA certs for use
|
144
163
|
by the TLS client used to talk with the OIDC Discovery URL.
|
145
|
-
:param
|
146
|
-
|
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.
|
147
179
|
:param bool oidc_disable_userinfo: `(bool: false)` - When set to `true`, Nomad will
|
148
180
|
not make a request to the identity provider to get OIDC `UserInfo`.
|
149
181
|
You may wish to set this if your identity provider doesn't send any
|
150
182
|
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).
|
151
185
|
:param Sequence[str] oidc_scopes: `([]string: <optional>)` - List of OIDC scopes.
|
152
186
|
:param Sequence[str] signing_algs: `([]string: <optional>)` - A list of supported signing
|
153
187
|
algorithms.
|
154
188
|
"""
|
155
|
-
|
156
|
-
|
157
|
-
pulumi.set(__self__, "oidc_client_secret", oidc_client_secret)
|
158
|
-
pulumi.set(__self__, "oidc_discovery_url", oidc_discovery_url)
|
189
|
+
if allowed_redirect_uris is not None:
|
190
|
+
pulumi.set(__self__, "allowed_redirect_uris", allowed_redirect_uris)
|
159
191
|
if bound_audiences is not None:
|
160
192
|
pulumi.set(__self__, "bound_audiences", bound_audiences)
|
193
|
+
if bound_issuers is not None:
|
194
|
+
pulumi.set(__self__, "bound_issuers", bound_issuers)
|
161
195
|
if claim_mappings is not None:
|
162
196
|
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)
|
163
199
|
if discovery_ca_pems is not None:
|
164
200
|
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)
|
165
209
|
if list_claim_mappings is not None:
|
166
210
|
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)
|
167
217
|
if oidc_disable_userinfo is not None:
|
168
218
|
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)
|
169
221
|
if oidc_scopes is not None:
|
170
222
|
pulumi.set(__self__, "oidc_scopes", oidc_scopes)
|
171
223
|
if signing_algs is not None:
|
@@ -173,40 +225,13 @@ class AclAuthMethodConfig(dict):
|
|
173
225
|
|
174
226
|
@property
|
175
227
|
@pulumi.getter(name="allowedRedirectUris")
|
176
|
-
def allowed_redirect_uris(self) -> Sequence[str]:
|
228
|
+
def allowed_redirect_uris(self) -> Optional[Sequence[str]]:
|
177
229
|
"""
|
178
230
|
`([]string: <optional>)` - A list of allowed values
|
179
231
|
that can be used for the redirect URI.
|
180
232
|
"""
|
181
233
|
return pulumi.get(self, "allowed_redirect_uris")
|
182
234
|
|
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
235
|
@property
|
211
236
|
@pulumi.getter(name="boundAudiences")
|
212
237
|
def bound_audiences(self) -> Optional[Sequence[str]]:
|
@@ -216,15 +241,32 @@ class AclAuthMethodConfig(dict):
|
|
216
241
|
"""
|
217
242
|
return pulumi.get(self, "bound_audiences")
|
218
243
|
|
244
|
+
@property
|
245
|
+
@pulumi.getter(name="boundIssuers")
|
246
|
+
def bound_issuers(self) -> Optional[Sequence[str]]:
|
247
|
+
"""
|
248
|
+
`([]string: <optional>)` - The value against which to match
|
249
|
+
the iss claim in a JWT.
|
250
|
+
"""
|
251
|
+
return pulumi.get(self, "bound_issuers")
|
252
|
+
|
219
253
|
@property
|
220
254
|
@pulumi.getter(name="claimMappings")
|
221
255
|
def claim_mappings(self) -> Optional[Mapping[str, str]]:
|
222
256
|
"""
|
223
|
-
|
224
|
-
that will be copied to a metadata field (value).
|
257
|
+
Mappings of claims (key) that will be copied to a metadata field (value).
|
225
258
|
"""
|
226
259
|
return pulumi.get(self, "claim_mappings")
|
227
260
|
|
261
|
+
@property
|
262
|
+
@pulumi.getter(name="clockSkewLeeway")
|
263
|
+
def clock_skew_leeway(self) -> Optional[str]:
|
264
|
+
"""
|
265
|
+
`(string: <optional>)` - Duration of leeway when validating
|
266
|
+
all claims in the form of a time duration such as "5m" or "1h".
|
267
|
+
"""
|
268
|
+
return pulumi.get(self, "clock_skew_leeway")
|
269
|
+
|
228
270
|
@property
|
229
271
|
@pulumi.getter(name="discoveryCaPems")
|
230
272
|
def discovery_ca_pems(self) -> Optional[Sequence[str]]:
|
@@ -234,15 +276,77 @@ class AclAuthMethodConfig(dict):
|
|
234
276
|
"""
|
235
277
|
return pulumi.get(self, "discovery_ca_pems")
|
236
278
|
|
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
|
+
|
237
315
|
@property
|
238
316
|
@pulumi.getter(name="listClaimMappings")
|
239
317
|
def list_claim_mappings(self) -> Optional[Mapping[str, str]]:
|
240
318
|
"""
|
241
|
-
|
242
|
-
claims (key) that will be copied to a metadata field (value).
|
319
|
+
Mappings of list claims (key) that will be copied to a metadata field (value).
|
243
320
|
"""
|
244
321
|
return pulumi.get(self, "list_claim_mappings")
|
245
322
|
|
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
|
+
|
246
350
|
@property
|
247
351
|
@pulumi.getter(name="oidcDisableUserinfo")
|
248
352
|
def oidc_disable_userinfo(self) -> Optional[bool]:
|
@@ -254,6 +358,15 @@ class AclAuthMethodConfig(dict):
|
|
254
358
|
"""
|
255
359
|
return pulumi.get(self, "oidc_disable_userinfo")
|
256
360
|
|
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
|
+
|
257
370
|
@property
|
258
371
|
@pulumi.getter(name="oidcScopes")
|
259
372
|
def oidc_scopes(self) -> Optional[Sequence[str]]:
|
@@ -619,12 +732,24 @@ class CsiVolumeRegistrationMountOptions(dict):
|
|
619
732
|
class CsiVolumeRegistrationTopology(dict):
|
620
733
|
def __init__(__self__, *,
|
621
734
|
segments: Optional[Mapping[str, str]] = None):
|
735
|
+
"""
|
736
|
+
:param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
|
737
|
+
|
738
|
+
In addition to the above arguments, the following attributes are exported and
|
739
|
+
can be referenced:
|
740
|
+
"""
|
622
741
|
if segments is not None:
|
623
742
|
pulumi.set(__self__, "segments", segments)
|
624
743
|
|
625
744
|
@property
|
626
745
|
@pulumi.getter
|
627
746
|
def segments(self) -> Optional[Mapping[str, str]]:
|
747
|
+
"""
|
748
|
+
`(map[string]string)` - Define the attributes for the topology request.
|
749
|
+
|
750
|
+
In addition to the above arguments, the following attributes are exported and
|
751
|
+
can be referenced:
|
752
|
+
"""
|
628
753
|
return pulumi.get(self, "segments")
|
629
754
|
|
630
755
|
|
@@ -687,12 +812,24 @@ class CsiVolumeRegistrationTopologyRequestRequiredTopology(dict):
|
|
687
812
|
class CsiVolumeTopology(dict):
|
688
813
|
def __init__(__self__, *,
|
689
814
|
segments: Optional[Mapping[str, str]] = None):
|
815
|
+
"""
|
816
|
+
:param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
|
817
|
+
|
818
|
+
In addition to the above arguments, the following attributes are exported and
|
819
|
+
can be referenced:
|
820
|
+
"""
|
690
821
|
if segments is not None:
|
691
822
|
pulumi.set(__self__, "segments", segments)
|
692
823
|
|
693
824
|
@property
|
694
825
|
@pulumi.getter
|
695
826
|
def segments(self) -> Optional[Mapping[str, str]]:
|
827
|
+
"""
|
828
|
+
`(map[string]string)` - Define the attributes for the topology request.
|
829
|
+
|
830
|
+
In addition to the above arguments, the following attributes are exported and
|
831
|
+
can be referenced:
|
832
|
+
"""
|
696
833
|
return pulumi.get(self, "segments")
|
697
834
|
|
698
835
|
|
@@ -915,12 +1052,24 @@ class ExternalVolumeMountOptions(dict):
|
|
915
1052
|
class ExternalVolumeTopology(dict):
|
916
1053
|
def __init__(__self__, *,
|
917
1054
|
segments: Optional[Mapping[str, str]] = None):
|
1055
|
+
"""
|
1056
|
+
:param Mapping[str, str] segments: `(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:
|
1060
|
+
"""
|
918
1061
|
if segments is not None:
|
919
1062
|
pulumi.set(__self__, "segments", segments)
|
920
1063
|
|
921
1064
|
@property
|
922
1065
|
@pulumi.getter
|
923
1066
|
def segments(self) -> Optional[Mapping[str, str]]:
|
1067
|
+
"""
|
1068
|
+
`(map[string]string)` - Define the attributes for the topology request.
|
1069
|
+
|
1070
|
+
In addition to the above arguments, the following attributes are exported and
|
1071
|
+
can be referenced:
|
1072
|
+
"""
|
924
1073
|
return pulumi.get(self, "segments")
|
925
1074
|
|
926
1075
|
|
@@ -1075,14 +1224,12 @@ class JobHcl2(dict):
|
|
1075
1224
|
|
1076
1225
|
@property
|
1077
1226
|
@pulumi.getter
|
1227
|
+
@_utilities.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.""")
|
1078
1228
|
def enabled(self) -> Optional[bool]:
|
1079
1229
|
"""
|
1080
1230
|
`(boolean: false)` - **Deprecated** All HCL jobs are parsed as
|
1081
1231
|
HCL2 by default.
|
1082
1232
|
"""
|
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
1233
|
return pulumi.get(self, "enabled")
|
1087
1234
|
|
1088
1235
|
@property
|
@@ -1674,12 +1821,24 @@ class VolumeMountOptions(dict):
|
|
1674
1821
|
class VolumeTopology(dict):
|
1675
1822
|
def __init__(__self__, *,
|
1676
1823
|
segments: Optional[Mapping[str, str]] = None):
|
1824
|
+
"""
|
1825
|
+
:param Mapping[str, str] segments: `(map[string]string)` - Define the attributes for the topology request.
|
1826
|
+
|
1827
|
+
In addition to the above arguments, the following attributes are exported and
|
1828
|
+
can be referenced:
|
1829
|
+
"""
|
1677
1830
|
if segments is not None:
|
1678
1831
|
pulumi.set(__self__, "segments", segments)
|
1679
1832
|
|
1680
1833
|
@property
|
1681
1834
|
@pulumi.getter
|
1682
1835
|
def segments(self) -> Optional[Mapping[str, str]]:
|
1836
|
+
"""
|
1837
|
+
`(map[string]string)` - Define the attributes for the topology request.
|
1838
|
+
|
1839
|
+
In addition to the above arguments, the following attributes are exported and
|
1840
|
+
can be referenced:
|
1841
|
+
"""
|
1683
1842
|
return pulumi.get(self, "segments")
|
1684
1843
|
|
1685
1844
|
|
@@ -2485,6 +2644,79 @@ class GetJobTaskGroupVolumeResult(dict):
|
|
2485
2644
|
return pulumi.get(self, "type")
|
2486
2645
|
|
2487
2646
|
|
2647
|
+
@pulumi.output_type
|
2648
|
+
class GetJwksKeyResult(dict):
|
2649
|
+
def __init__(__self__, *,
|
2650
|
+
algorithm: str,
|
2651
|
+
exponent: str,
|
2652
|
+
key_id: str,
|
2653
|
+
key_type: str,
|
2654
|
+
key_use: str,
|
2655
|
+
modulus: str):
|
2656
|
+
"""
|
2657
|
+
:param str algorithm: `(string)` - JWK field `alg`
|
2658
|
+
:param str exponent: `(string)` - JWK field `e`
|
2659
|
+
:param str key_id: `(string)` - JWK field `kid`
|
2660
|
+
:param str key_type: `(string)` - JWK field `kty`
|
2661
|
+
:param str key_use: `(string)` - JWK field `use`
|
2662
|
+
:param str modulus: `(string)` - JWK field `n`
|
2663
|
+
"""
|
2664
|
+
pulumi.set(__self__, "algorithm", algorithm)
|
2665
|
+
pulumi.set(__self__, "exponent", exponent)
|
2666
|
+
pulumi.set(__self__, "key_id", key_id)
|
2667
|
+
pulumi.set(__self__, "key_type", key_type)
|
2668
|
+
pulumi.set(__self__, "key_use", key_use)
|
2669
|
+
pulumi.set(__self__, "modulus", modulus)
|
2670
|
+
|
2671
|
+
@property
|
2672
|
+
@pulumi.getter
|
2673
|
+
def algorithm(self) -> str:
|
2674
|
+
"""
|
2675
|
+
`(string)` - JWK field `alg`
|
2676
|
+
"""
|
2677
|
+
return pulumi.get(self, "algorithm")
|
2678
|
+
|
2679
|
+
@property
|
2680
|
+
@pulumi.getter
|
2681
|
+
def exponent(self) -> str:
|
2682
|
+
"""
|
2683
|
+
`(string)` - JWK field `e`
|
2684
|
+
"""
|
2685
|
+
return pulumi.get(self, "exponent")
|
2686
|
+
|
2687
|
+
@property
|
2688
|
+
@pulumi.getter(name="keyId")
|
2689
|
+
def key_id(self) -> str:
|
2690
|
+
"""
|
2691
|
+
`(string)` - JWK field `kid`
|
2692
|
+
"""
|
2693
|
+
return pulumi.get(self, "key_id")
|
2694
|
+
|
2695
|
+
@property
|
2696
|
+
@pulumi.getter(name="keyType")
|
2697
|
+
def key_type(self) -> str:
|
2698
|
+
"""
|
2699
|
+
`(string)` - JWK field `kty`
|
2700
|
+
"""
|
2701
|
+
return pulumi.get(self, "key_type")
|
2702
|
+
|
2703
|
+
@property
|
2704
|
+
@pulumi.getter(name="keyUse")
|
2705
|
+
def key_use(self) -> str:
|
2706
|
+
"""
|
2707
|
+
`(string)` - JWK field `use`
|
2708
|
+
"""
|
2709
|
+
return pulumi.get(self, "key_use")
|
2710
|
+
|
2711
|
+
@property
|
2712
|
+
@pulumi.getter
|
2713
|
+
def modulus(self) -> str:
|
2714
|
+
"""
|
2715
|
+
`(string)` - JWK field `n`
|
2716
|
+
"""
|
2717
|
+
return pulumi.get(self, "modulus")
|
2718
|
+
|
2719
|
+
|
2488
2720
|
@pulumi.output_type
|
2489
2721
|
class GetNamespaceCapabilityResult(dict):
|
2490
2722
|
def __init__(__self__, *,
|
pulumi_nomad/provider.py
CHANGED
@@ -270,7 +270,7 @@ class Provider(pulumi.ProviderResource):
|
|
270
270
|
cert_file: Optional[pulumi.Input[str]] = None,
|
271
271
|
cert_pem: Optional[pulumi.Input[str]] = None,
|
272
272
|
consul_token: Optional[pulumi.Input[str]] = None,
|
273
|
-
headers: Optional[pulumi.Input[Sequence[pulumi.Input[
|
273
|
+
headers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProviderHeaderArgs', 'ProviderHeaderArgsDict']]]]] = None,
|
274
274
|
http_auth: Optional[pulumi.Input[str]] = None,
|
275
275
|
ignore_env_vars: Optional[pulumi.Input[Mapping[str, pulumi.Input[bool]]]] = None,
|
276
276
|
key_file: Optional[pulumi.Input[str]] = None,
|
@@ -294,7 +294,7 @@ class Provider(pulumi.ProviderResource):
|
|
294
294
|
:param pulumi.Input[str] cert_file: A path to a PEM-encoded certificate provided to the remote agent; requires use of key_file or key_pem.
|
295
295
|
:param pulumi.Input[str] cert_pem: PEM-encoded certificate provided to the remote agent; requires use of key_file or key_pem.
|
296
296
|
:param pulumi.Input[str] consul_token: Consul token to validate Consul Connect Service Identity policies specified in the job file.
|
297
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
297
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['ProviderHeaderArgs', 'ProviderHeaderArgsDict']]]] headers: The headers to send with each Nomad request.
|
298
298
|
:param pulumi.Input[str] http_auth: HTTP basic auth configuration.
|
299
299
|
:param pulumi.Input[Mapping[str, pulumi.Input[bool]]] ignore_env_vars: A set of environment variables that are ignored by the provider when configuring the Nomad API client.
|
300
300
|
:param pulumi.Input[str] key_file: A path to a PEM-encoded private key, required if cert_file or cert_pem is specified.
|
@@ -337,7 +337,7 @@ class Provider(pulumi.ProviderResource):
|
|
337
337
|
cert_file: Optional[pulumi.Input[str]] = None,
|
338
338
|
cert_pem: Optional[pulumi.Input[str]] = None,
|
339
339
|
consul_token: Optional[pulumi.Input[str]] = None,
|
340
|
-
headers: Optional[pulumi.Input[Sequence[pulumi.Input[
|
340
|
+
headers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProviderHeaderArgs', 'ProviderHeaderArgsDict']]]]] = None,
|
341
341
|
http_auth: Optional[pulumi.Input[str]] = None,
|
342
342
|
ignore_env_vars: Optional[pulumi.Input[Mapping[str, pulumi.Input[bool]]]] = None,
|
343
343
|
key_file: Optional[pulumi.Input[str]] = None,
|
pulumi_nomad/pulumi-plugin.json
CHANGED
@@ -134,7 +134,7 @@ class QuoteSpecification(pulumi.CustomResource):
|
|
134
134
|
resource_name: str,
|
135
135
|
opts: Optional[pulumi.ResourceOptions] = None,
|
136
136
|
description: Optional[pulumi.Input[str]] = None,
|
137
|
-
limits: Optional[pulumi.Input[Sequence[pulumi.Input[
|
137
|
+
limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['QuoteSpecificationLimitArgs', 'QuoteSpecificationLimitArgsDict']]]]] = None,
|
138
138
|
name: Optional[pulumi.Input[str]] = None,
|
139
139
|
__props__=None):
|
140
140
|
"""
|
@@ -151,19 +151,19 @@ class QuoteSpecification(pulumi.CustomResource):
|
|
151
151
|
prod_api = nomad.QuoteSpecification("prod_api",
|
152
152
|
name="prod-api",
|
153
153
|
description="Production instances of backend API servers",
|
154
|
-
limits=[
|
155
|
-
region
|
156
|
-
region_limit
|
157
|
-
cpu
|
158
|
-
memory_mb
|
159
|
-
|
160
|
-
|
154
|
+
limits=[{
|
155
|
+
"region": "global",
|
156
|
+
"region_limit": {
|
157
|
+
"cpu": 2400,
|
158
|
+
"memory_mb": 1200,
|
159
|
+
},
|
160
|
+
}])
|
161
161
|
```
|
162
162
|
|
163
163
|
:param str resource_name: The name of the resource.
|
164
164
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
165
165
|
:param pulumi.Input[str] description: `(string: "")` - A description of the quota specification.
|
166
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
166
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['QuoteSpecificationLimitArgs', 'QuoteSpecificationLimitArgsDict']]]] limits: `(block: <required>)` - A block of quota limits to enforce. Can
|
167
167
|
be repeated. See below for the structure of this block.
|
168
168
|
:param pulumi.Input[str] name: `(string: <required>)` - A unique name for the quota specification.
|
169
169
|
"""
|
@@ -187,13 +187,13 @@ class QuoteSpecification(pulumi.CustomResource):
|
|
187
187
|
prod_api = nomad.QuoteSpecification("prod_api",
|
188
188
|
name="prod-api",
|
189
189
|
description="Production instances of backend API servers",
|
190
|
-
limits=[
|
191
|
-
region
|
192
|
-
region_limit
|
193
|
-
cpu
|
194
|
-
memory_mb
|
195
|
-
|
196
|
-
|
190
|
+
limits=[{
|
191
|
+
"region": "global",
|
192
|
+
"region_limit": {
|
193
|
+
"cpu": 2400,
|
194
|
+
"memory_mb": 1200,
|
195
|
+
},
|
196
|
+
}])
|
197
197
|
```
|
198
198
|
|
199
199
|
:param str resource_name: The name of the resource.
|
@@ -212,7 +212,7 @@ class QuoteSpecification(pulumi.CustomResource):
|
|
212
212
|
resource_name: str,
|
213
213
|
opts: Optional[pulumi.ResourceOptions] = None,
|
214
214
|
description: Optional[pulumi.Input[str]] = None,
|
215
|
-
limits: Optional[pulumi.Input[Sequence[pulumi.Input[
|
215
|
+
limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['QuoteSpecificationLimitArgs', 'QuoteSpecificationLimitArgsDict']]]]] = None,
|
216
216
|
name: Optional[pulumi.Input[str]] = None,
|
217
217
|
__props__=None):
|
218
218
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
@@ -239,7 +239,7 @@ class QuoteSpecification(pulumi.CustomResource):
|
|
239
239
|
id: pulumi.Input[str],
|
240
240
|
opts: Optional[pulumi.ResourceOptions] = None,
|
241
241
|
description: Optional[pulumi.Input[str]] = None,
|
242
|
-
limits: Optional[pulumi.Input[Sequence[pulumi.Input[
|
242
|
+
limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['QuoteSpecificationLimitArgs', 'QuoteSpecificationLimitArgsDict']]]]] = None,
|
243
243
|
name: Optional[pulumi.Input[str]] = None) -> 'QuoteSpecification':
|
244
244
|
"""
|
245
245
|
Get an existing QuoteSpecification resource's state with the given name, id, and optional extra
|
@@ -249,7 +249,7 @@ class QuoteSpecification(pulumi.CustomResource):
|
|
249
249
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
250
250
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
251
251
|
:param pulumi.Input[str] description: `(string: "")` - A description of the quota specification.
|
252
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
252
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['QuoteSpecificationLimitArgs', 'QuoteSpecificationLimitArgsDict']]]] limits: `(block: <required>)` - A block of quota limits to enforce. Can
|
253
253
|
be repeated. See below for the structure of this block.
|
254
254
|
:param pulumi.Input[str] name: `(string: <required>)` - A unique name for the quota specification.
|
255
255
|
"""
|