cribl-control-plane 0.3.0b3__py3-none-any.whl → 0.3.0b12__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 +4 -4
- cribl_control_plane/groups_sdk.py +2 -2
- cribl_control_plane/lakedatasets.py +28 -0
- cribl_control_plane/models/__init__.py +124 -5
- cribl_control_plane/models/cacheconnection.py +20 -0
- cribl_control_plane/models/configgroup.py +20 -1
- cribl_control_plane/models/configgroupcloud.py +11 -1
- cribl_control_plane/models/createconfiggroupbyproductop.py +13 -2
- cribl_control_plane/models/cribllakedataset.py +15 -1
- cribl_control_plane/models/cribllakedatasetupdate.py +15 -1
- cribl_control_plane/models/datasetmetadata.py +11 -1
- cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +11 -0
- cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +20 -0
- cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +20 -0
- cribl_control_plane/models/getconfiggroupbyproductandidop.py +11 -0
- cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +11 -0
- cribl_control_plane/models/getsummaryop.py +11 -0
- cribl_control_plane/models/groupcreaterequest.py +20 -1
- cribl_control_plane/models/hbcriblinfo.py +11 -1
- cribl_control_plane/models/healthserverstatus.py +20 -1
- cribl_control_plane/models/input.py +15 -15
- cribl_control_plane/models/inputappscope.py +76 -17
- cribl_control_plane/models/inputazureblob.py +29 -1
- cribl_control_plane/models/inputcollection.py +20 -1
- cribl_control_plane/models/inputconfluentcloud.py +188 -1
- cribl_control_plane/models/inputcribl.py +20 -1
- cribl_control_plane/models/inputcriblhttp.py +58 -17
- cribl_control_plane/models/inputcribllakehttp.py +58 -17
- cribl_control_plane/models/inputcriblmetrics.py +20 -1
- cribl_control_plane/models/inputcribltcp.py +58 -17
- cribl_control_plane/models/inputcrowdstrike.py +47 -1
- cribl_control_plane/models/inputdatadogagent.py +58 -17
- cribl_control_plane/models/inputdatagen.py +20 -1
- cribl_control_plane/models/inputedgeprometheus.py +138 -37
- cribl_control_plane/models/inputelastic.py +108 -27
- cribl_control_plane/models/inputeventhub.py +176 -1
- cribl_control_plane/models/inputexec.py +29 -1
- cribl_control_plane/models/inputfile.py +40 -7
- cribl_control_plane/models/inputfirehose.py +58 -17
- cribl_control_plane/models/inputgooglepubsub.py +29 -1
- cribl_control_plane/models/inputgrafana.py +149 -32
- cribl_control_plane/models/inputhttp.py +58 -17
- cribl_control_plane/models/inputhttpraw.py +58 -17
- cribl_control_plane/models/inputjournalfiles.py +20 -1
- cribl_control_plane/models/inputkafka.py +182 -1
- cribl_control_plane/models/inputkinesis.py +65 -1
- cribl_control_plane/models/inputkubeevents.py +20 -1
- cribl_control_plane/models/inputkubelogs.py +29 -1
- cribl_control_plane/models/inputkubemetrics.py +29 -1
- cribl_control_plane/models/inputloki.py +67 -17
- cribl_control_plane/models/inputmetrics.py +58 -17
- cribl_control_plane/models/inputmodeldriventelemetry.py +58 -17
- cribl_control_plane/models/inputmsk.py +74 -1
- cribl_control_plane/models/inputnetflow.py +20 -1
- cribl_control_plane/models/inputoffice365mgmt.py +56 -1
- cribl_control_plane/models/inputoffice365msgtrace.py +56 -1
- cribl_control_plane/models/inputoffice365service.py +56 -1
- cribl_control_plane/models/inputopentelemetry.py +84 -16
- cribl_control_plane/models/inputprometheus.py +131 -37
- cribl_control_plane/models/inputprometheusrw.py +67 -17
- cribl_control_plane/models/inputrawudp.py +20 -1
- cribl_control_plane/models/inputs3.py +38 -1
- cribl_control_plane/models/inputs3inventory.py +47 -1
- cribl_control_plane/models/inputsecuritylake.py +47 -1
- cribl_control_plane/models/inputsnmp.py +29 -1
- cribl_control_plane/models/inputsplunk.py +76 -17
- cribl_control_plane/models/inputsplunkhec.py +66 -16
- cribl_control_plane/models/inputsplunksearch.py +56 -1
- cribl_control_plane/models/inputsqs.py +47 -1
- cribl_control_plane/models/inputsyslog.py +113 -32
- cribl_control_plane/models/inputsystemmetrics.py +110 -9
- cribl_control_plane/models/inputsystemstate.py +29 -1
- cribl_control_plane/models/inputtcp.py +77 -17
- cribl_control_plane/models/inputtcpjson.py +67 -17
- cribl_control_plane/models/inputwef.py +65 -1
- cribl_control_plane/models/inputwindowsmetrics.py +101 -9
- cribl_control_plane/models/inputwineventlogs.py +52 -1
- cribl_control_plane/models/inputwiz.py +38 -1
- cribl_control_plane/models/inputwizwebhook.py +58 -17
- cribl_control_plane/models/inputzscalerhec.py +66 -16
- cribl_control_plane/models/jobinfo.py +10 -4
- cribl_control_plane/models/jobstatus.py +34 -3
- cribl_control_plane/models/lakedatasetmetrics.py +17 -0
- cribl_control_plane/models/listconfiggroupbyproductop.py +11 -0
- cribl_control_plane/models/masterworkerentry.py +11 -1
- cribl_control_plane/models/nodeupgradestatus.py +38 -0
- cribl_control_plane/models/output.py +21 -21
- cribl_control_plane/models/outputazureblob.py +90 -1
- cribl_control_plane/models/outputazuredataexplorer.py +430 -93
- cribl_control_plane/models/outputazureeventhub.py +267 -22
- cribl_control_plane/models/outputazurelogs.py +105 -22
- cribl_control_plane/models/outputchronicle.py +105 -22
- cribl_control_plane/models/outputclickhouse.py +141 -22
- cribl_control_plane/models/outputcloudwatch.py +96 -22
- cribl_control_plane/models/outputconfluentcloud.py +292 -23
- cribl_control_plane/models/outputcriblhttp.py +123 -22
- cribl_control_plane/models/outputcribllake.py +76 -1
- cribl_control_plane/models/outputcribltcp.py +123 -22
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +117 -23
- cribl_control_plane/models/outputdatabricks.py +76 -5
- cribl_control_plane/models/outputdatadog.py +132 -22
- cribl_control_plane/models/outputdataset.py +123 -22
- cribl_control_plane/models/outputdiskspool.py +11 -1
- cribl_control_plane/models/outputdls3.py +117 -1
- cribl_control_plane/models/outputdynatracehttp.py +141 -22
- cribl_control_plane/models/outputdynatraceotlp.py +141 -22
- cribl_control_plane/models/outputelastic.py +148 -22
- cribl_control_plane/models/outputelasticcloud.py +130 -22
- cribl_control_plane/models/outputexabeam.py +47 -1
- cribl_control_plane/models/outputfilesystem.py +72 -1
- cribl_control_plane/models/outputgooglechronicle.py +148 -23
- cribl_control_plane/models/outputgooglecloudlogging.py +115 -23
- cribl_control_plane/models/outputgooglecloudstorage.py +108 -1
- cribl_control_plane/models/outputgooglepubsub.py +96 -22
- cribl_control_plane/models/outputgrafanacloud.py +244 -43
- cribl_control_plane/models/outputgraphite.py +96 -22
- cribl_control_plane/models/outputhoneycomb.py +105 -22
- cribl_control_plane/models/outputhumiohec.py +114 -22
- cribl_control_plane/models/outputinfluxdb.py +114 -22
- cribl_control_plane/models/outputkafka.py +283 -20
- cribl_control_plane/models/outputkinesis.py +121 -22
- cribl_control_plane/models/outputloki.py +112 -20
- cribl_control_plane/models/outputminio.py +117 -1
- cribl_control_plane/models/outputmsk.py +175 -20
- cribl_control_plane/models/outputnewrelic.py +123 -22
- cribl_control_plane/models/outputnewrelicevents.py +115 -23
- cribl_control_plane/models/outputopentelemetry.py +159 -22
- cribl_control_plane/models/outputprometheus.py +105 -22
- cribl_control_plane/models/outputring.py +29 -1
- cribl_control_plane/models/outputs3.py +117 -1
- cribl_control_plane/models/outputsecuritylake.py +85 -1
- cribl_control_plane/models/outputsentinel.py +123 -22
- cribl_control_plane/models/outputsentineloneaisiem.py +124 -23
- cribl_control_plane/models/outputservicenow.py +150 -22
- cribl_control_plane/models/outputsignalfx.py +105 -22
- cribl_control_plane/models/outputsns.py +103 -20
- cribl_control_plane/models/outputsplunk.py +141 -22
- cribl_control_plane/models/outputsplunkhec.py +198 -22
- cribl_control_plane/models/outputsplunklb.py +170 -22
- cribl_control_plane/models/outputsqs.py +112 -20
- cribl_control_plane/models/outputstatsd.py +96 -22
- cribl_control_plane/models/outputstatsdext.py +96 -22
- cribl_control_plane/models/outputsumologic.py +105 -22
- cribl_control_plane/models/outputsyslog.py +238 -99
- cribl_control_plane/models/outputtcpjson.py +132 -22
- cribl_control_plane/models/outputwavefront.py +105 -22
- cribl_control_plane/models/outputwebhook.py +141 -22
- cribl_control_plane/models/outputxsiam.py +103 -20
- cribl_control_plane/models/resourcepolicy.py +11 -0
- cribl_control_plane/models/runnablejobcollection.py +68 -9
- cribl_control_plane/models/runnablejobexecutor.py +32 -9
- cribl_control_plane/models/runnablejobscheduledsearch.py +23 -9
- cribl_control_plane/models/updateconfiggroupbyproductandidop.py +11 -0
- cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +11 -0
- cribl_control_plane/sdk.py +2 -2
- {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b12.dist-info}/METADATA +25 -7
- {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b12.dist-info}/RECORD +158 -157
- {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b12.dist-info}/WHEEL +0 -0
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import utils
|
|
4
|
+
from cribl_control_plane import models, utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
+
from pydantic import field_serializer
|
|
9
10
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
11
|
+
from typing import List, Optional
|
|
11
12
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
13
|
|
|
13
14
|
|
|
@@ -106,6 +107,24 @@ class InputAppscopePq(BaseModel):
|
|
|
106
107
|
Optional[InputAppscopePqControls], pydantic.Field(alias="pqControls")
|
|
107
108
|
] = None
|
|
108
109
|
|
|
110
|
+
@field_serializer("mode")
|
|
111
|
+
def serialize_mode(self, value):
|
|
112
|
+
if isinstance(value, str):
|
|
113
|
+
try:
|
|
114
|
+
return models.InputAppscopeMode(value)
|
|
115
|
+
except ValueError:
|
|
116
|
+
return value
|
|
117
|
+
return value
|
|
118
|
+
|
|
119
|
+
@field_serializer("compress")
|
|
120
|
+
def serialize_compress(self, value):
|
|
121
|
+
if isinstance(value, str):
|
|
122
|
+
try:
|
|
123
|
+
return models.InputAppscopeCompression(value)
|
|
124
|
+
except ValueError:
|
|
125
|
+
return value
|
|
126
|
+
return value
|
|
127
|
+
|
|
109
128
|
|
|
110
129
|
class InputAppscopeMetadatumTypedDict(TypedDict):
|
|
111
130
|
name: str
|
|
@@ -197,6 +216,15 @@ class InputAppscopePersistence(BaseModel):
|
|
|
197
216
|
)
|
|
198
217
|
r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/appscope"""
|
|
199
218
|
|
|
219
|
+
@field_serializer("compress")
|
|
220
|
+
def serialize_compress(self, value):
|
|
221
|
+
if isinstance(value, str):
|
|
222
|
+
try:
|
|
223
|
+
return models.InputAppscopeDataCompressionFormat(value)
|
|
224
|
+
except ValueError:
|
|
225
|
+
return value
|
|
226
|
+
return value
|
|
227
|
+
|
|
200
228
|
|
|
201
229
|
class InputAppscopeAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
202
230
|
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
@@ -221,6 +249,12 @@ class InputAppscopeMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
221
249
|
|
|
222
250
|
class InputAppscopeTLSSettingsServerSideTypedDict(TypedDict):
|
|
223
251
|
disabled: NotRequired[bool]
|
|
252
|
+
request_cert: NotRequired[bool]
|
|
253
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
254
|
+
reject_unauthorized: NotRequired[bool]
|
|
255
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
256
|
+
common_name_regex: NotRequired[str]
|
|
257
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
224
258
|
certificate_name: NotRequired[str]
|
|
225
259
|
r"""The name of the predefined certificate"""
|
|
226
260
|
priv_key_path: NotRequired[str]
|
|
@@ -231,10 +265,6 @@ class InputAppscopeTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
231
265
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
232
266
|
ca_path: NotRequired[str]
|
|
233
267
|
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
268
|
min_version: NotRequired[InputAppscopeMinimumTLSVersion]
|
|
239
269
|
max_version: NotRequired[InputAppscopeMaximumTLSVersion]
|
|
240
270
|
|
|
@@ -242,6 +272,19 @@ class InputAppscopeTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
242
272
|
class InputAppscopeTLSSettingsServerSide(BaseModel):
|
|
243
273
|
disabled: Optional[bool] = True
|
|
244
274
|
|
|
275
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
276
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
277
|
+
|
|
278
|
+
reject_unauthorized: Annotated[
|
|
279
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
280
|
+
] = True
|
|
281
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
282
|
+
|
|
283
|
+
common_name_regex: Annotated[
|
|
284
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
285
|
+
] = "/.*/"
|
|
286
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
287
|
+
|
|
245
288
|
certificate_name: Annotated[
|
|
246
289
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
247
290
|
] = None
|
|
@@ -259,17 +302,6 @@ class InputAppscopeTLSSettingsServerSide(BaseModel):
|
|
|
259
302
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
260
303
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
261
304
|
|
|
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
305
|
min_version: Annotated[
|
|
274
306
|
Annotated[
|
|
275
307
|
Optional[InputAppscopeMinimumTLSVersion],
|
|
@@ -286,6 +318,24 @@ class InputAppscopeTLSSettingsServerSide(BaseModel):
|
|
|
286
318
|
pydantic.Field(alias="maxVersion"),
|
|
287
319
|
] = None
|
|
288
320
|
|
|
321
|
+
@field_serializer("min_version")
|
|
322
|
+
def serialize_min_version(self, value):
|
|
323
|
+
if isinstance(value, str):
|
|
324
|
+
try:
|
|
325
|
+
return models.InputAppscopeMinimumTLSVersion(value)
|
|
326
|
+
except ValueError:
|
|
327
|
+
return value
|
|
328
|
+
return value
|
|
329
|
+
|
|
330
|
+
@field_serializer("max_version")
|
|
331
|
+
def serialize_max_version(self, value):
|
|
332
|
+
if isinstance(value, str):
|
|
333
|
+
try:
|
|
334
|
+
return models.InputAppscopeMaximumTLSVersion(value)
|
|
335
|
+
except ValueError:
|
|
336
|
+
return value
|
|
337
|
+
return value
|
|
338
|
+
|
|
289
339
|
|
|
290
340
|
class InputAppscopeTypedDict(TypedDict):
|
|
291
341
|
type: InputAppscopeType
|
|
@@ -463,3 +513,12 @@ class InputAppscope(BaseModel):
|
|
|
463
513
|
|
|
464
514
|
text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
|
|
465
515
|
r"""Select or create a stored text secret"""
|
|
516
|
+
|
|
517
|
+
@field_serializer("auth_type")
|
|
518
|
+
def serialize_auth_type(self, value):
|
|
519
|
+
if isinstance(value, str):
|
|
520
|
+
try:
|
|
521
|
+
return models.InputAppscopeAuthenticationMethod(value)
|
|
522
|
+
except ValueError:
|
|
523
|
+
return value
|
|
524
|
+
return value
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import utils
|
|
4
|
+
from cribl_control_plane import models, utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
+
from pydantic import field_serializer
|
|
9
10
|
from pydantic.functional_validators import PlainValidator
|
|
10
11
|
from typing import List, Optional
|
|
11
12
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -106,6 +107,24 @@ class InputAzureBlobPq(BaseModel):
|
|
|
106
107
|
Optional[InputAzureBlobPqControls], pydantic.Field(alias="pqControls")
|
|
107
108
|
] = None
|
|
108
109
|
|
|
110
|
+
@field_serializer("mode")
|
|
111
|
+
def serialize_mode(self, value):
|
|
112
|
+
if isinstance(value, str):
|
|
113
|
+
try:
|
|
114
|
+
return models.InputAzureBlobMode(value)
|
|
115
|
+
except ValueError:
|
|
116
|
+
return value
|
|
117
|
+
return value
|
|
118
|
+
|
|
119
|
+
@field_serializer("compress")
|
|
120
|
+
def serialize_compress(self, value):
|
|
121
|
+
if isinstance(value, str):
|
|
122
|
+
try:
|
|
123
|
+
return models.InputAzureBlobCompression(value)
|
|
124
|
+
except ValueError:
|
|
125
|
+
return value
|
|
126
|
+
return value
|
|
127
|
+
|
|
109
128
|
|
|
110
129
|
class InputAzureBlobMetadatumTypedDict(TypedDict):
|
|
111
130
|
name: str
|
|
@@ -323,3 +342,12 @@ class InputAzureBlob(BaseModel):
|
|
|
323
342
|
r"""Select or create a stored text secret"""
|
|
324
343
|
|
|
325
344
|
certificate: Optional[InputAzureBlobCertificate] = None
|
|
345
|
+
|
|
346
|
+
@field_serializer("auth_type")
|
|
347
|
+
def serialize_auth_type(self, value):
|
|
348
|
+
if isinstance(value, str):
|
|
349
|
+
try:
|
|
350
|
+
return models.InputAzureBlobAuthenticationMethod(value)
|
|
351
|
+
except ValueError:
|
|
352
|
+
return value
|
|
353
|
+
return value
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import utils
|
|
4
|
+
from cribl_control_plane import models, utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
+
from pydantic import field_serializer
|
|
9
10
|
from pydantic.functional_validators import PlainValidator
|
|
10
11
|
from typing import List, Optional
|
|
11
12
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -106,6 +107,24 @@ class InputCollectionPq(BaseModel):
|
|
|
106
107
|
Optional[InputCollectionPqControls], pydantic.Field(alias="pqControls")
|
|
107
108
|
] = None
|
|
108
109
|
|
|
110
|
+
@field_serializer("mode")
|
|
111
|
+
def serialize_mode(self, value):
|
|
112
|
+
if isinstance(value, str):
|
|
113
|
+
try:
|
|
114
|
+
return models.InputCollectionMode(value)
|
|
115
|
+
except ValueError:
|
|
116
|
+
return value
|
|
117
|
+
return value
|
|
118
|
+
|
|
119
|
+
@field_serializer("compress")
|
|
120
|
+
def serialize_compress(self, value):
|
|
121
|
+
if isinstance(value, str):
|
|
122
|
+
try:
|
|
123
|
+
return models.InputCollectionCompression(value)
|
|
124
|
+
except ValueError:
|
|
125
|
+
return value
|
|
126
|
+
return value
|
|
127
|
+
|
|
109
128
|
|
|
110
129
|
class InputCollectionPreprocessTypedDict(TypedDict):
|
|
111
130
|
disabled: NotRequired[bool]
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import utils
|
|
4
|
+
from cribl_control_plane import models, utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
+
from pydantic import field_serializer
|
|
9
10
|
from pydantic.functional_validators import PlainValidator
|
|
10
11
|
from typing import List, Optional
|
|
11
12
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -107,6 +108,24 @@ class InputConfluentCloudPq(BaseModel):
|
|
|
107
108
|
Optional[InputConfluentCloudPqControls], pydantic.Field(alias="pqControls")
|
|
108
109
|
] = None
|
|
109
110
|
|
|
111
|
+
@field_serializer("mode")
|
|
112
|
+
def serialize_mode(self, value):
|
|
113
|
+
if isinstance(value, str):
|
|
114
|
+
try:
|
|
115
|
+
return models.InputConfluentCloudMode(value)
|
|
116
|
+
except ValueError:
|
|
117
|
+
return value
|
|
118
|
+
return value
|
|
119
|
+
|
|
120
|
+
@field_serializer("compress")
|
|
121
|
+
def serialize_compress(self, value):
|
|
122
|
+
if isinstance(value, str):
|
|
123
|
+
try:
|
|
124
|
+
return models.InputConfluentCloudCompression(value)
|
|
125
|
+
except ValueError:
|
|
126
|
+
return value
|
|
127
|
+
return value
|
|
128
|
+
|
|
110
129
|
|
|
111
130
|
class InputConfluentCloudMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
112
131
|
TL_SV1 = "TLSv1"
|
|
@@ -190,6 +209,24 @@ class InputConfluentCloudTLSSettingsClientSide(BaseModel):
|
|
|
190
209
|
pydantic.Field(alias="maxVersion"),
|
|
191
210
|
] = None
|
|
192
211
|
|
|
212
|
+
@field_serializer("min_version")
|
|
213
|
+
def serialize_min_version(self, value):
|
|
214
|
+
if isinstance(value, str):
|
|
215
|
+
try:
|
|
216
|
+
return models.InputConfluentCloudMinimumTLSVersion(value)
|
|
217
|
+
except ValueError:
|
|
218
|
+
return value
|
|
219
|
+
return value
|
|
220
|
+
|
|
221
|
+
@field_serializer("max_version")
|
|
222
|
+
def serialize_max_version(self, value):
|
|
223
|
+
if isinstance(value, str):
|
|
224
|
+
try:
|
|
225
|
+
return models.InputConfluentCloudMaximumTLSVersion(value)
|
|
226
|
+
except ValueError:
|
|
227
|
+
return value
|
|
228
|
+
return value
|
|
229
|
+
|
|
193
230
|
|
|
194
231
|
class InputConfluentCloudAuthTypedDict(TypedDict):
|
|
195
232
|
r"""Credentials to use when authenticating with the schema registry using basic HTTP authentication"""
|
|
@@ -296,6 +333,28 @@ class InputConfluentCloudKafkaSchemaRegistryTLSSettingsClientSide(BaseModel):
|
|
|
296
333
|
pydantic.Field(alias="maxVersion"),
|
|
297
334
|
] = None
|
|
298
335
|
|
|
336
|
+
@field_serializer("min_version")
|
|
337
|
+
def serialize_min_version(self, value):
|
|
338
|
+
if isinstance(value, str):
|
|
339
|
+
try:
|
|
340
|
+
return models.InputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion(
|
|
341
|
+
value
|
|
342
|
+
)
|
|
343
|
+
except ValueError:
|
|
344
|
+
return value
|
|
345
|
+
return value
|
|
346
|
+
|
|
347
|
+
@field_serializer("max_version")
|
|
348
|
+
def serialize_max_version(self, value):
|
|
349
|
+
if isinstance(value, str):
|
|
350
|
+
try:
|
|
351
|
+
return models.InputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion(
|
|
352
|
+
value
|
|
353
|
+
)
|
|
354
|
+
except ValueError:
|
|
355
|
+
return value
|
|
356
|
+
return value
|
|
357
|
+
|
|
299
358
|
|
|
300
359
|
class InputConfluentCloudKafkaSchemaRegistryAuthenticationTypedDict(TypedDict):
|
|
301
360
|
disabled: NotRequired[bool]
|
|
@@ -341,6 +400,13 @@ class InputConfluentCloudKafkaSchemaRegistryAuthentication(BaseModel):
|
|
|
341
400
|
tls: Optional[InputConfluentCloudKafkaSchemaRegistryTLSSettingsClientSide] = None
|
|
342
401
|
|
|
343
402
|
|
|
403
|
+
class InputConfluentCloudAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
404
|
+
r"""Enter credentials directly, or select a stored secret"""
|
|
405
|
+
|
|
406
|
+
MANUAL = "manual"
|
|
407
|
+
SECRET = "secret"
|
|
408
|
+
|
|
409
|
+
|
|
344
410
|
class InputConfluentCloudSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
345
411
|
# PLAIN
|
|
346
412
|
PLAIN = "plain"
|
|
@@ -352,13 +418,58 @@ class InputConfluentCloudSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
352
418
|
KERBEROS = "kerberos"
|
|
353
419
|
|
|
354
420
|
|
|
421
|
+
class InputConfluentCloudOauthParamTypedDict(TypedDict):
|
|
422
|
+
name: str
|
|
423
|
+
value: str
|
|
424
|
+
|
|
425
|
+
|
|
426
|
+
class InputConfluentCloudOauthParam(BaseModel):
|
|
427
|
+
name: str
|
|
428
|
+
|
|
429
|
+
value: str
|
|
430
|
+
|
|
431
|
+
|
|
432
|
+
class InputConfluentCloudSaslExtensionTypedDict(TypedDict):
|
|
433
|
+
name: str
|
|
434
|
+
value: str
|
|
435
|
+
|
|
436
|
+
|
|
437
|
+
class InputConfluentCloudSaslExtension(BaseModel):
|
|
438
|
+
name: str
|
|
439
|
+
|
|
440
|
+
value: str
|
|
441
|
+
|
|
442
|
+
|
|
355
443
|
class InputConfluentCloudAuthenticationTypedDict(TypedDict):
|
|
356
444
|
r"""Authentication parameters to use when connecting to brokers. Using TLS is highly recommended."""
|
|
357
445
|
|
|
358
446
|
disabled: NotRequired[bool]
|
|
447
|
+
username: NotRequired[str]
|
|
448
|
+
password: NotRequired[str]
|
|
449
|
+
auth_type: NotRequired[InputConfluentCloudAuthenticationMethod]
|
|
450
|
+
r"""Enter credentials directly, or select a stored secret"""
|
|
451
|
+
credentials_secret: NotRequired[str]
|
|
452
|
+
r"""Select or create a secret that references your credentials"""
|
|
359
453
|
mechanism: NotRequired[InputConfluentCloudSASLMechanism]
|
|
454
|
+
keytab_location: NotRequired[str]
|
|
455
|
+
r"""Location of keytab file for authentication principal"""
|
|
456
|
+
principal: NotRequired[str]
|
|
457
|
+
r"""Authentication principal, such as `kafka_user@example.com`"""
|
|
458
|
+
broker_service_class: NotRequired[str]
|
|
459
|
+
r"""Kerberos service class for Kafka brokers, such as `kafka`"""
|
|
360
460
|
oauth_enabled: NotRequired[bool]
|
|
361
461
|
r"""Enable OAuth authentication"""
|
|
462
|
+
token_url: NotRequired[str]
|
|
463
|
+
r"""URL of the token endpoint to use for OAuth authentication"""
|
|
464
|
+
client_id: NotRequired[str]
|
|
465
|
+
r"""Client ID to use for OAuth authentication"""
|
|
466
|
+
oauth_secret_type: NotRequired[str]
|
|
467
|
+
client_text_secret: NotRequired[str]
|
|
468
|
+
r"""Select or create a stored text secret"""
|
|
469
|
+
oauth_params: NotRequired[List[InputConfluentCloudOauthParamTypedDict]]
|
|
470
|
+
r"""Additional fields to send to the token endpoint, such as scope or audience"""
|
|
471
|
+
sasl_extensions: NotRequired[List[InputConfluentCloudSaslExtensionTypedDict]]
|
|
472
|
+
r"""Additional SASL extension fields, such as Confluent's logicalCluster or identityPoolId"""
|
|
362
473
|
|
|
363
474
|
|
|
364
475
|
class InputConfluentCloudAuthentication(BaseModel):
|
|
@@ -366,16 +477,92 @@ class InputConfluentCloudAuthentication(BaseModel):
|
|
|
366
477
|
|
|
367
478
|
disabled: Optional[bool] = True
|
|
368
479
|
|
|
480
|
+
username: Optional[str] = None
|
|
481
|
+
|
|
482
|
+
password: Optional[str] = None
|
|
483
|
+
|
|
484
|
+
auth_type: Annotated[
|
|
485
|
+
Annotated[
|
|
486
|
+
Optional[InputConfluentCloudAuthenticationMethod],
|
|
487
|
+
PlainValidator(validate_open_enum(False)),
|
|
488
|
+
],
|
|
489
|
+
pydantic.Field(alias="authType"),
|
|
490
|
+
] = InputConfluentCloudAuthenticationMethod.MANUAL
|
|
491
|
+
r"""Enter credentials directly, or select a stored secret"""
|
|
492
|
+
|
|
493
|
+
credentials_secret: Annotated[
|
|
494
|
+
Optional[str], pydantic.Field(alias="credentialsSecret")
|
|
495
|
+
] = None
|
|
496
|
+
r"""Select or create a secret that references your credentials"""
|
|
497
|
+
|
|
369
498
|
mechanism: Annotated[
|
|
370
499
|
Optional[InputConfluentCloudSASLMechanism],
|
|
371
500
|
PlainValidator(validate_open_enum(False)),
|
|
372
501
|
] = InputConfluentCloudSASLMechanism.PLAIN
|
|
373
502
|
|
|
503
|
+
keytab_location: Annotated[
|
|
504
|
+
Optional[str], pydantic.Field(alias="keytabLocation")
|
|
505
|
+
] = None
|
|
506
|
+
r"""Location of keytab file for authentication principal"""
|
|
507
|
+
|
|
508
|
+
principal: Optional[str] = None
|
|
509
|
+
r"""Authentication principal, such as `kafka_user@example.com`"""
|
|
510
|
+
|
|
511
|
+
broker_service_class: Annotated[
|
|
512
|
+
Optional[str], pydantic.Field(alias="brokerServiceClass")
|
|
513
|
+
] = None
|
|
514
|
+
r"""Kerberos service class for Kafka brokers, such as `kafka`"""
|
|
515
|
+
|
|
374
516
|
oauth_enabled: Annotated[Optional[bool], pydantic.Field(alias="oauthEnabled")] = (
|
|
375
517
|
False
|
|
376
518
|
)
|
|
377
519
|
r"""Enable OAuth authentication"""
|
|
378
520
|
|
|
521
|
+
token_url: Annotated[Optional[str], pydantic.Field(alias="tokenUrl")] = None
|
|
522
|
+
r"""URL of the token endpoint to use for OAuth authentication"""
|
|
523
|
+
|
|
524
|
+
client_id: Annotated[Optional[str], pydantic.Field(alias="clientId")] = None
|
|
525
|
+
r"""Client ID to use for OAuth authentication"""
|
|
526
|
+
|
|
527
|
+
oauth_secret_type: Annotated[
|
|
528
|
+
Optional[str], pydantic.Field(alias="oauthSecretType")
|
|
529
|
+
] = "secret"
|
|
530
|
+
|
|
531
|
+
client_text_secret: Annotated[
|
|
532
|
+
Optional[str], pydantic.Field(alias="clientTextSecret")
|
|
533
|
+
] = None
|
|
534
|
+
r"""Select or create a stored text secret"""
|
|
535
|
+
|
|
536
|
+
oauth_params: Annotated[
|
|
537
|
+
Optional[List[InputConfluentCloudOauthParam]],
|
|
538
|
+
pydantic.Field(alias="oauthParams"),
|
|
539
|
+
] = None
|
|
540
|
+
r"""Additional fields to send to the token endpoint, such as scope or audience"""
|
|
541
|
+
|
|
542
|
+
sasl_extensions: Annotated[
|
|
543
|
+
Optional[List[InputConfluentCloudSaslExtension]],
|
|
544
|
+
pydantic.Field(alias="saslExtensions"),
|
|
545
|
+
] = None
|
|
546
|
+
r"""Additional SASL extension fields, such as Confluent's logicalCluster or identityPoolId"""
|
|
547
|
+
|
|
548
|
+
@field_serializer("auth_type")
|
|
549
|
+
def serialize_auth_type(self, value):
|
|
550
|
+
if isinstance(value, str):
|
|
551
|
+
try:
|
|
552
|
+
return models.InputConfluentCloudAuthenticationMethod(value)
|
|
553
|
+
except ValueError:
|
|
554
|
+
return value
|
|
555
|
+
return value
|
|
556
|
+
|
|
557
|
+
@field_serializer("mechanism")
|
|
558
|
+
def serialize_mechanism(self, value):
|
|
559
|
+
if isinstance(value, str):
|
|
560
|
+
try:
|
|
561
|
+
return models.InputConfluentCloudSASLMechanism(value)
|
|
562
|
+
except ValueError:
|
|
563
|
+
return value
|
|
564
|
+
return value
|
|
565
|
+
|
|
379
566
|
|
|
380
567
|
class InputConfluentCloudMetadatumTypedDict(TypedDict):
|
|
381
568
|
name: str
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import utils
|
|
4
|
+
from cribl_control_plane import models, utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
+
from pydantic import field_serializer
|
|
9
10
|
from pydantic.functional_validators import PlainValidator
|
|
10
11
|
from typing import List, Optional
|
|
11
12
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
@@ -106,6 +107,24 @@ class InputCriblPq(BaseModel):
|
|
|
106
107
|
Optional[InputCriblPqControls], pydantic.Field(alias="pqControls")
|
|
107
108
|
] = None
|
|
108
109
|
|
|
110
|
+
@field_serializer("mode")
|
|
111
|
+
def serialize_mode(self, value):
|
|
112
|
+
if isinstance(value, str):
|
|
113
|
+
try:
|
|
114
|
+
return models.InputCriblMode(value)
|
|
115
|
+
except ValueError:
|
|
116
|
+
return value
|
|
117
|
+
return value
|
|
118
|
+
|
|
119
|
+
@field_serializer("compress")
|
|
120
|
+
def serialize_compress(self, value):
|
|
121
|
+
if isinstance(value, str):
|
|
122
|
+
try:
|
|
123
|
+
return models.InputCriblCompression(value)
|
|
124
|
+
except ValueError:
|
|
125
|
+
return value
|
|
126
|
+
return value
|
|
127
|
+
|
|
109
128
|
|
|
110
129
|
class InputCriblMetadatumTypedDict(TypedDict):
|
|
111
130
|
name: str
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from cribl_control_plane import utils
|
|
4
|
+
from cribl_control_plane import models, utils
|
|
5
5
|
from cribl_control_plane.types import BaseModel
|
|
6
6
|
from cribl_control_plane.utils import validate_open_enum
|
|
7
7
|
from enum import Enum
|
|
8
8
|
import pydantic
|
|
9
|
+
from pydantic import field_serializer
|
|
9
10
|
from pydantic.functional_validators import PlainValidator
|
|
10
|
-
from typing import
|
|
11
|
+
from typing import List, Optional
|
|
11
12
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
13
|
|
|
13
14
|
|
|
@@ -106,6 +107,24 @@ class InputCriblHTTPPq(BaseModel):
|
|
|
106
107
|
Optional[InputCriblHTTPPqControls], pydantic.Field(alias="pqControls")
|
|
107
108
|
] = None
|
|
108
109
|
|
|
110
|
+
@field_serializer("mode")
|
|
111
|
+
def serialize_mode(self, value):
|
|
112
|
+
if isinstance(value, str):
|
|
113
|
+
try:
|
|
114
|
+
return models.InputCriblHTTPMode(value)
|
|
115
|
+
except ValueError:
|
|
116
|
+
return value
|
|
117
|
+
return value
|
|
118
|
+
|
|
119
|
+
@field_serializer("compress")
|
|
120
|
+
def serialize_compress(self, value):
|
|
121
|
+
if isinstance(value, str):
|
|
122
|
+
try:
|
|
123
|
+
return models.InputCriblHTTPCompression(value)
|
|
124
|
+
except ValueError:
|
|
125
|
+
return value
|
|
126
|
+
return value
|
|
127
|
+
|
|
109
128
|
|
|
110
129
|
class InputCriblHTTPMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
111
130
|
TL_SV1 = "TLSv1"
|
|
@@ -123,6 +142,12 @@ class InputCriblHTTPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
|
123
142
|
|
|
124
143
|
class InputCriblHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
125
144
|
disabled: NotRequired[bool]
|
|
145
|
+
request_cert: NotRequired[bool]
|
|
146
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
147
|
+
reject_unauthorized: NotRequired[bool]
|
|
148
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
149
|
+
common_name_regex: NotRequired[str]
|
|
150
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
126
151
|
certificate_name: NotRequired[str]
|
|
127
152
|
r"""The name of the predefined certificate"""
|
|
128
153
|
priv_key_path: NotRequired[str]
|
|
@@ -133,10 +158,6 @@ class InputCriblHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
133
158
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
134
159
|
ca_path: NotRequired[str]
|
|
135
160
|
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
161
|
min_version: NotRequired[InputCriblHTTPMinimumTLSVersion]
|
|
141
162
|
max_version: NotRequired[InputCriblHTTPMaximumTLSVersion]
|
|
142
163
|
|
|
@@ -144,6 +165,19 @@ class InputCriblHTTPTLSSettingsServerSideTypedDict(TypedDict):
|
|
|
144
165
|
class InputCriblHTTPTLSSettingsServerSide(BaseModel):
|
|
145
166
|
disabled: Optional[bool] = True
|
|
146
167
|
|
|
168
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
169
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
170
|
+
|
|
171
|
+
reject_unauthorized: Annotated[
|
|
172
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
173
|
+
] = True
|
|
174
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
175
|
+
|
|
176
|
+
common_name_regex: Annotated[
|
|
177
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
178
|
+
] = "/.*/"
|
|
179
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
180
|
+
|
|
147
181
|
certificate_name: Annotated[
|
|
148
182
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
149
183
|
] = None
|
|
@@ -161,17 +195,6 @@ class InputCriblHTTPTLSSettingsServerSide(BaseModel):
|
|
|
161
195
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
162
196
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
163
197
|
|
|
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
198
|
min_version: Annotated[
|
|
176
199
|
Annotated[
|
|
177
200
|
Optional[InputCriblHTTPMinimumTLSVersion],
|
|
@@ -188,6 +211,24 @@ class InputCriblHTTPTLSSettingsServerSide(BaseModel):
|
|
|
188
211
|
pydantic.Field(alias="maxVersion"),
|
|
189
212
|
] = None
|
|
190
213
|
|
|
214
|
+
@field_serializer("min_version")
|
|
215
|
+
def serialize_min_version(self, value):
|
|
216
|
+
if isinstance(value, str):
|
|
217
|
+
try:
|
|
218
|
+
return models.InputCriblHTTPMinimumTLSVersion(value)
|
|
219
|
+
except ValueError:
|
|
220
|
+
return value
|
|
221
|
+
return value
|
|
222
|
+
|
|
223
|
+
@field_serializer("max_version")
|
|
224
|
+
def serialize_max_version(self, value):
|
|
225
|
+
if isinstance(value, str):
|
|
226
|
+
try:
|
|
227
|
+
return models.InputCriblHTTPMaximumTLSVersion(value)
|
|
228
|
+
except ValueError:
|
|
229
|
+
return value
|
|
230
|
+
return value
|
|
231
|
+
|
|
191
232
|
|
|
192
233
|
class InputCriblHTTPMetadatumTypedDict(TypedDict):
|
|
193
234
|
name: str
|