cribl-control-plane 0.0.44a2__py3-none-any.whl → 0.0.46__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.

Files changed (158) hide show
  1. cribl_control_plane/_version.py +5 -3
  2. cribl_control_plane/errors/healthstatus_error.py +2 -8
  3. cribl_control_plane/models/__init__.py +3 -3
  4. cribl_control_plane/models/appmode.py +1 -2
  5. cribl_control_plane/models/cacheconnection.py +2 -10
  6. cribl_control_plane/models/cacheconnectionbackfillstatus.py +1 -2
  7. cribl_control_plane/models/cloudprovider.py +1 -2
  8. cribl_control_plane/models/configgroup.py +2 -7
  9. cribl_control_plane/models/configgroupcloud.py +2 -6
  10. cribl_control_plane/models/createconfiggroupbyproductop.py +2 -8
  11. cribl_control_plane/models/cribllakedataset.py +2 -8
  12. cribl_control_plane/models/datasetmetadata.py +2 -8
  13. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +2 -7
  14. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +2 -4
  15. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +2 -4
  16. cribl_control_plane/models/getconfiggroupbyproductandidop.py +1 -3
  17. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +2 -7
  18. cribl_control_plane/models/getsummaryop.py +2 -7
  19. cribl_control_plane/models/hbcriblinfo.py +6 -6
  20. cribl_control_plane/models/healthstatus.py +4 -7
  21. cribl_control_plane/models/inputappscope.py +14 -34
  22. cribl_control_plane/models/inputazureblob.py +6 -17
  23. cribl_control_plane/models/inputcollection.py +4 -11
  24. cribl_control_plane/models/inputconfluentcloud.py +20 -47
  25. cribl_control_plane/models/inputcribl.py +4 -11
  26. cribl_control_plane/models/inputcriblhttp.py +8 -23
  27. cribl_control_plane/models/inputcribllakehttp.py +10 -22
  28. cribl_control_plane/models/inputcriblmetrics.py +4 -12
  29. cribl_control_plane/models/inputcribltcp.py +8 -23
  30. cribl_control_plane/models/inputcrowdstrike.py +10 -26
  31. cribl_control_plane/models/inputdatadogagent.py +8 -24
  32. cribl_control_plane/models/inputdatagen.py +4 -11
  33. cribl_control_plane/models/inputedgeprometheus.py +24 -58
  34. cribl_control_plane/models/inputelastic.py +14 -40
  35. cribl_control_plane/models/inputeventhub.py +6 -15
  36. cribl_control_plane/models/inputexec.py +6 -14
  37. cribl_control_plane/models/inputfile.py +6 -15
  38. cribl_control_plane/models/inputfirehose.py +8 -23
  39. cribl_control_plane/models/inputgooglepubsub.py +6 -19
  40. cribl_control_plane/models/inputgrafana.py +24 -67
  41. cribl_control_plane/models/inputhttp.py +8 -23
  42. cribl_control_plane/models/inputhttpraw.py +8 -23
  43. cribl_control_plane/models/inputjournalfiles.py +4 -12
  44. cribl_control_plane/models/inputkafka.py +16 -46
  45. cribl_control_plane/models/inputkinesis.py +14 -38
  46. cribl_control_plane/models/inputkubeevents.py +4 -11
  47. cribl_control_plane/models/inputkubelogs.py +8 -16
  48. cribl_control_plane/models/inputkubemetrics.py +8 -16
  49. cribl_control_plane/models/inputloki.py +10 -29
  50. cribl_control_plane/models/inputmetrics.py +8 -23
  51. cribl_control_plane/models/inputmodeldriventelemetry.py +10 -27
  52. cribl_control_plane/models/inputmsk.py +18 -53
  53. cribl_control_plane/models/inputnetflow.py +4 -11
  54. cribl_control_plane/models/inputoffice365mgmt.py +14 -33
  55. cribl_control_plane/models/inputoffice365msgtrace.py +16 -35
  56. cribl_control_plane/models/inputoffice365service.py +16 -35
  57. cribl_control_plane/models/inputopentelemetry.py +16 -38
  58. cribl_control_plane/models/inputprometheus.py +18 -50
  59. cribl_control_plane/models/inputprometheusrw.py +10 -30
  60. cribl_control_plane/models/inputrawudp.py +4 -11
  61. cribl_control_plane/models/inputs3.py +8 -21
  62. cribl_control_plane/models/inputs3inventory.py +10 -26
  63. cribl_control_plane/models/inputsecuritylake.py +10 -27
  64. cribl_control_plane/models/inputsnmp.py +6 -16
  65. cribl_control_plane/models/inputsplunk.py +12 -33
  66. cribl_control_plane/models/inputsplunkhec.py +10 -29
  67. cribl_control_plane/models/inputsplunksearch.py +14 -33
  68. cribl_control_plane/models/inputsqs.py +10 -27
  69. cribl_control_plane/models/inputsyslog.py +16 -43
  70. cribl_control_plane/models/inputsystemmetrics.py +24 -48
  71. cribl_control_plane/models/inputsystemstate.py +8 -16
  72. cribl_control_plane/models/inputtcp.py +10 -29
  73. cribl_control_plane/models/inputtcpjson.py +10 -29
  74. cribl_control_plane/models/inputwef.py +14 -37
  75. cribl_control_plane/models/inputwindowsmetrics.py +24 -44
  76. cribl_control_plane/models/inputwineventlogs.py +10 -20
  77. cribl_control_plane/models/inputwiz.py +8 -21
  78. cribl_control_plane/models/inputwizwebhook.py +8 -23
  79. cribl_control_plane/models/inputzscalerhec.py +10 -29
  80. cribl_control_plane/models/lakehouseconnectiontype.py +1 -2
  81. cribl_control_plane/models/listconfiggroupbyproductop.py +1 -3
  82. cribl_control_plane/models/masterworkerentry.py +2 -7
  83. cribl_control_plane/models/nodeactiveupgradestatus.py +1 -2
  84. cribl_control_plane/models/nodefailedupgradestatus.py +1 -2
  85. cribl_control_plane/models/nodeskippedupgradestatus.py +1 -2
  86. cribl_control_plane/models/nodeupgradestate.py +1 -2
  87. cribl_control_plane/models/nodeupgradestatus.py +5 -13
  88. cribl_control_plane/models/outputazureblob.py +18 -48
  89. cribl_control_plane/models/outputazuredataexplorer.py +28 -73
  90. cribl_control_plane/models/outputazureeventhub.py +18 -40
  91. cribl_control_plane/models/outputazurelogs.py +12 -35
  92. cribl_control_plane/models/outputclickhouse.py +20 -55
  93. cribl_control_plane/models/outputcloudwatch.py +10 -29
  94. cribl_control_plane/models/outputconfluentcloud.py +32 -77
  95. cribl_control_plane/models/outputcriblhttp.py +16 -44
  96. cribl_control_plane/models/outputcribllake.py +16 -46
  97. cribl_control_plane/models/outputcribltcp.py +18 -45
  98. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +14 -49
  99. cribl_control_plane/models/outputdatadog.py +20 -48
  100. cribl_control_plane/models/outputdataset.py +18 -46
  101. cribl_control_plane/models/outputdiskspool.py +2 -7
  102. cribl_control_plane/models/outputdls3.py +24 -68
  103. cribl_control_plane/models/outputdynatracehttp.py +20 -53
  104. cribl_control_plane/models/outputdynatraceotlp.py +22 -55
  105. cribl_control_plane/models/outputelastic.py +18 -43
  106. cribl_control_plane/models/outputelasticcloud.py +12 -36
  107. cribl_control_plane/models/outputexabeam.py +10 -29
  108. cribl_control_plane/models/outputfilesystem.py +14 -39
  109. cribl_control_plane/models/outputgooglechronicle.py +16 -50
  110. cribl_control_plane/models/outputgooglecloudlogging.py +14 -41
  111. cribl_control_plane/models/outputgooglecloudstorage.py +24 -66
  112. cribl_control_plane/models/outputgooglepubsub.py +10 -31
  113. cribl_control_plane/models/outputgrafanacloud.py +32 -97
  114. cribl_control_plane/models/outputgraphite.py +14 -31
  115. cribl_control_plane/models/outputhoneycomb.py +12 -35
  116. cribl_control_plane/models/outputhumiohec.py +16 -43
  117. cribl_control_plane/models/outputinfluxdb.py +16 -42
  118. cribl_control_plane/models/outputkafka.py +28 -74
  119. cribl_control_plane/models/outputkinesis.py +16 -40
  120. cribl_control_plane/models/outputloki.py +16 -41
  121. cribl_control_plane/models/outputminio.py +24 -65
  122. cribl_control_plane/models/outputmsk.py +30 -82
  123. cribl_control_plane/models/outputnewrelic.py +18 -43
  124. cribl_control_plane/models/outputnewrelicevents.py +14 -41
  125. cribl_control_plane/models/outputopentelemetry.py +26 -67
  126. cribl_control_plane/models/outputprometheus.py +12 -35
  127. cribl_control_plane/models/outputring.py +8 -19
  128. cribl_control_plane/models/outputs3.py +26 -68
  129. cribl_control_plane/models/outputsecuritylake.py +18 -52
  130. cribl_control_plane/models/outputsentinel.py +18 -45
  131. cribl_control_plane/models/outputsentineloneaisiem.py +18 -50
  132. cribl_control_plane/models/outputservicenow.py +24 -60
  133. cribl_control_plane/models/outputsignalfx.py +14 -37
  134. cribl_control_plane/models/outputsns.py +14 -36
  135. cribl_control_plane/models/outputsplunk.py +24 -60
  136. cribl_control_plane/models/outputsplunkhec.py +12 -35
  137. cribl_control_plane/models/outputsplunklb.py +30 -77
  138. cribl_control_plane/models/outputsqs.py +16 -41
  139. cribl_control_plane/models/outputstatsd.py +14 -30
  140. cribl_control_plane/models/outputstatsdext.py +12 -29
  141. cribl_control_plane/models/outputsumologic.py +12 -35
  142. cribl_control_plane/models/outputsyslog.py +24 -58
  143. cribl_control_plane/models/outputtcpjson.py +20 -52
  144. cribl_control_plane/models/outputwavefront.py +12 -35
  145. cribl_control_plane/models/outputwebhook.py +22 -58
  146. cribl_control_plane/models/outputxsiam.py +14 -35
  147. cribl_control_plane/models/productscore.py +1 -2
  148. cribl_control_plane/models/rbacresource.py +1 -2
  149. cribl_control_plane/models/resourcepolicy.py +2 -4
  150. cribl_control_plane/models/runnablejobcollection.py +13 -30
  151. cribl_control_plane/models/runnablejobexecutor.py +4 -13
  152. cribl_control_plane/models/runnablejobscheduledsearch.py +2 -7
  153. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +2 -8
  154. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +2 -8
  155. cribl_control_plane/models/workertypes.py +1 -2
  156. {cribl_control_plane-0.0.44a2.dist-info → cribl_control_plane-0.0.46.dist-info}/METADATA +3 -2
  157. {cribl_control_plane-0.0.44a2.dist-info → cribl_control_plane-0.0.46.dist-info}/RECORD +158 -158
  158. {cribl_control_plane-0.0.44a2.dist-info → cribl_control_plane-0.0.46.dist-info}/WHEEL +1 -1
