cribl-control-plane 0.3.0b3__py3-none-any.whl → 0.3.0b4__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.
Potentially problematic release.
This version of cribl-control-plane might be problematic. Click here for more details.
- cribl_control_plane/_version.py +3 -3
- cribl_control_plane/models/__init__.py +111 -3
- cribl_control_plane/models/input.py +15 -15
- cribl_control_plane/models/inputappscope.py +20 -16
- cribl_control_plane/models/inputconfluentcloud.py +110 -0
- cribl_control_plane/models/inputcriblhttp.py +20 -16
- cribl_control_plane/models/inputcribllakehttp.py +20 -16
- cribl_control_plane/models/inputcribltcp.py +20 -16
- cribl_control_plane/models/inputdatadogagent.py +20 -16
- cribl_control_plane/models/inputedgeprometheus.py +44 -36
- cribl_control_plane/models/inputelastic.py +44 -27
- cribl_control_plane/models/inputeventhub.py +118 -0
- cribl_control_plane/models/inputfile.py +7 -2
- cribl_control_plane/models/inputfirehose.py +20 -16
- cribl_control_plane/models/inputgrafana.py +39 -31
- cribl_control_plane/models/inputhttp.py +20 -16
- cribl_control_plane/models/inputhttpraw.py +20 -16
- cribl_control_plane/models/inputkafka.py +108 -0
- cribl_control_plane/models/inputloki.py +20 -16
- cribl_control_plane/models/inputmetrics.py +20 -16
- cribl_control_plane/models/inputmodeldriventelemetry.py +20 -16
- cribl_control_plane/models/inputopentelemetry.py +19 -15
- cribl_control_plane/models/inputprometheus.py +44 -36
- cribl_control_plane/models/inputprometheusrw.py +20 -16
- cribl_control_plane/models/inputsplunk.py +20 -16
- cribl_control_plane/models/inputsplunkhec.py +19 -15
- cribl_control_plane/models/inputsyslog.py +39 -31
- cribl_control_plane/models/inputsystemmetrics.py +20 -10
- cribl_control_plane/models/inputtcp.py +30 -16
- cribl_control_plane/models/inputtcpjson.py +20 -16
- cribl_control_plane/models/inputwindowsmetrics.py +20 -10
- cribl_control_plane/models/inputwineventlogs.py +14 -0
- cribl_control_plane/models/inputwizwebhook.py +20 -16
- cribl_control_plane/models/inputzscalerhec.py +19 -15
- cribl_control_plane/models/output.py +21 -21
- cribl_control_plane/models/outputazureblob.py +7 -0
- cribl_control_plane/models/outputazuredataexplorer.py +283 -93
- cribl_control_plane/models/outputazureeventhub.py +169 -21
- cribl_control_plane/models/outputazurelogs.py +49 -21
- cribl_control_plane/models/outputchronicle.py +49 -21
- cribl_control_plane/models/outputclickhouse.py +49 -21
- cribl_control_plane/models/outputcloudwatch.py +49 -21
- cribl_control_plane/models/outputconfluentcloud.py +167 -22
- cribl_control_plane/models/outputcriblhttp.py +49 -21
- cribl_control_plane/models/outputcribltcp.py +49 -21
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +50 -22
- cribl_control_plane/models/outputdatabricks.py +7 -0
- cribl_control_plane/models/outputdatadog.py +49 -21
- cribl_control_plane/models/outputdataset.py +49 -21
- cribl_control_plane/models/outputdls3.py +7 -0
- cribl_control_plane/models/outputdynatracehttp.py +49 -21
- cribl_control_plane/models/outputdynatraceotlp.py +49 -21
- cribl_control_plane/models/outputelastic.py +74 -21
- cribl_control_plane/models/outputelasticcloud.py +74 -21
- cribl_control_plane/models/outputfilesystem.py +7 -0
- cribl_control_plane/models/outputgooglechronicle.py +65 -22
- cribl_control_plane/models/outputgooglecloudlogging.py +50 -22
- cribl_control_plane/models/outputgooglecloudstorage.py +7 -0
- cribl_control_plane/models/outputgooglepubsub.py +49 -21
- cribl_control_plane/models/outputgrafanacloud.py +98 -42
- cribl_control_plane/models/outputgraphite.py +49 -21
- cribl_control_plane/models/outputhoneycomb.py +49 -21
- cribl_control_plane/models/outputhumiohec.py +49 -21
- cribl_control_plane/models/outputinfluxdb.py +49 -21
- cribl_control_plane/models/outputkafka.py +162 -19
- cribl_control_plane/models/outputkinesis.py +56 -21
- cribl_control_plane/models/outputloki.py +47 -19
- cribl_control_plane/models/outputminio.py +7 -0
- cribl_control_plane/models/outputmsk.py +54 -19
- cribl_control_plane/models/outputnewrelic.py +49 -21
- cribl_control_plane/models/outputnewrelicevents.py +50 -22
- cribl_control_plane/models/outputopentelemetry.py +49 -21
- cribl_control_plane/models/outputprometheus.py +49 -21
- cribl_control_plane/models/outputs3.py +7 -0
- cribl_control_plane/models/outputsentinel.py +49 -21
- cribl_control_plane/models/outputsentineloneaisiem.py +50 -22
- cribl_control_plane/models/outputservicenow.py +49 -21
- cribl_control_plane/models/outputsignalfx.py +49 -21
- cribl_control_plane/models/outputsns.py +47 -19
- cribl_control_plane/models/outputsplunk.py +49 -21
- cribl_control_plane/models/outputsplunkhec.py +124 -21
- cribl_control_plane/models/outputsplunklb.py +49 -21
- cribl_control_plane/models/outputsqs.py +47 -19
- cribl_control_plane/models/outputstatsd.py +49 -21
- cribl_control_plane/models/outputstatsdext.py +49 -21
- cribl_control_plane/models/outputsumologic.py +49 -21
- cribl_control_plane/models/outputsyslog.py +129 -99
- cribl_control_plane/models/outputtcpjson.py +49 -21
- cribl_control_plane/models/outputwavefront.py +49 -21
- cribl_control_plane/models/outputwebhook.py +49 -21
- cribl_control_plane/models/outputxsiam.py +47 -19
- cribl_control_plane/models/runnablejobcollection.py +12 -8
- cribl_control_plane/models/runnablejobexecutor.py +12 -8
- cribl_control_plane/models/runnablejobscheduledsearch.py +12 -8
- {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b4.dist-info}/METADATA +1 -1
- {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b4.dist-info}/RECORD +97 -97
- {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b4.dist-info}/WHEEL +0 -0
|
@@ -7,7 +7,7 @@ from cribl_control_plane.utils import validate_open_enum
|
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
9
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
10
|
+
from typing import List, Optional
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
12
|
|
|
13
13
|
|
|
@@ -221,6 +221,12 @@ class InputAppscopeMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
221
221
|
|
|
222
222
|
class InputAppscopeTLSSettingsServerSideTypedDict(TypedDict):
|
|
223
223
|
disabled: NotRequired[bool]
|
|
224
|
+
request_cert: NotRequired[bool]
|
|
225
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
226
|
+
reject_unauthorized: NotRequired[bool]
|
|
227
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
228
|
+
common_name_regex: NotRequired[str]
|
|
229
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
224
230
|
certificate_name: NotRequired[str]
|
|
225
231
|
r"""The name of the predefined certificate"""
|
|
226
232
|
priv_key_path: NotRequired[str]
|
|
@@ -231,10 +237,6 @@ class InputAppscopeTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
231
237
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
232
238
|
ca_path: NotRequired[str]
|
|
233
239
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
234
|
-
request_cert: NotRequired[bool]
|
|
235
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
236
|
-
reject_unauthorized: NotRequired[Any]
|
|
237
|
-
common_name_regex: NotRequired[Any]
|
|
238
240
|
min_version: NotRequired[InputAppscopeMinimumTLSVersion]
|
|
239
241
|
max_version: NotRequired[InputAppscopeMaximumTLSVersion]
|
|
240
242
|
|
|
@@ -242,6 +244,19 @@ class InputAppscopeTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
242
244
|
class InputAppscopeTLSSettingsServerSide(BaseModel):
|
|
243
245
|
disabled: Optional[bool] = True
|
|
244
246
|
|
|
247
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
248
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
249
|
+
|
|
250
|
+
reject_unauthorized: Annotated[
|
|
251
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
252
|
+
] = True
|
|
253
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
254
|
+
|
|
255
|
+
common_name_regex: Annotated[
|
|
256
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
257
|
+
] = "/.*/"
|
|
258
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
259
|
+
|
|
245
260
|
certificate_name: Annotated[
|
|
246
261
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
247
262
|
] = None
|
|
@@ -259,17 +274,6 @@ class InputAppscopeTLSSettingsServerSide(BaseModel):
|
|
|
259
274
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
260
275
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
261
276
|
|
|
262
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
263
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
264
|
-
|
|
265
|
-
reject_unauthorized: Annotated[
|
|
266
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
267
|
-
] = None
|
|
268
|
-
|
|
269
|
-
common_name_regex: Annotated[
|
|
270
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
271
|
-
] = None
|
|
272
|
-
|
|
273
277
|
min_version: Annotated[
|
|
274
278
|
Annotated[
|
|
275
279
|
Optional[InputAppscopeMinimumTLSVersion],
|
|
@@ -341,6 +341,13 @@ class InputConfluentCloudKafkaSchemaRegistryAuthentication(BaseModel):
|
|
|
341
341
|
tls: Optional[InputConfluentCloudKafkaSchemaRegistryTLSSettingsClientSide] = None
|
|
342
342
|
|
|
343
343
|
|
|
344
|
+
class InputConfluentCloudAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
345
|
+
r"""Enter credentials directly, or select a stored secret"""
|
|
346
|
+
|
|
347
|
+
MANUAL = "manual"
|
|
348
|
+
SECRET = "secret"
|
|
349
|
+
|
|
350
|
+
|
|
344
351
|
class InputConfluentCloudSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
345
352
|
# PLAIN
|
|
346
353
|
PLAIN = "plain"
|
|
@@ -352,13 +359,58 @@ class InputConfluentCloudSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
352
359
|
KERBEROS = "kerberos"
|
|
353
360
|
|
|
354
361
|
|
|
362
|
+
class InputConfluentCloudOauthParamTypedDict(TypedDict):
|
|
363
|
+
name: str
|
|
364
|
+
value: str
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
class InputConfluentCloudOauthParam(BaseModel):
|
|
368
|
+
name: str
|
|
369
|
+
|
|
370
|
+
value: str
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
class InputConfluentCloudSaslExtensionTypedDict(TypedDict):
|
|
374
|
+
name: str
|
|
375
|
+
value: str
|
|
376
|
+
|
|
377
|
+
|
|
378
|
+
class InputConfluentCloudSaslExtension(BaseModel):
|
|
379
|
+
name: str
|
|
380
|
+
|
|
381
|
+
value: str
|
|
382
|
+
|
|
383
|
+
|
|
355
384
|
class InputConfluentCloudAuthenticationTypedDict(TypedDict):
|
|
356
385
|
r"""Authentication parameters to use when connecting to brokers. Using TLS is highly recommended."""
|
|
357
386
|
|
|
358
387
|
disabled: NotRequired[bool]
|
|
388
|
+
username: NotRequired[str]
|
|
389
|
+
password: NotRequired[str]
|
|
390
|
+
auth_type: NotRequired[InputConfluentCloudAuthenticationMethod]
|
|
391
|
+
r"""Enter credentials directly, or select a stored secret"""
|
|
392
|
+
credentials_secret: NotRequired[str]
|
|
393
|
+
r"""Select or create a secret that references your credentials"""
|
|
359
394
|
mechanism: NotRequired[InputConfluentCloudSASLMechanism]
|
|
395
|
+
keytab_location: NotRequired[str]
|
|
396
|
+
r"""Location of keytab file for authentication principal"""
|
|
397
|
+
principal: NotRequired[str]
|
|
398
|
+
r"""Authentication principal, such as `kafka_user@example.com`"""
|
|
399
|
+
broker_service_class: NotRequired[str]
|
|
400
|
+
r"""Kerberos service class for Kafka brokers, such as `kafka`"""
|
|
360
401
|
oauth_enabled: NotRequired[bool]
|
|
361
402
|
r"""Enable OAuth authentication"""
|
|
403
|
+
token_url: NotRequired[str]
|
|
404
|
+
r"""URL of the token endpoint to use for OAuth authentication"""
|
|
405
|
+
client_id: NotRequired[str]
|
|
406
|
+
r"""Client ID to use for OAuth authentication"""
|
|
407
|
+
oauth_secret_type: NotRequired[str]
|
|
408
|
+
client_text_secret: NotRequired[str]
|
|
409
|
+
r"""Select or create a stored text secret"""
|
|
410
|
+
oauth_params: NotRequired[List[InputConfluentCloudOauthParamTypedDict]]
|
|
411
|
+
r"""Additional fields to send to the token endpoint, such as scope or audience"""
|
|
412
|
+
sasl_extensions: NotRequired[List[InputConfluentCloudSaslExtensionTypedDict]]
|
|
413
|
+
r"""Additional SASL extension fields, such as Confluent's logicalCluster or identityPoolId"""
|
|
362
414
|
|
|
363
415
|
|
|
364
416
|
class InputConfluentCloudAuthentication(BaseModel):
|
|
@@ -366,16 +418,74 @@ class InputConfluentCloudAuthentication(BaseModel):
|
|
|
366
418
|
|
|
367
419
|
disabled: Optional[bool] = True
|
|
368
420
|
|
|
421
|
+
username: Optional[str] = None
|
|
422
|
+
|
|
423
|
+
password: Optional[str] = None
|
|
424
|
+
|
|
425
|
+
auth_type: Annotated[
|
|
426
|
+
Annotated[
|
|
427
|
+
Optional[InputConfluentCloudAuthenticationMethod],
|
|
428
|
+
PlainValidator(validate_open_enum(False)),
|
|
429
|
+
],
|
|
430
|
+
pydantic.Field(alias="authType"),
|
|
431
|
+
] = InputConfluentCloudAuthenticationMethod.MANUAL
|
|
432
|
+
r"""Enter credentials directly, or select a stored secret"""
|
|
433
|
+
|
|
434
|
+
credentials_secret: Annotated[
|
|
435
|
+
Optional[str], pydantic.Field(alias="credentialsSecret")
|
|
436
|
+
] = None
|
|
437
|
+
r"""Select or create a secret that references your credentials"""
|
|
438
|
+
|
|
369
439
|
mechanism: Annotated[
|
|
370
440
|
Optional[InputConfluentCloudSASLMechanism],
|
|
371
441
|
PlainValidator(validate_open_enum(False)),
|
|
372
442
|
] = InputConfluentCloudSASLMechanism.PLAIN
|
|
373
443
|
|
|
444
|
+
keytab_location: Annotated[
|
|
445
|
+
Optional[str], pydantic.Field(alias="keytabLocation")
|
|
446
|
+
] = None
|
|
447
|
+
r"""Location of keytab file for authentication principal"""
|
|
448
|
+
|
|
449
|
+
principal: Optional[str] = None
|
|
450
|
+
r"""Authentication principal, such as `kafka_user@example.com`"""
|
|
451
|
+
|
|
452
|
+
broker_service_class: Annotated[
|
|
453
|
+
Optional[str], pydantic.Field(alias="brokerServiceClass")
|
|
454
|
+
] = None
|
|
455
|
+
r"""Kerberos service class for Kafka brokers, such as `kafka`"""
|
|
456
|
+
|
|
374
457
|
oauth_enabled: Annotated[Optional[bool], pydantic.Field(alias="oauthEnabled")] = (
|
|
375
458
|
False
|
|
376
459
|
)
|
|
377
460
|
r"""Enable OAuth authentication"""
|
|
378
461
|
|
|
462
|
+
token_url: Annotated[Optional[str], pydantic.Field(alias="tokenUrl")] = None
|
|
463
|
+
r"""URL of the token endpoint to use for OAuth authentication"""
|
|
464
|
+
|
|
465
|
+
client_id: Annotated[Optional[str], pydantic.Field(alias="clientId")] = None
|
|
466
|
+
r"""Client ID to use for OAuth authentication"""
|
|
467
|
+
|
|
468
|
+
oauth_secret_type: Annotated[
|
|
469
|
+
Optional[str], pydantic.Field(alias="oauthSecretType")
|
|
470
|
+
] = "secret"
|
|
471
|
+
|
|
472
|
+
client_text_secret: Annotated[
|
|
473
|
+
Optional[str], pydantic.Field(alias="clientTextSecret")
|
|
474
|
+
] = None
|
|
475
|
+
r"""Select or create a stored text secret"""
|
|
476
|
+
|
|
477
|
+
oauth_params: Annotated[
|
|
478
|
+
Optional[List[InputConfluentCloudOauthParam]],
|
|
479
|
+
pydantic.Field(alias="oauthParams"),
|
|
480
|
+
] = None
|
|
481
|
+
r"""Additional fields to send to the token endpoint, such as scope or audience"""
|
|
482
|
+
|
|
483
|
+
sasl_extensions: Annotated[
|
|
484
|
+
Optional[List[InputConfluentCloudSaslExtension]],
|
|
485
|
+
pydantic.Field(alias="saslExtensions"),
|
|
486
|
+
] = None
|
|
487
|
+
r"""Additional SASL extension fields, such as Confluent's logicalCluster or identityPoolId"""
|
|
488
|
+
|
|
379
489
|
|
|
380
490
|
class InputConfluentCloudMetadatumTypedDict(TypedDict):
|
|
381
491
|
name: str
|
|
@@ -7,7 +7,7 @@ from cribl_control_plane.utils import validate_open_enum
|
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
9
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
10
|
+
from typing import List, Optional
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
12
|
|
|
13
13
|
|
|
@@ -123,6 +123,12 @@ class InputCriblHTTPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
123
123
|
|
|
124
124
|
class InputCriblHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
125
125
|
disabled: NotRequired[bool]
|
|
126
|
+
request_cert: NotRequired[bool]
|
|
127
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
128
|
+
reject_unauthorized: NotRequired[bool]
|
|
129
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
130
|
+
common_name_regex: NotRequired[str]
|
|
131
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
126
132
|
certificate_name: NotRequired[str]
|
|
127
133
|
r"""The name of the predefined certificate"""
|
|
128
134
|
priv_key_path: NotRequired[str]
|
|
@@ -133,10 +139,6 @@ class InputCriblHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
133
139
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
134
140
|
ca_path: NotRequired[str]
|
|
135
141
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
136
|
-
request_cert: NotRequired[bool]
|
|
137
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
138
|
-
reject_unauthorized: NotRequired[Any]
|
|
139
|
-
common_name_regex: NotRequired[Any]
|
|
140
142
|
min_version: NotRequired[InputCriblHTTPMinimumTLSVersion]
|
|
141
143
|
max_version: NotRequired[InputCriblHTTPMaximumTLSVersion]
|
|
142
144
|
|
|
@@ -144,6 +146,19 @@ class InputCriblHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
144
146
|
class InputCriblHTTPTLSSettingsServerSide(BaseModel):
|
|
145
147
|
disabled: Optional[bool] = True
|
|
146
148
|
|
|
149
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
150
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
151
|
+
|
|
152
|
+
reject_unauthorized: Annotated[
|
|
153
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
154
|
+
] = True
|
|
155
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
156
|
+
|
|
157
|
+
common_name_regex: Annotated[
|
|
158
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
159
|
+
] = "/.*/"
|
|
160
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
161
|
+
|
|
147
162
|
certificate_name: Annotated[
|
|
148
163
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
149
164
|
] = None
|
|
@@ -161,17 +176,6 @@ class InputCriblHTTPTLSSettingsServerSide(BaseModel):
|
|
|
161
176
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
162
177
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
163
178
|
|
|
164
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
165
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
166
|
-
|
|
167
|
-
reject_unauthorized: Annotated[
|
|
168
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
169
|
-
] = None
|
|
170
|
-
|
|
171
|
-
common_name_regex: Annotated[
|
|
172
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
173
|
-
] = None
|
|
174
|
-
|
|
175
179
|
min_version: Annotated[
|
|
176
180
|
Annotated[
|
|
177
181
|
Optional[InputCriblHTTPMinimumTLSVersion],
|
|
@@ -7,7 +7,7 @@ from cribl_control_plane.utils import validate_open_enum
|
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
9
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
10
|
+
from typing import List, Optional
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
12
|
|
|
13
13
|
|
|
@@ -124,6 +124,12 @@ class InputCriblLakeHTTPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMet
|
|
|
124
124
|
|
|
125
125
|
class InputCriblLakeHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
126
126
|
disabled: NotRequired[bool]
|
|
127
|
+
request_cert: NotRequired[bool]
|
|
128
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
129
|
+
reject_unauthorized: NotRequired[bool]
|
|
130
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
131
|
+
common_name_regex: NotRequired[str]
|
|
132
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
127
133
|
certificate_name: NotRequired[str]
|
|
128
134
|
r"""The name of the predefined certificate"""
|
|
129
135
|
priv_key_path: NotRequired[str]
|
|
@@ -134,10 +140,6 @@ class InputCriblLakeHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
134
140
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
135
141
|
ca_path: NotRequired[str]
|
|
136
142
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
137
|
-
request_cert: NotRequired[bool]
|
|
138
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
139
|
-
reject_unauthorized: NotRequired[Any]
|
|
140
|
-
common_name_regex: NotRequired[Any]
|
|
141
143
|
min_version: NotRequired[InputCriblLakeHTTPMinimumTLSVersion]
|
|
142
144
|
max_version: NotRequired[InputCriblLakeHTTPMaximumTLSVersion]
|
|
143
145
|
|
|
@@ -145,6 +147,19 @@ class InputCriblLakeHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
145
147
|
class InputCriblLakeHTTPTLSSettingsServerSide(BaseModel):
|
|
146
148
|
disabled: Optional[bool] = True
|
|
147
149
|
|
|
150
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
151
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
152
|
+
|
|
153
|
+
reject_unauthorized: Annotated[
|
|
154
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
155
|
+
] = True
|
|
156
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
157
|
+
|
|
158
|
+
common_name_regex: Annotated[
|
|
159
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
160
|
+
] = "/.*/"
|
|
161
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
162
|
+
|
|
148
163
|
certificate_name: Annotated[
|
|
149
164
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
150
165
|
] = None
|
|
@@ -162,17 +177,6 @@ class InputCriblLakeHTTPTLSSettingsServerSide(BaseModel):
|
|
|
162
177
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
163
178
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
164
179
|
|
|
165
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
166
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
167
|
-
|
|
168
|
-
reject_unauthorized: Annotated[
|
|
169
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
170
|
-
] = None
|
|
171
|
-
|
|
172
|
-
common_name_regex: Annotated[
|
|
173
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
174
|
-
] = None
|
|
175
|
-
|
|
176
180
|
min_version: Annotated[
|
|
177
181
|
Annotated[
|
|
178
182
|
Optional[InputCriblLakeHTTPMinimumTLSVersion],
|
|
@@ -7,7 +7,7 @@ from cribl_control_plane.utils import validate_open_enum
|
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
9
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
10
|
+
from typing import List, Optional
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
12
|
|
|
13
13
|
|
|
@@ -123,6 +123,12 @@ class InputCriblTCPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
123
123
|
|
|
124
124
|
class InputCriblTCPTLSSettingsServerSideTypedDict(TypedDict):
|
|
125
125
|
disabled: NotRequired[bool]
|
|
126
|
+
request_cert: NotRequired[bool]
|
|
127
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
128
|
+
reject_unauthorized: NotRequired[bool]
|
|
129
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
130
|
+
common_name_regex: NotRequired[str]
|
|
131
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
126
132
|
certificate_name: NotRequired[str]
|
|
127
133
|
r"""The name of the predefined certificate"""
|
|
128
134
|
priv_key_path: NotRequired[str]
|
|
@@ -133,10 +139,6 @@ class InputCriblTCPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
133
139
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
134
140
|
ca_path: NotRequired[str]
|
|
135
141
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
136
|
-
request_cert: NotRequired[bool]
|
|
137
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
138
|
-
reject_unauthorized: NotRequired[Any]
|
|
139
|
-
common_name_regex: NotRequired[Any]
|
|
140
142
|
min_version: NotRequired[InputCriblTCPMinimumTLSVersion]
|
|
141
143
|
max_version: NotRequired[InputCriblTCPMaximumTLSVersion]
|
|
142
144
|
|
|
@@ -144,6 +146,19 @@ class InputCriblTCPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
144
146
|
class InputCriblTCPTLSSettingsServerSide(BaseModel):
|
|
145
147
|
disabled: Optional[bool] = True
|
|
146
148
|
|
|
149
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
150
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
151
|
+
|
|
152
|
+
reject_unauthorized: Annotated[
|
|
153
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
154
|
+
] = True
|
|
155
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
156
|
+
|
|
157
|
+
common_name_regex: Annotated[
|
|
158
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
159
|
+
] = "/.*/"
|
|
160
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
161
|
+
|
|
147
162
|
certificate_name: Annotated[
|
|
148
163
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
149
164
|
] = None
|
|
@@ -161,17 +176,6 @@ class InputCriblTCPTLSSettingsServerSide(BaseModel):
|
|
|
161
176
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
162
177
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
163
178
|
|
|
164
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
165
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
166
|
-
|
|
167
|
-
reject_unauthorized: Annotated[
|
|
168
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
169
|
-
] = None
|
|
170
|
-
|
|
171
|
-
common_name_regex: Annotated[
|
|
172
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
173
|
-
] = None
|
|
174
|
-
|
|
175
179
|
min_version: Annotated[
|
|
176
180
|
Annotated[
|
|
177
181
|
Optional[InputCriblTCPMinimumTLSVersion],
|
|
@@ -7,7 +7,7 @@ from cribl_control_plane.utils import validate_open_enum
|
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
9
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
10
|
+
from typing import List, Optional
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
12
|
|
|
13
13
|
|
|
@@ -124,6 +124,12 @@ class InputDatadogAgentMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta
|
|
|
124
124
|
|
|
125
125
|
class InputDatadogAgentTLSSettingsServerSideTypedDict(TypedDict):
|
|
126
126
|
disabled: NotRequired[bool]
|
|
127
|
+
request_cert: NotRequired[bool]
|
|
128
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
129
|
+
reject_unauthorized: NotRequired[bool]
|
|
130
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
131
|
+
common_name_regex: NotRequired[str]
|
|
132
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
127
133
|
certificate_name: NotRequired[str]
|
|
128
134
|
r"""The name of the predefined certificate"""
|
|
129
135
|
priv_key_path: NotRequired[str]
|
|
@@ -134,10 +140,6 @@ class InputDatadogAgentTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
134
140
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
135
141
|
ca_path: NotRequired[str]
|
|
136
142
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
137
|
-
request_cert: NotRequired[bool]
|
|
138
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
139
|
-
reject_unauthorized: NotRequired[Any]
|
|
140
|
-
common_name_regex: NotRequired[Any]
|
|
141
143
|
min_version: NotRequired[InputDatadogAgentMinimumTLSVersion]
|
|
142
144
|
max_version: NotRequired[InputDatadogAgentMaximumTLSVersion]
|
|
143
145
|
|
|
@@ -145,6 +147,19 @@ class InputDatadogAgentTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
145
147
|
class InputDatadogAgentTLSSettingsServerSide(BaseModel):
|
|
146
148
|
disabled: Optional[bool] = True
|
|
147
149
|
|
|
150
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
151
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
152
|
+
|
|
153
|
+
reject_unauthorized: Annotated[
|
|
154
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
155
|
+
] = True
|
|
156
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
157
|
+
|
|
158
|
+
common_name_regex: Annotated[
|
|
159
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
160
|
+
] = "/.*/"
|
|
161
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
162
|
+
|
|
148
163
|
certificate_name: Annotated[
|
|
149
164
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
150
165
|
] = None
|
|
@@ -162,17 +177,6 @@ class InputDatadogAgentTLSSettingsServerSide(BaseModel):
|
|
|
162
177
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
163
178
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
164
179
|
|
|
165
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
166
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
167
|
-
|
|
168
|
-
reject_unauthorized: Annotated[
|
|
169
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
170
|
-
] = None
|
|
171
|
-
|
|
172
|
-
common_name_regex: Annotated[
|
|
173
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
174
|
-
] = None
|
|
175
|
-
|
|
176
180
|
min_version: Annotated[
|
|
177
181
|
Annotated[
|
|
178
182
|
Optional[InputDatadogAgentMinimumTLSVersion],
|
|
@@ -237,6 +237,19 @@ class ScrapeProtocolProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
237
237
|
HTTPS = "https"
|
|
238
238
|
|
|
239
239
|
|
|
240
|
+
class InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod(
|
|
241
|
+
str, Enum, metaclass=utils.OpenEnumMeta
|
|
242
|
+
):
|
|
243
|
+
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
244
|
+
|
|
245
|
+
# Auto
|
|
246
|
+
AUTO = "auto"
|
|
247
|
+
# Manual
|
|
248
|
+
MANUAL = "manual"
|
|
249
|
+
# Secret Key pair
|
|
250
|
+
SECRET = "secret"
|
|
251
|
+
|
|
252
|
+
|
|
240
253
|
class InputEdgePrometheusSearchFilterTypedDict(TypedDict):
|
|
241
254
|
name: str
|
|
242
255
|
r"""Search filter attribute name, see: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html for more information. Attributes can be manually entered if not present in the drop down list"""
|
|
@@ -252,19 +265,6 @@ class InputEdgePrometheusSearchFilter(BaseModel):
|
|
|
252
265
|
r"""Search Filter Values, if empty only \"running\" EC2 instances will be returned"""
|
|
253
266
|
|
|
254
267
|
|
|
255
|
-
class InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod(
|
|
256
|
-
str, Enum, metaclass=utils.OpenEnumMeta
|
|
257
|
-
):
|
|
258
|
-
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
259
|
-
|
|
260
|
-
# Auto
|
|
261
|
-
AUTO = "auto"
|
|
262
|
-
# Manual
|
|
263
|
-
MANUAL = "manual"
|
|
264
|
-
# Secret Key pair
|
|
265
|
-
SECRET = "secret"
|
|
266
|
-
|
|
267
|
-
|
|
268
268
|
class InputEdgePrometheusSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
269
269
|
r"""Signature version to use for signing EC2 requests"""
|
|
270
270
|
|
|
@@ -320,24 +320,27 @@ class InputEdgePrometheusTypedDict(TypedDict):
|
|
|
320
320
|
r"""Enter credentials directly, or select a stored secret"""
|
|
321
321
|
description: NotRequired[str]
|
|
322
322
|
targets: NotRequired[List[TargetTypedDict]]
|
|
323
|
-
name_list: NotRequired[List[str]]
|
|
324
|
-
r"""List of DNS names to resolve"""
|
|
325
323
|
record_type: NotRequired[InputEdgePrometheusRecordType]
|
|
326
324
|
r"""DNS Record type to resolve"""
|
|
325
|
+
scrape_port: NotRequired[float]
|
|
326
|
+
r"""The port number in the metrics URL for discovered targets."""
|
|
327
|
+
name_list: NotRequired[List[str]]
|
|
328
|
+
r"""List of DNS names to resolve"""
|
|
327
329
|
scrape_protocol: NotRequired[ScrapeProtocolProtocol]
|
|
328
330
|
r"""Protocol to use when collecting metrics"""
|
|
329
331
|
scrape_path: NotRequired[str]
|
|
330
332
|
r"""Path to use when collecting metrics from discovered targets"""
|
|
331
|
-
use_public_ip: NotRequired[bool]
|
|
332
|
-
r"""Use public IP address for discovered targets. Set to false if the private IP address should be used."""
|
|
333
|
-
scrape_port: NotRequired[float]
|
|
334
|
-
r"""The port number in the metrics URL for discovered targets."""
|
|
335
|
-
search_filter: NotRequired[List[InputEdgePrometheusSearchFilterTypedDict]]
|
|
336
|
-
r"""EC2 Instance Search Filter"""
|
|
337
333
|
aws_authentication_method: NotRequired[
|
|
338
334
|
InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod
|
|
339
335
|
]
|
|
340
336
|
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
337
|
+
aws_api_key: NotRequired[str]
|
|
338
|
+
aws_secret: NotRequired[str]
|
|
339
|
+
r"""Select or create a stored secret that references your access key and secret key"""
|
|
340
|
+
use_public_ip: NotRequired[bool]
|
|
341
|
+
r"""Use public IP address for discovered targets. Set to false if the private IP address should be used."""
|
|
342
|
+
search_filter: NotRequired[List[InputEdgePrometheusSearchFilterTypedDict]]
|
|
343
|
+
r"""EC2 Instance Search Filter"""
|
|
341
344
|
aws_secret_key: NotRequired[str]
|
|
342
345
|
region: NotRequired[str]
|
|
343
346
|
r"""Region where the EC2 is located"""
|
|
@@ -445,9 +448,6 @@ class InputEdgePrometheus(BaseModel):
|
|
|
445
448
|
|
|
446
449
|
targets: Optional[List[Target]] = None
|
|
447
450
|
|
|
448
|
-
name_list: Annotated[Optional[List[str]], pydantic.Field(alias="nameList")] = None
|
|
449
|
-
r"""List of DNS names to resolve"""
|
|
450
|
-
|
|
451
451
|
record_type: Annotated[
|
|
452
452
|
Annotated[
|
|
453
453
|
Optional[InputEdgePrometheusRecordType],
|
|
@@ -457,6 +457,12 @@ class InputEdgePrometheus(BaseModel):
|
|
|
457
457
|
] = InputEdgePrometheusRecordType.SRV
|
|
458
458
|
r"""DNS Record type to resolve"""
|
|
459
459
|
|
|
460
|
+
scrape_port: Annotated[Optional[float], pydantic.Field(alias="scrapePort")] = 9090
|
|
461
|
+
r"""The port number in the metrics URL for discovered targets."""
|
|
462
|
+
|
|
463
|
+
name_list: Annotated[Optional[List[str]], pydantic.Field(alias="nameList")] = None
|
|
464
|
+
r"""List of DNS names to resolve"""
|
|
465
|
+
|
|
460
466
|
scrape_protocol: Annotated[
|
|
461
467
|
Annotated[
|
|
462
468
|
Optional[ScrapeProtocolProtocol], PlainValidator(validate_open_enum(False))
|
|
@@ -470,18 +476,6 @@ class InputEdgePrometheus(BaseModel):
|
|
|
470
476
|
)
|
|
471
477
|
r"""Path to use when collecting metrics from discovered targets"""
|
|
472
478
|
|
|
473
|
-
use_public_ip: Annotated[Optional[bool], pydantic.Field(alias="usePublicIp")] = True
|
|
474
|
-
r"""Use public IP address for discovered targets. Set to false if the private IP address should be used."""
|
|
475
|
-
|
|
476
|
-
scrape_port: Annotated[Optional[float], pydantic.Field(alias="scrapePort")] = 9090
|
|
477
|
-
r"""The port number in the metrics URL for discovered targets."""
|
|
478
|
-
|
|
479
|
-
search_filter: Annotated[
|
|
480
|
-
Optional[List[InputEdgePrometheusSearchFilter]],
|
|
481
|
-
pydantic.Field(alias="searchFilter"),
|
|
482
|
-
] = None
|
|
483
|
-
r"""EC2 Instance Search Filter"""
|
|
484
|
-
|
|
485
479
|
aws_authentication_method: Annotated[
|
|
486
480
|
Annotated[
|
|
487
481
|
Optional[InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod],
|
|
@@ -491,6 +485,20 @@ class InputEdgePrometheus(BaseModel):
|
|
|
491
485
|
] = InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod.AUTO
|
|
492
486
|
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
493
487
|
|
|
488
|
+
aws_api_key: Annotated[Optional[str], pydantic.Field(alias="awsApiKey")] = None
|
|
489
|
+
|
|
490
|
+
aws_secret: Annotated[Optional[str], pydantic.Field(alias="awsSecret")] = None
|
|
491
|
+
r"""Select or create a stored secret that references your access key and secret key"""
|
|
492
|
+
|
|
493
|
+
use_public_ip: Annotated[Optional[bool], pydantic.Field(alias="usePublicIp")] = True
|
|
494
|
+
r"""Use public IP address for discovered targets. Set to false if the private IP address should be used."""
|
|
495
|
+
|
|
496
|
+
search_filter: Annotated[
|
|
497
|
+
Optional[List[InputEdgePrometheusSearchFilter]],
|
|
498
|
+
pydantic.Field(alias="searchFilter"),
|
|
499
|
+
] = None
|
|
500
|
+
r"""EC2 Instance Search Filter"""
|
|
501
|
+
|
|
494
502
|
aws_secret_key: Annotated[Optional[str], pydantic.Field(alias="awsSecretKey")] = (
|
|
495
503
|
None
|
|
496
504
|
)
|