@@ -1,12 +1,9 @@
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
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
@@ -15,7 +12,7 @@ class OutputS3Type(str, Enum):
15
12
  S3 = "s3"
16
13
 
17
14
 
18
- class OutputS3AuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
15
+ class OutputS3AuthenticationMethod(str, Enum):
19
16
  r"""AWS authentication method. Choose Auto to use IAM roles."""
20
17
 
21
18
  AUTO = "auto"
@@ -23,14 +20,14 @@ class OutputS3AuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
23
20
  SECRET = "secret"
24
21
 
25
22
 
26
- class OutputS3SignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
23
+ class OutputS3SignatureVersion(str, Enum):
27
24
  r"""Signature version to use for signing S3 requests"""
28
25
 
29
26
  V2 = "v2"
30
27
  V4 = "v4"
31
28
 
32
29
 
33
- class OutputS3ObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
30
+ class OutputS3ObjectACL(str, Enum):
34
31
  r"""Object ACL to assign to uploaded objects"""
35
32
 
36
33
  PRIVATE = "private"
@@ -42,7 +39,7 @@ class OutputS3ObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
42
39
  BUCKET_OWNER_FULL_CONTROL = "bucket-owner-full-control"
43
40
 
44
41
 
45
- class OutputS3StorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
42
+ class OutputS3StorageClass(str, Enum):
46
43
  r"""Storage class to select for uploaded objects"""
47
44
 
48
45
  STANDARD = "STANDARD"
@@ -55,14 +52,12 @@ class OutputS3StorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
55
52
  DEEP_ARCHIVE = "DEEP_ARCHIVE"
56
53
 
57
54
 
58
- class OutputS3ServerSideEncryptionForUploadedObjects(
59
- str, Enum, metaclass=utils.OpenEnumMeta
60
- ):
55
+ class OutputS3ServerSideEncryptionForUploadedObjects(str, Enum):
61
56
  AES256 = "AES256"
62
57
  AWS_KMS = "aws:kms"
63
58
 
64
59
 
65
- class OutputS3DataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
60
+ class OutputS3DataFormat(str, Enum):
66
61
  r"""Format of the output data"""
67
62
 
68
63
  JSON = "json"
@@ -70,28 +65,28 @@ class OutputS3DataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
70
65
  PARQUET = "parquet"
71
66
 
72
67
 
73
- class OutputS3BackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
68
+ class OutputS3BackpressureBehavior(str, Enum):
74
69
  r"""How to handle events when all receivers are exerting backpressure"""
75
70
 
76
71
  BLOCK = "block"
77
72
  DROP = "drop"
78
73
 
79
74
 
80
- class OutputS3DiskSpaceProtection(str, Enum, metaclass=utils.OpenEnumMeta):
75
+ class OutputS3DiskSpaceProtection(str, Enum):
81
76
  r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
82
77
 
83
78
  BLOCK = "block"
84
79
  DROP = "drop"
85
80
 
86
81
 
87
- class OutputS3Compression(str, Enum, metaclass=utils.OpenEnumMeta):
82
+ class OutputS3Compression(str, Enum):
88
83
  r"""Data compression format to apply to HTTP content before it is delivered"""
89
84
 
90
85
  NONE = "none"
91
86
  GZIP = "gzip"
92
87
 
93
88
 
94
- class OutputS3CompressionLevel(str, Enum, metaclass=utils.OpenEnumMeta):
89
+ class OutputS3CompressionLevel(str, Enum):
95
90
  r"""Compression level to apply before moving files to final destination"""
96
91
 
97
92
  BEST_SPEED = "best_speed"
@@ -99,7 +94,7 @@ class OutputS3CompressionLevel(str, Enum, metaclass=utils.OpenEnumMeta):
99
94
  BEST_COMPRESSION = "best_compression"
100
95
 
101
96
 
102
- class OutputS3ParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
97
+ class OutputS3ParquetVersion(str, Enum):
103
98
  r"""Determines which data types are supported and how they are represented"""
104
99
 
105
100
  PARQUET_1_0 = "PARQUET_1_0"
@@ -107,7 +102,7 @@ class OutputS3ParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
107
102
  PARQUET_2_6 = "PARQUET_2_6"
108
103
 
109
104
 
110
- class OutputS3DataPageVersion(str, Enum, metaclass=utils.OpenEnumMeta):
105
+ class OutputS3DataPageVersion(str, Enum):
111
106
  r"""Serialization format of data pages. Note that some reader implementations use Data page V2's attributes to work more efficiently, while others ignore it."""
112
107
 
113
108
  DATA_PAGE_V1 = "DATA_PAGE_V1"
@@ -277,10 +272,7 @@ class OutputS3(BaseModel):
277
272
  r"""Secret key. This value can be a constant or a JavaScript expression. Example: `${C.env.SOME_SECRET}`)"""
278
273
 
279
274
  aws_authentication_method: Annotated[
280
- Annotated[
281
- Optional[OutputS3AuthenticationMethod],
282
- PlainValidator(validate_open_enum(False)),
283
- ],
275
+ Optional[OutputS3AuthenticationMethod],
284
276
  pydantic.Field(alias="awsAuthenticationMethod"),
285
277
  ] = OutputS3AuthenticationMethod.AUTO
286
278
  r"""AWS authentication method. Choose Auto to use IAM roles."""
@@ -289,11 +281,7 @@ class OutputS3(BaseModel):
289
281
  r"""S3 service endpoint. If empty, defaults to the AWS Region-specific endpoint. Otherwise, it must point to S3-compatible endpoint."""
290
282
 
291
283
  signature_version: Annotated[
292
- Annotated[
293
- Optional[OutputS3SignatureVersion],
294
- PlainValidator(validate_open_enum(False)),
295
- ],
296
- pydantic.Field(alias="signatureVersion"),
284
+ Optional[OutputS3SignatureVersion], pydantic.Field(alias="signatureVersion")
297
285
  ] = OutputS3SignatureVersion.V4
298
286
  r"""Signature version to use for signing S3 requests"""
299
287
 
@@ -341,26 +329,17 @@ class OutputS3(BaseModel):
341
329
  r"""Prefix to prepend to files before uploading. Must be a JavaScript expression (which can evaluate to a constant value), enclosed in quotes or backticks. Can be evaluated only at init time. Example referencing a Global Variable: `myKeyPrefix-${C.vars.myVar}`"""
342
330
 
343
331
  object_acl: Annotated[
344
- Annotated[
345
- Optional[OutputS3ObjectACL], PlainValidator(validate_open_enum(False))
346
- ],
347
- pydantic.Field(alias="objectACL"),
332
+ Optional[OutputS3ObjectACL], pydantic.Field(alias="objectACL")
348
333
  ] = OutputS3ObjectACL.PRIVATE
349
334
  r"""Object ACL to assign to uploaded objects"""
350
335
 
351
336
  storage_class: Annotated[
352
- Annotated[
353
- Optional[OutputS3StorageClass], PlainValidator(validate_open_enum(False))
354
- ],
355
- pydantic.Field(alias="storageClass"),
337
+ Optional[OutputS3StorageClass], pydantic.Field(alias="storageClass")
356
338
  ] = None
357
339
  r"""Storage class to select for uploaded objects"""
358
340
 
359
341
  server_side_encryption: Annotated[
360
- Annotated[
361
- Optional[OutputS3ServerSideEncryptionForUploadedObjects],
362
- PlainValidator(validate_open_enum(False)),
363
- ],
342
+ Optional[OutputS3ServerSideEncryptionForUploadedObjects],
364
343
  pydantic.Field(alias="serverSideEncryption"),
365
344
  ] = None
366
345
 
@@ -377,12 +356,9 @@ class OutputS3(BaseModel):
377
356
  )
378
357
  r"""JavaScript expression defining how files are partitioned and organized. Default is date-based. If blank, Stream will fall back to the event's __partition field value – if present – otherwise to each location's root directory."""
379
358
 
380
- format_: Annotated[
381
- Annotated[
382
- Optional[OutputS3DataFormat], PlainValidator(validate_open_enum(False))
383
- ],
384
- pydantic.Field(alias="format"),
385
- ] = OutputS3DataFormat.JSON
359
+ format_: Annotated[Optional[OutputS3DataFormat], pydantic.Field(alias="format")] = (
360
+ OutputS3DataFormat.JSON
361
+ )
386
362
  r"""Format of the output data"""
387
363
 
388
364
  base_file_name: Annotated[Optional[str], pydantic.Field(alias="baseFileName")] = (
@@ -414,11 +390,7 @@ class OutputS3(BaseModel):
414
390
  r"""Buffer size used to write to a file"""
415
391
 
416
392
  on_backpressure: Annotated[
417
- Annotated[
418
- Optional[OutputS3BackpressureBehavior],
419
- PlainValidator(validate_open_enum(False)),
420
- ],
421
- pydantic.Field(alias="onBackpressure"),
393
+ Optional[OutputS3BackpressureBehavior], pydantic.Field(alias="onBackpressure")
422
394
  ] = OutputS3BackpressureBehavior.BLOCK
423
395
  r"""How to handle events when all receivers are exerting backpressure"""
424
396
 
@@ -428,10 +400,7 @@ class OutputS3(BaseModel):
428
400
  r"""If a file fails to move to its final destination after the maximum number of retries, move it to a designated directory to prevent further errors"""
429
401
 
430
402
  on_disk_full_backpressure: Annotated[
431
- Annotated[
432
- Optional[OutputS3DiskSpaceProtection],
433
- PlainValidator(validate_open_enum(False)),
434
- ],
403
+ Optional[OutputS3DiskSpaceProtection],
435
404
  pydantic.Field(alias="onDiskFullBackpressure"),
436
405
  ] = OutputS3DiskSpaceProtection.BLOCK
437
406
  r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
@@ -469,17 +438,11 @@ class OutputS3(BaseModel):
469
438
  aws_secret: Annotated[Optional[str], pydantic.Field(alias="awsSecret")] = None
470
439
  r"""Select or create a stored secret that references your access key and secret key"""
471
440
 
472
- compress: Annotated[
473
- Optional[OutputS3Compression], PlainValidator(validate_open_enum(False))
474
- ] = OutputS3Compression.GZIP
441
+ compress: Optional[OutputS3Compression] = OutputS3Compression.GZIP
475
442
  r"""Data compression format to apply to HTTP content before it is delivered"""
476
443
 
477
444
  compression_level: Annotated[
478
- Annotated[
479
- Optional[OutputS3CompressionLevel],
480
- PlainValidator(validate_open_enum(False)),
481
- ],
482
- pydantic.Field(alias="compressionLevel"),
445
+ Optional[OutputS3CompressionLevel], pydantic.Field(alias="compressionLevel")
483
446
  ] = OutputS3CompressionLevel.BEST_SPEED
484
447
  r"""Compression level to apply before moving files to final destination"""
485
448
 
@@ -489,17 +452,12 @@ class OutputS3(BaseModel):
489
452
  r"""Automatically calculate the schema based on the events of each Parquet file generated"""
490
453
 
491
454
  parquet_version: Annotated[
492
- Annotated[
493
- Optional[OutputS3ParquetVersion], PlainValidator(validate_open_enum(False))
494
- ],
495
- pydantic.Field(alias="parquetVersion"),
455
+ Optional[OutputS3ParquetVersion], pydantic.Field(alias="parquetVersion")
496
456
  ] = OutputS3ParquetVersion.PARQUET_2_6
497
457
  r"""Determines which data types are supported and how they are represented"""
498
458
 
499
459
  parquet_data_page_version: Annotated[
500
- Annotated[
501
- Optional[OutputS3DataPageVersion], PlainValidator(validate_open_enum(False))
502
- ],
460
+ Optional[OutputS3DataPageVersion],
503
461
  pydantic.Field(alias="parquetDataPageVersion"),
504
462
  ] = OutputS3DataPageVersion.DATA_PAGE_V2
505
463
  r"""Serialization format of data pages. Note that some reader implementations use Data page V2's attributes to work more efficiently, while others ignore it."""
@@ -1,12 +1,9 @@
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
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
@@ -15,7 +12,7 @@ class OutputSecurityLakeType(str, Enum):
15
12
  SECURITY_LAKE = "security_lake"
16
13
 
17
14
 
18
- class OutputSecurityLakeAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
15
+ class OutputSecurityLakeAuthenticationMethod(str, Enum):
19
16
  r"""AWS authentication method. Choose Auto to use IAM roles."""
20
17
 
21
18
  AUTO = "auto"
@@ -23,14 +20,14 @@ class OutputSecurityLakeAuthenticationMethod(str, Enum, metaclass=utils.OpenEnum
23
20
  SECRET = "secret"
24
21
 
25
22
 
26
- class OutputSecurityLakeSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
23
+ class OutputSecurityLakeSignatureVersion(str, Enum):
27
24
  r"""Signature version to use for signing Amazon Security Lake requests"""
28
25
 
29
26
  V2 = "v2"
30
27
  V4 = "v4"
31
28
 
32
29
 
33
- class OutputSecurityLakeObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
30
+ class OutputSecurityLakeObjectACL(str, Enum):
34
31
  r"""Object ACL to assign to uploaded objects"""
35
32
 
36
33
  PRIVATE = "private"
@@ -42,7 +39,7 @@ class OutputSecurityLakeObjectACL(str, Enum, metaclass=utils.OpenEnumMeta):
42
39
  BUCKET_OWNER_FULL_CONTROL = "bucket-owner-full-control"
43
40
 
44
41
 
45
- class OutputSecurityLakeStorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
42
+ class OutputSecurityLakeStorageClass(str, Enum):
46
43
  r"""Storage class to select for uploaded objects"""
47
44
 
48
45
  STANDARD = "STANDARD"
@@ -55,28 +52,26 @@ class OutputSecurityLakeStorageClass(str, Enum, metaclass=utils.OpenEnumMeta):
55
52
  DEEP_ARCHIVE = "DEEP_ARCHIVE"
56
53
 
57
54
 
58
- class OutputSecurityLakeServerSideEncryptionForUploadedObjects(
59
- str, Enum, metaclass=utils.OpenEnumMeta
60
- ):
55
+ class OutputSecurityLakeServerSideEncryptionForUploadedObjects(str, Enum):
61
56
  AES256 = "AES256"
62
57
  AWS_KMS = "aws:kms"
63
58
 
64
59
 
65
- class OutputSecurityLakeBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
60
+ class OutputSecurityLakeBackpressureBehavior(str, Enum):
66
61
  r"""How to handle events when all receivers are exerting backpressure"""
67
62
 
68
63
  BLOCK = "block"
69
64
  DROP = "drop"
70
65
 
71
66
 
72
- class OutputSecurityLakeDiskSpaceProtection(str, Enum, metaclass=utils.OpenEnumMeta):
67
+ class OutputSecurityLakeDiskSpaceProtection(str, Enum):
73
68
  r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
74
69
 
75
70
  BLOCK = "block"
76
71
  DROP = "drop"
77
72
 
78
73
 
79
- class OutputSecurityLakeParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
74
+ class OutputSecurityLakeParquetVersion(str, Enum):
80
75
  r"""Determines which data types are supported and how they are represented"""
81
76
 
82
77
  PARQUET_1_0 = "PARQUET_1_0"
@@ -84,7 +79,7 @@ class OutputSecurityLakeParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
84
79
  PARQUET_2_6 = "PARQUET_2_6"
85
80
 
86
81
 
87
- class OutputSecurityLakeDataPageVersion(str, Enum, metaclass=utils.OpenEnumMeta):
82
+ class OutputSecurityLakeDataPageVersion(str, Enum):
88
83
  r"""Serialization format of data pages. Note that some reader implementations use Data page V2's attributes to work more efficiently, while others ignore it."""
89
84
 
90
85
  DATA_PAGE_V1 = "DATA_PAGE_V1"
@@ -257,10 +252,7 @@ class OutputSecurityLake(BaseModel):
257
252
  )
258
253
 
259
254
  aws_authentication_method: Annotated[
260
- Annotated[
261
- Optional[OutputSecurityLakeAuthenticationMethod],
262
- PlainValidator(validate_open_enum(False)),
263
- ],
255
+ Optional[OutputSecurityLakeAuthenticationMethod],
264
256
  pydantic.Field(alias="awsAuthenticationMethod"),
265
257
  ] = OutputSecurityLakeAuthenticationMethod.AUTO
266
258
  r"""AWS authentication method. Choose Auto to use IAM roles."""
@@ -269,10 +261,7 @@ class OutputSecurityLake(BaseModel):
269
261
  r"""Amazon Security Lake service endpoint. If empty, defaults to the AWS Region-specific endpoint. Otherwise, it must point to Amazon Security Lake-compatible endpoint."""
270
262
 
271
263
  signature_version: Annotated[
272
- Annotated[
273
- Optional[OutputSecurityLakeSignatureVersion],
274
- PlainValidator(validate_open_enum(False)),
275
- ],
264
+ Optional[OutputSecurityLakeSignatureVersion],
276
265
  pydantic.Field(alias="signatureVersion"),
277
266
  ] = OutputSecurityLakeSignatureVersion.V4
278
267
  r"""Signature version to use for signing Amazon Security Lake requests"""
@@ -313,28 +302,17 @@ class OutputSecurityLake(BaseModel):
313
302
  r"""Add the Output ID value to staging location"""
314
303
 
315
304
  object_acl: Annotated[
316
- Annotated[
317
- Optional[OutputSecurityLakeObjectACL],
318
- PlainValidator(validate_open_enum(False)),
319
- ],
320
- pydantic.Field(alias="objectACL"),
305
+ Optional[OutputSecurityLakeObjectACL], pydantic.Field(alias="objectACL")
321
306
  ] = OutputSecurityLakeObjectACL.PRIVATE
322
307
  r"""Object ACL to assign to uploaded objects"""
323
308
 
324
309
  storage_class: Annotated[
325
- Annotated[
326
- Optional[OutputSecurityLakeStorageClass],
327
- PlainValidator(validate_open_enum(False)),
328
- ],
329
- pydantic.Field(alias="storageClass"),
310
+ Optional[OutputSecurityLakeStorageClass], pydantic.Field(alias="storageClass")
330
311
  ] = None
331
312
  r"""Storage class to select for uploaded objects"""
332
313
 
333
314
  server_side_encryption: Annotated[
334
- Annotated[
335
- Optional[OutputSecurityLakeServerSideEncryptionForUploadedObjects],
336
- PlainValidator(validate_open_enum(False)),
337
- ],
315
+ Optional[OutputSecurityLakeServerSideEncryptionForUploadedObjects],
338
316
  pydantic.Field(alias="serverSideEncryption"),
339
317
  ] = None
340
318
 
@@ -370,10 +348,7 @@ class OutputSecurityLake(BaseModel):
370
348
  r"""Buffer size used to write to a file"""
371
349
 
372
350
  on_backpressure: Annotated[
373
- Annotated[
374
- Optional[OutputSecurityLakeBackpressureBehavior],
375
- PlainValidator(validate_open_enum(False)),
376
- ],
351
+ Optional[OutputSecurityLakeBackpressureBehavior],
377
352
  pydantic.Field(alias="onBackpressure"),
378
353
  ] = OutputSecurityLakeBackpressureBehavior.BLOCK
379
354
  r"""How to handle events when all receivers are exerting backpressure"""
@@ -384,10 +359,7 @@ class OutputSecurityLake(BaseModel):
384
359
  r"""If a file fails to move to its final destination after the maximum number of retries, move it to a designated directory to prevent further errors"""
385
360
 
386
361
  on_disk_full_backpressure: Annotated[
387
- Annotated[
388
- Optional[OutputSecurityLakeDiskSpaceProtection],
389
- PlainValidator(validate_open_enum(False)),
390
- ],
362
+ Optional[OutputSecurityLakeDiskSpaceProtection],
391
363
  pydantic.Field(alias="onDiskFullBackpressure"),
392
364
  ] = OutputSecurityLakeDiskSpaceProtection.BLOCK
393
365
  r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
@@ -423,19 +395,13 @@ class OutputSecurityLake(BaseModel):
423
395
  r"""Automatically calculate the schema based on the events of each Parquet file generated"""
424
396
 
425
397
  parquet_version: Annotated[
426
- Annotated[
427
- Optional[OutputSecurityLakeParquetVersion],
428
- PlainValidator(validate_open_enum(False)),
429
- ],
398
+ Optional[OutputSecurityLakeParquetVersion],
430
399
  pydantic.Field(alias="parquetVersion"),
431
400
  ] = OutputSecurityLakeParquetVersion.PARQUET_2_6
432
401
  r"""Determines which data types are supported and how they are represented"""
433
402
 
434
403
  parquet_data_page_version: Annotated[
435
- Annotated[
436
- Optional[OutputSecurityLakeDataPageVersion],
437
- PlainValidator(validate_open_enum(False)),
438
- ],
404
+ Optional[OutputSecurityLakeDataPageVersion],
439
405
  pydantic.Field(alias="parquetDataPageVersion"),
440
406
  ] = OutputSecurityLakeDataPageVersion.DATA_PAGE_V2
441
407
  r"""Serialization format of data pages. Note that some reader implementations use Data page V2's attributes to work more efficiently, while others ignore it."""
@@ -1,12 +1,9 @@
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
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
@@ -26,7 +23,7 @@ class OutputSentinelExtraHTTPHeader(BaseModel):
26
23
  name: Optional[str] = None
27
24
 
28
25
 
29
- class OutputSentinelFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class OutputSentinelFailedRequestLoggingMode(str, Enum):
30
27
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
31
28
 
32
29
  PAYLOAD = "payload"
@@ -88,7 +85,7 @@ class OutputSentinelTimeoutRetrySettings(BaseModel):
88
85
  r"""The maximum backoff interval, in milliseconds, Cribl Stream should apply. Default (and minimum) is 10,000 ms (10 seconds); maximum is 180,000 ms (180 seconds)."""
89
86
 
90
87
 
91
- class OutputSentinelBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
88
+ class OutputSentinelBackpressureBehavior(str, Enum):
92
89
  r"""How to handle events when all receivers are exerting backpressure"""
93
90
 
94
91
  BLOCK = "block"
@@ -96,39 +93,39 @@ class OutputSentinelBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta
96
93
  QUEUE = "queue"
97
94
 
98
95
 
99
- class AuthType(str, Enum, metaclass=utils.OpenEnumMeta):
96
+ class AuthType(str, Enum):
100
97
  OAUTH = "oauth"
101
98
 
102
99
 
103
- class EndpointConfiguration(str, Enum, metaclass=utils.OpenEnumMeta):
100
+ class EndpointConfiguration(str, Enum):
104
101
  r"""Enter the data collection endpoint URL or the individual ID"""
105
102
 
106
103
  URL = "url"
107
104
  ID = "ID"
108
105
 
109
106
 
110
- class OutputSentinelFormat(str, Enum, metaclass=utils.OpenEnumMeta):
107
+ class OutputSentinelFormat(str, Enum):
111
108
  NDJSON = "ndjson"
112
109
  JSON_ARRAY = "json_array"
113
110
  CUSTOM = "custom"
114
111
  ADVANCED = "advanced"
115
112
 
116
113
 
117
- class OutputSentinelCompression(str, Enum, metaclass=utils.OpenEnumMeta):
114
+ class OutputSentinelCompression(str, Enum):
118
115
  r"""Codec to use to compress the persisted data"""
119
116
 
120
117
  NONE = "none"
121
118
  GZIP = "gzip"
122
119
 
123
120
 
124
- class OutputSentinelQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
121
+ class OutputSentinelQueueFullBehavior(str, Enum):
125
122
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
126
123
 
127
124
  BLOCK = "block"
128
125
  DROP = "drop"
129
126
 
130
127
 
131
- class OutputSentinelMode(str, Enum, metaclass=utils.OpenEnumMeta):
128
+ class OutputSentinelMode(str, Enum):
132
129
  r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
133
130
 
134
131
  ERROR = "error"
@@ -322,10 +319,7 @@ class OutputSentinel(BaseModel):
322
319
  r"""Enable round-robin DNS lookup. When a DNS server returns multiple addresses, @{product} will cycle through them in the order returned. For optimal performance, consider enabling this setting for non-load balanced destinations."""
323
320
 
324
321
  failed_request_logging_mode: Annotated[
325
- Annotated[
326
- Optional[OutputSentinelFailedRequestLoggingMode],
327
- PlainValidator(validate_open_enum(False)),
328
- ],
322
+ Optional[OutputSentinelFailedRequestLoggingMode],
329
323
  pydantic.Field(alias="failedRequestLoggingMode"),
330
324
  ] = OutputSentinelFailedRequestLoggingMode.NONE
331
325
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
@@ -352,26 +346,18 @@ class OutputSentinel(BaseModel):
352
346
  r"""Honor any Retry-After header that specifies a delay (in seconds) no longer than 180 seconds after the retry request. @{product} limits the delay to 180 seconds, even if the Retry-After header specifies a longer delay. When enabled, takes precedence over user-configured retry options. When disabled, all Retry-After headers are ignored."""
353
347
 
354
348
  on_backpressure: Annotated[
355
- Annotated[
356
- Optional[OutputSentinelBackpressureBehavior],
357
- PlainValidator(validate_open_enum(False)),
358
- ],
349
+ Optional[OutputSentinelBackpressureBehavior],
359
350
  pydantic.Field(alias="onBackpressure"),
360
351
  ] = OutputSentinelBackpressureBehavior.BLOCK
361
352
  r"""How to handle events when all receivers are exerting backpressure"""
362
353
 
363
- auth_type: Annotated[
364
- Annotated[Optional[AuthType], PlainValidator(validate_open_enum(False))],
365
- pydantic.Field(alias="authType"),
366
- ] = None
354
+ auth_type: Annotated[Optional[AuthType], pydantic.Field(alias="authType")] = None
367
355
 
368
356
  scope: Optional[str] = "https://monitor.azure.com/.default"
369
357
  r"""Scope to pass in the OAuth request"""
370
358
 
371
359
  endpoint_url_configuration: Annotated[
372
- Annotated[
373
- Optional[EndpointConfiguration], PlainValidator(validate_open_enum(False))
374
- ],
360
+ Optional[EndpointConfiguration],
375
361
  pydantic.Field(alias="endpointURLConfiguration"),
376
362
  ] = EndpointConfiguration.URL
377
363
  r"""Enter the data collection endpoint URL or the individual ID"""
@@ -384,10 +370,7 @@ class OutputSentinel(BaseModel):
384
370
  description: Optional[str] = None
385
371
 
386
372
  format_: Annotated[
387
- Annotated[
388
- Optional[OutputSentinelFormat], PlainValidator(validate_open_enum(False))
389
- ],
390
- pydantic.Field(alias="format"),
373
+ Optional[OutputSentinelFormat], pydantic.Field(alias="format")
391
374
  ] = None
392
375
 
393
376
  custom_source_expression: Annotated[
@@ -444,29 +427,19 @@ class OutputSentinel(BaseModel):
444
427
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
445
428
 
446
429
  pq_compress: Annotated[
447
- Annotated[
448
- Optional[OutputSentinelCompression],
449
- PlainValidator(validate_open_enum(False)),
450
- ],
451
- pydantic.Field(alias="pqCompress"),
430
+ Optional[OutputSentinelCompression], pydantic.Field(alias="pqCompress")
452
431
  ] = OutputSentinelCompression.NONE
453
432
  r"""Codec to use to compress the persisted data"""
454
433
 
455
434
  pq_on_backpressure: Annotated[
456
- Annotated[
457
- Optional[OutputSentinelQueueFullBehavior],
458
- PlainValidator(validate_open_enum(False)),
459
- ],
435
+ Optional[OutputSentinelQueueFullBehavior],
460
436
  pydantic.Field(alias="pqOnBackpressure"),
461
437
  ] = OutputSentinelQueueFullBehavior.BLOCK
462
438
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
463
439
 
464
- pq_mode: Annotated[
465
- Annotated[
466
- Optional[OutputSentinelMode], PlainValidator(validate_open_enum(False))
467
- ],
468
- pydantic.Field(alias="pqMode"),
469
- ] = OutputSentinelMode.ERROR
440
+ pq_mode: Annotated[Optional[OutputSentinelMode], pydantic.Field(alias="pqMode")] = (
441
+ OutputSentinelMode.ERROR
442
+ )
470
443
  r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
471
444
 
472
445
  pq_controls: Annotated[