cribl-control-plane 0.0.50rc1__py3-none-any.whl → 0.0.51__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 (174) hide show
  1. cribl_control_plane/_version.py +6 -4
  2. cribl_control_plane/errors/healthstatus_error.py +2 -8
  3. cribl_control_plane/health.py +2 -6
  4. cribl_control_plane/httpclient.py +0 -1
  5. cribl_control_plane/models/__init__.py +4 -21
  6. cribl_control_plane/models/appmode.py +1 -2
  7. cribl_control_plane/models/cacheconnection.py +2 -10
  8. cribl_control_plane/models/cacheconnectionbackfillstatus.py +1 -2
  9. cribl_control_plane/models/cloudprovider.py +1 -2
  10. cribl_control_plane/models/configgroup.py +2 -7
  11. cribl_control_plane/models/configgroupcloud.py +2 -6
  12. cribl_control_plane/models/createconfiggroupbyproductop.py +2 -8
  13. cribl_control_plane/models/createinputhectokenbyidop.py +5 -6
  14. cribl_control_plane/models/createversionpushop.py +5 -5
  15. cribl_control_plane/models/createversionundoop.py +3 -3
  16. cribl_control_plane/models/cribllakedataset.py +2 -8
  17. cribl_control_plane/models/datasetmetadata.py +2 -8
  18. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +2 -7
  19. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +2 -4
  20. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +2 -4
  21. cribl_control_plane/models/getconfiggroupbyproductandidop.py +1 -3
  22. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +2 -7
  23. cribl_control_plane/models/getsummaryop.py +2 -7
  24. cribl_control_plane/models/getversionshowop.py +5 -6
  25. cribl_control_plane/models/gitinfo.py +3 -14
  26. cribl_control_plane/models/hbcriblinfo.py +1 -11
  27. cribl_control_plane/models/healthstatus.py +4 -7
  28. cribl_control_plane/models/inputappscope.py +14 -34
  29. cribl_control_plane/models/inputazureblob.py +6 -17
  30. cribl_control_plane/models/inputcollection.py +4 -11
  31. cribl_control_plane/models/inputconfluentcloud.py +20 -47
  32. cribl_control_plane/models/inputcribl.py +4 -11
  33. cribl_control_plane/models/inputcriblhttp.py +8 -23
  34. cribl_control_plane/models/inputcribllakehttp.py +10 -22
  35. cribl_control_plane/models/inputcriblmetrics.py +4 -12
  36. cribl_control_plane/models/inputcribltcp.py +8 -23
  37. cribl_control_plane/models/inputcrowdstrike.py +10 -26
  38. cribl_control_plane/models/inputdatadogagent.py +8 -24
  39. cribl_control_plane/models/inputdatagen.py +4 -11
  40. cribl_control_plane/models/inputedgeprometheus.py +24 -58
  41. cribl_control_plane/models/inputelastic.py +14 -40
  42. cribl_control_plane/models/inputeventhub.py +6 -15
  43. cribl_control_plane/models/inputexec.py +6 -14
  44. cribl_control_plane/models/inputfile.py +6 -15
  45. cribl_control_plane/models/inputfirehose.py +8 -23
  46. cribl_control_plane/models/inputgooglepubsub.py +6 -19
  47. cribl_control_plane/models/inputgrafana.py +24 -67
  48. cribl_control_plane/models/inputhttp.py +8 -23
  49. cribl_control_plane/models/inputhttpraw.py +8 -23
  50. cribl_control_plane/models/inputjournalfiles.py +4 -12
  51. cribl_control_plane/models/inputkafka.py +16 -46
  52. cribl_control_plane/models/inputkinesis.py +14 -38
  53. cribl_control_plane/models/inputkubeevents.py +4 -11
  54. cribl_control_plane/models/inputkubelogs.py +8 -16
  55. cribl_control_plane/models/inputkubemetrics.py +8 -16
  56. cribl_control_plane/models/inputloki.py +10 -29
  57. cribl_control_plane/models/inputmetrics.py +8 -23
  58. cribl_control_plane/models/inputmodeldriventelemetry.py +10 -32
  59. cribl_control_plane/models/inputmsk.py +18 -53
  60. cribl_control_plane/models/inputnetflow.py +4 -11
  61. cribl_control_plane/models/inputoffice365mgmt.py +14 -33
  62. cribl_control_plane/models/inputoffice365msgtrace.py +16 -35
  63. cribl_control_plane/models/inputoffice365service.py +16 -35
  64. cribl_control_plane/models/inputopentelemetry.py +16 -38
  65. cribl_control_plane/models/inputprometheus.py +18 -50
  66. cribl_control_plane/models/inputprometheusrw.py +10 -30
  67. cribl_control_plane/models/inputrawudp.py +4 -11
  68. cribl_control_plane/models/inputs3.py +8 -21
  69. cribl_control_plane/models/inputs3inventory.py +10 -26
  70. cribl_control_plane/models/inputsecuritylake.py +10 -27
  71. cribl_control_plane/models/inputsnmp.py +6 -16
  72. cribl_control_plane/models/inputsplunk.py +12 -33
  73. cribl_control_plane/models/inputsplunkhec.py +10 -29
  74. cribl_control_plane/models/inputsplunksearch.py +14 -33
  75. cribl_control_plane/models/inputsqs.py +10 -27
  76. cribl_control_plane/models/inputsyslog.py +16 -43
  77. cribl_control_plane/models/inputsystemmetrics.py +24 -48
  78. cribl_control_plane/models/inputsystemstate.py +8 -16
  79. cribl_control_plane/models/inputtcp.py +10 -29
  80. cribl_control_plane/models/inputtcpjson.py +10 -29
  81. cribl_control_plane/models/inputwef.py +14 -37
  82. cribl_control_plane/models/inputwindowsmetrics.py +24 -44
  83. cribl_control_plane/models/inputwineventlogs.py +10 -20
  84. cribl_control_plane/models/inputwiz.py +8 -21
  85. cribl_control_plane/models/inputwizwebhook.py +8 -23
  86. cribl_control_plane/models/inputzscalerhec.py +10 -29
  87. cribl_control_plane/models/jobinfo.py +1 -4
  88. cribl_control_plane/models/lakehouseconnectiontype.py +1 -2
  89. cribl_control_plane/models/listconfiggroupbyproductop.py +1 -3
  90. cribl_control_plane/models/masterworkerentry.py +2 -7
  91. cribl_control_plane/models/nodeactiveupgradestatus.py +1 -2
  92. cribl_control_plane/models/nodefailedupgradestatus.py +1 -2
  93. cribl_control_plane/models/nodeprovidedinfo.py +1 -4
  94. cribl_control_plane/models/nodeskippedupgradestatus.py +1 -2
  95. cribl_control_plane/models/nodeupgradestate.py +1 -2
  96. cribl_control_plane/models/nodeupgradestatus.py +5 -13
  97. cribl_control_plane/models/outputazureblob.py +18 -48
  98. cribl_control_plane/models/outputazuredataexplorer.py +28 -73
  99. cribl_control_plane/models/outputazureeventhub.py +18 -40
  100. cribl_control_plane/models/outputazurelogs.py +12 -35
  101. cribl_control_plane/models/outputclickhouse.py +20 -55
  102. cribl_control_plane/models/outputcloudwatch.py +10 -29
  103. cribl_control_plane/models/outputconfluentcloud.py +32 -77
  104. cribl_control_plane/models/outputcriblhttp.py +16 -44
  105. cribl_control_plane/models/outputcribllake.py +16 -46
  106. cribl_control_plane/models/outputcribltcp.py +18 -45
  107. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +14 -49
  108. cribl_control_plane/models/outputdatadog.py +20 -48
  109. cribl_control_plane/models/outputdataset.py +18 -46
  110. cribl_control_plane/models/outputdiskspool.py +2 -7
  111. cribl_control_plane/models/outputdls3.py +24 -68
  112. cribl_control_plane/models/outputdynatracehttp.py +20 -53
  113. cribl_control_plane/models/outputdynatraceotlp.py +22 -55
  114. cribl_control_plane/models/outputelastic.py +18 -43
  115. cribl_control_plane/models/outputelasticcloud.py +12 -36
  116. cribl_control_plane/models/outputexabeam.py +10 -29
  117. cribl_control_plane/models/outputfilesystem.py +14 -39
  118. cribl_control_plane/models/outputgooglechronicle.py +16 -50
  119. cribl_control_plane/models/outputgooglecloudlogging.py +18 -50
  120. cribl_control_plane/models/outputgooglecloudstorage.py +24 -66
  121. cribl_control_plane/models/outputgooglepubsub.py +10 -31
  122. cribl_control_plane/models/outputgrafanacloud.py +32 -97
  123. cribl_control_plane/models/outputgraphite.py +14 -31
  124. cribl_control_plane/models/outputhoneycomb.py +12 -35
  125. cribl_control_plane/models/outputhumiohec.py +16 -43
  126. cribl_control_plane/models/outputinfluxdb.py +16 -42
  127. cribl_control_plane/models/outputkafka.py +28 -74
  128. cribl_control_plane/models/outputkinesis.py +16 -40
  129. cribl_control_plane/models/outputloki.py +16 -41
  130. cribl_control_plane/models/outputminio.py +24 -65
  131. cribl_control_plane/models/outputmsk.py +30 -82
  132. cribl_control_plane/models/outputnewrelic.py +18 -43
  133. cribl_control_plane/models/outputnewrelicevents.py +14 -41
  134. cribl_control_plane/models/outputopentelemetry.py +26 -67
  135. cribl_control_plane/models/outputprometheus.py +12 -35
  136. cribl_control_plane/models/outputring.py +8 -19
  137. cribl_control_plane/models/outputs3.py +26 -68
  138. cribl_control_plane/models/outputsecuritylake.py +18 -52
  139. cribl_control_plane/models/outputsentinel.py +18 -45
  140. cribl_control_plane/models/outputsentineloneaisiem.py +18 -50
  141. cribl_control_plane/models/outputservicenow.py +24 -60
  142. cribl_control_plane/models/outputsignalfx.py +14 -37
  143. cribl_control_plane/models/outputsns.py +14 -36
  144. cribl_control_plane/models/outputsplunk.py +24 -60
  145. cribl_control_plane/models/outputsplunkhec.py +12 -35
  146. cribl_control_plane/models/outputsplunklb.py +30 -77
  147. cribl_control_plane/models/outputsqs.py +16 -41
  148. cribl_control_plane/models/outputstatsd.py +14 -30
  149. cribl_control_plane/models/outputstatsdext.py +12 -29
  150. cribl_control_plane/models/outputsumologic.py +12 -35
  151. cribl_control_plane/models/outputsyslog.py +24 -58
  152. cribl_control_plane/models/outputtcpjson.py +20 -52
  153. cribl_control_plane/models/outputwavefront.py +12 -35
  154. cribl_control_plane/models/outputwebhook.py +22 -58
  155. cribl_control_plane/models/outputxsiam.py +14 -35
  156. cribl_control_plane/models/packinfo.py +0 -3
  157. cribl_control_plane/models/packinstallinfo.py +0 -3
  158. cribl_control_plane/models/productscore.py +1 -2
  159. cribl_control_plane/models/rbacresource.py +1 -2
  160. cribl_control_plane/models/resourcepolicy.py +2 -4
  161. cribl_control_plane/models/runnablejobcollection.py +13 -30
  162. cribl_control_plane/models/runnablejobexecutor.py +4 -13
  163. cribl_control_plane/models/runnablejobscheduledsearch.py +2 -7
  164. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +2 -8
  165. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +2 -8
  166. cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +5 -6
  167. cribl_control_plane/models/workertypes.py +1 -2
  168. {cribl_control_plane-0.0.50rc1.dist-info → cribl_control_plane-0.0.51.dist-info}/METADATA +14 -5
  169. cribl_control_plane-0.0.51.dist-info/RECORD +325 -0
  170. cribl_control_plane/models/error.py +0 -16
  171. cribl_control_plane/models/gethealthinfoop.py +0 -17
  172. cribl_control_plane/models/gitshowresult.py +0 -19
  173. cribl_control_plane-0.0.50rc1.dist-info/RECORD +0 -328
  174. {cribl_control_plane-0.0.50rc1.dist-info → cribl_control_plane-0.0.51.dist-info}/WHEEL +0 -0
@@ -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,14 +23,14 @@ class InputSystemMetricsConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputSystemMetricsPqMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputSystemMetricsPqMode(str, Enum):
30
27
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
31
28
 
32
29
  SMART = "smart"
33
30
  ALWAYS = "always"
34
31
 
35
32
 
36
- class InputSystemMetricsCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputSystemMetricsCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -67,9 +64,7 @@ class InputSystemMetricsPqTypedDict(TypedDict):
67
64
 
68
65
 
69
66
  class InputSystemMetricsPq(BaseModel):
70
- mode: Annotated[
71
- Optional[InputSystemMetricsPqMode], PlainValidator(validate_open_enum(False))
72
- ] = InputSystemMetricsPqMode.ALWAYS
67
+ mode: Optional[InputSystemMetricsPqMode] = InputSystemMetricsPqMode.ALWAYS
73
68
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
74
69
 
75
70
  max_buffer_size: Annotated[
@@ -93,10 +88,9 @@ class InputSystemMetricsPq(BaseModel):
93
88
  path: Optional[str] = "$CRIBL_HOME/state/queues"
94
89
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
95
90
 
96
- compress: Annotated[
97
- Optional[InputSystemMetricsCompression],
98
- PlainValidator(validate_open_enum(False)),
99
- ] = InputSystemMetricsCompression.NONE
91
+ compress: Optional[InputSystemMetricsCompression] = (
92
+ InputSystemMetricsCompression.NONE
93
+ )
100
94
  r"""Codec to use to compress the persisted data"""
101
95
 
102
96
  pq_controls: Annotated[
@@ -104,7 +98,7 @@ class InputSystemMetricsPq(BaseModel):
104
98
  ] = None
105
99
 
106
100
 
107
- class InputSystemMetricsHostMode(str, Enum, metaclass=utils.OpenEnumMeta):
101
+ class InputSystemMetricsHostMode(str, Enum):
108
102
  r"""Select level of detail for host metrics"""
109
103
 
110
104
  BASIC = "basic"
@@ -113,7 +107,7 @@ class InputSystemMetricsHostMode(str, Enum, metaclass=utils.OpenEnumMeta):
113
107
  DISABLED = "disabled"
114
108
 
115
109
 
116
- class InputSystemMetricsSystemMode(str, Enum, metaclass=utils.OpenEnumMeta):
110
+ class InputSystemMetricsSystemMode(str, Enum):
117
111
  r"""Select the level of detail for system metrics"""
118
112
 
119
113
  BASIC = "basic"
@@ -130,17 +124,14 @@ class InputSystemMetricsSystemTypedDict(TypedDict):
130
124
 
131
125
 
132
126
  class InputSystemMetricsSystem(BaseModel):
133
- mode: Annotated[
134
- Optional[InputSystemMetricsSystemMode],
135
- PlainValidator(validate_open_enum(False)),
136
- ] = InputSystemMetricsSystemMode.BASIC
127
+ mode: Optional[InputSystemMetricsSystemMode] = InputSystemMetricsSystemMode.BASIC
137
128
  r"""Select the level of detail for system metrics"""
138
129
 
139
130
  processes: Optional[bool] = False
140
131
  r"""Generate metrics for the numbers of processes in various states"""
141
132
 
142
133
 
143
- class InputSystemMetricsCPUMode(str, Enum, metaclass=utils.OpenEnumMeta):
134
+ class InputSystemMetricsCPUMode(str, Enum):
144
135
  r"""Select the level of detail for CPU metrics"""
145
136
 
146
137
  BASIC = "basic"
@@ -161,9 +152,7 @@ class InputSystemMetricsCPUTypedDict(TypedDict):
161
152
 
162
153
 
163
154
  class InputSystemMetricsCPU(BaseModel):
164
- mode: Annotated[
165
- Optional[InputSystemMetricsCPUMode], PlainValidator(validate_open_enum(False))
166
- ] = InputSystemMetricsCPUMode.BASIC
155
+ mode: Optional[InputSystemMetricsCPUMode] = InputSystemMetricsCPUMode.BASIC
167
156
  r"""Select the level of detail for CPU metrics"""
168
157
 
169
158
  per_cpu: Annotated[Optional[bool], pydantic.Field(alias="perCpu")] = False
@@ -176,7 +165,7 @@ class InputSystemMetricsCPU(BaseModel):
176
165
  r"""Generate raw, monotonic CPU time counters"""
177
166
 
178
167
 
179
- class InputSystemMetricsMemoryMode(str, Enum, metaclass=utils.OpenEnumMeta):
168
+ class InputSystemMetricsMemoryMode(str, Enum):
180
169
  r"""Select the level of detail for memory metrics"""
181
170
 
182
171
  BASIC = "basic"
@@ -193,17 +182,14 @@ class InputSystemMetricsMemoryTypedDict(TypedDict):
193
182
 
194
183
 
195
184
  class InputSystemMetricsMemory(BaseModel):
196
- mode: Annotated[
197
- Optional[InputSystemMetricsMemoryMode],
198
- PlainValidator(validate_open_enum(False)),
199
- ] = InputSystemMetricsMemoryMode.BASIC
185
+ mode: Optional[InputSystemMetricsMemoryMode] = InputSystemMetricsMemoryMode.BASIC
200
186
  r"""Select the level of detail for memory metrics"""
201
187
 
202
188
  detail: Optional[bool] = False
203
189
  r"""Generate metrics for all memory states"""
204
190
 
205
191
 
206
- class InputSystemMetricsNetworkMode(str, Enum, metaclass=utils.OpenEnumMeta):
192
+ class InputSystemMetricsNetworkMode(str, Enum):
207
193
  r"""Select the level of detail for network metrics"""
208
194
 
209
195
  BASIC = "basic"
@@ -224,10 +210,7 @@ class InputSystemMetricsNetworkTypedDict(TypedDict):
224
210
 
225
211
 
226
212
  class InputSystemMetricsNetwork(BaseModel):
227
- mode: Annotated[
228
- Optional[InputSystemMetricsNetworkMode],
229
- PlainValidator(validate_open_enum(False)),
230
- ] = InputSystemMetricsNetworkMode.BASIC
213
+ mode: Optional[InputSystemMetricsNetworkMode] = InputSystemMetricsNetworkMode.BASIC
231
214
  r"""Select the level of detail for network metrics"""
232
215
 
233
216
  devices: Optional[List[str]] = None
@@ -242,7 +225,7 @@ class InputSystemMetricsNetwork(BaseModel):
242
225
  r"""Generate full network metrics"""
243
226
 
244
227
 
245
- class InputSystemMetricsDiskMode(str, Enum, metaclass=utils.OpenEnumMeta):
228
+ class InputSystemMetricsDiskMode(str, Enum):
246
229
  r"""Select the level of detail for disk metrics"""
247
230
 
248
231
  BASIC = "basic"
@@ -267,9 +250,7 @@ class InputSystemMetricsDiskTypedDict(TypedDict):
267
250
 
268
251
 
269
252
  class InputSystemMetricsDisk(BaseModel):
270
- mode: Annotated[
271
- Optional[InputSystemMetricsDiskMode], PlainValidator(validate_open_enum(False))
272
- ] = InputSystemMetricsDiskMode.BASIC
253
+ mode: Optional[InputSystemMetricsDiskMode] = InputSystemMetricsDiskMode.BASIC
273
254
  r"""Select the level of detail for disk metrics"""
274
255
 
275
256
  devices: Optional[List[str]] = None
@@ -315,9 +296,7 @@ class InputSystemMetricsHostTypedDict(TypedDict):
315
296
 
316
297
 
317
298
  class InputSystemMetricsHost(BaseModel):
318
- mode: Annotated[
319
- Optional[InputSystemMetricsHostMode], PlainValidator(validate_open_enum(False))
320
- ] = InputSystemMetricsHostMode.BASIC
299
+ mode: Optional[InputSystemMetricsHostMode] = InputSystemMetricsHostMode.BASIC
321
300
  r"""Select level of detail for host metrics"""
322
301
 
323
302
  custom: Optional[InputSystemMetricsCustom] = None
@@ -349,7 +328,7 @@ class InputSystemMetricsProcess(BaseModel):
349
328
  r"""Configure sets to collect process metrics"""
350
329
 
351
330
 
352
- class ContainerMode(str, Enum, metaclass=utils.OpenEnumMeta):
331
+ class ContainerMode(str, Enum):
353
332
  r"""Select the level of detail for container metrics"""
354
333
 
355
334
  BASIC = "basic"
@@ -384,9 +363,7 @@ class ContainerTypedDict(TypedDict):
384
363
 
385
364
 
386
365
  class Container(BaseModel):
387
- mode: Annotated[
388
- Optional[ContainerMode], PlainValidator(validate_open_enum(False))
389
- ] = ContainerMode.BASIC
366
+ mode: Optional[ContainerMode] = ContainerMode.BASIC
390
367
  r"""Select the level of detail for container metrics"""
391
368
 
392
369
  docker_socket: Annotated[
@@ -427,7 +404,7 @@ class InputSystemMetricsMetadatum(BaseModel):
427
404
  r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
428
405
 
429
406
 
430
- class InputSystemMetricsDataCompressionFormat(str, Enum, metaclass=utils.OpenEnumMeta):
407
+ class InputSystemMetricsDataCompressionFormat(str, Enum):
431
408
  NONE = "none"
432
409
  GZIP = "gzip"
433
410
 
@@ -459,10 +436,9 @@ class InputSystemMetricsPersistence(BaseModel):
459
436
  max_data_time: Annotated[Optional[str], pydantic.Field(alias="maxDataTime")] = "24h"
460
437
  r"""Maximum amount of time to retain data (examples: 2h, 4d). When limit is reached, older data will be deleted."""
461
438
 
462
- compress: Annotated[
463
- Optional[InputSystemMetricsDataCompressionFormat],
464
- PlainValidator(validate_open_enum(False)),
465
- ] = InputSystemMetricsDataCompressionFormat.GZIP
439
+ compress: Optional[InputSystemMetricsDataCompressionFormat] = (
440
+ InputSystemMetricsDataCompressionFormat.GZIP
441
+ )
466
442
 
467
443
  dest_path: Annotated[Optional[str], pydantic.Field(alias="destPath")] = (
468
444
  "$CRIBL_HOME/state/system_metrics"
@@ -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,14 +23,14 @@ class InputSystemStateConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputSystemStateMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputSystemStateMode(str, Enum):
30
27
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
31
28
 
32
29
  SMART = "smart"
33
30
  ALWAYS = "always"
34
31
 
35
32
 
36
- class InputSystemStateCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputSystemStateCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -67,9 +64,7 @@ class InputSystemStatePqTypedDict(TypedDict):
67
64
 
68
65
 
69
66
  class InputSystemStatePq(BaseModel):
70
- mode: Annotated[
71
- Optional[InputSystemStateMode], PlainValidator(validate_open_enum(False))
72
- ] = InputSystemStateMode.ALWAYS
67
+ mode: Optional[InputSystemStateMode] = InputSystemStateMode.ALWAYS
73
68
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
74
69
 
75
70
  max_buffer_size: Annotated[
@@ -93,9 +88,7 @@ class InputSystemStatePq(BaseModel):
93
88
  path: Optional[str] = "$CRIBL_HOME/state/queues"
94
89
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
95
90
 
96
- compress: Annotated[
97
- Optional[InputSystemStateCompression], PlainValidator(validate_open_enum(False))
98
- ] = InputSystemStateCompression.NONE
91
+ compress: Optional[InputSystemStateCompression] = InputSystemStateCompression.NONE
99
92
  r"""Codec to use to compress the persisted data"""
100
93
 
101
94
  pq_controls: Annotated[
@@ -310,7 +303,7 @@ class Collectors(BaseModel):
310
303
  r"""Creates events from list of logged-in users"""
311
304
 
312
305
 
313
- class InputSystemStateDataCompressionFormat(str, Enum, metaclass=utils.OpenEnumMeta):
306
+ class InputSystemStateDataCompressionFormat(str, Enum):
314
307
  NONE = "none"
315
308
  GZIP = "gzip"
316
309
 
@@ -342,10 +335,9 @@ class InputSystemStatePersistence(BaseModel):
342
335
  max_data_time: Annotated[Optional[str], pydantic.Field(alias="maxDataTime")] = "24h"
343
336
  r"""Maximum amount of time to retain data (examples: 2h, 4d). When limit is reached, older data will be deleted."""
344
337
 
345
- compress: Annotated[
346
- Optional[InputSystemStateDataCompressionFormat],
347
- PlainValidator(validate_open_enum(False)),
348
- ] = InputSystemStateDataCompressionFormat.NONE
338
+ compress: Optional[InputSystemStateDataCompressionFormat] = (
339
+ InputSystemStateDataCompressionFormat.NONE
340
+ )
349
341
 
350
342
  dest_path: Annotated[Optional[str], pydantic.Field(alias="destPath")] = (
351
343
  "$CRIBL_HOME/state/system_state"
@@ -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 Any, List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
@@ -26,14 +23,14 @@ class InputTCPConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputTCPMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputTCPMode(str, Enum):
30
27
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
31
28
 
32
29
  SMART = "smart"
33
30
  ALWAYS = "always"
34
31
 
35
32
 
36
- class InputTCPCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputTCPCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -67,9 +64,7 @@ class InputTCPPqTypedDict(TypedDict):
67
64
 
68
65
 
69
66
  class InputTCPPq(BaseModel):
70
- mode: Annotated[
71
- Optional[InputTCPMode], PlainValidator(validate_open_enum(False))
72
- ] = InputTCPMode.ALWAYS
67
+ mode: Optional[InputTCPMode] = InputTCPMode.ALWAYS
73
68
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
74
69
 
75
70
  max_buffer_size: Annotated[
@@ -93,9 +88,7 @@ class InputTCPPq(BaseModel):
93
88
  path: Optional[str] = "$CRIBL_HOME/state/queues"
94
89
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
95
90
 
96
- compress: Annotated[
97
- Optional[InputTCPCompression], PlainValidator(validate_open_enum(False))
98
- ] = InputTCPCompression.NONE
91
+ compress: Optional[InputTCPCompression] = InputTCPCompression.NONE
99
92
  r"""Codec to use to compress the persisted data"""
100
93
 
101
94
  pq_controls: Annotated[
@@ -103,14 +96,14 @@ class InputTCPPq(BaseModel):
103
96
  ] = None
104
97
 
105
98
 
106
- class InputTCPMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
99
+ class InputTCPMinimumTLSVersion(str, Enum):
107
100
  TL_SV1 = "TLSv1"
108
101
  TL_SV1_1 = "TLSv1.1"
109
102
  TL_SV1_2 = "TLSv1.2"
110
103
  TL_SV1_3 = "TLSv1.3"
111
104
 
112
105
 
113
- class InputTCPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
106
+ class InputTCPMaximumTLSVersion(str, Enum):
114
107
  TL_SV1 = "TLSv1"
115
108
  TL_SV1_1 = "TLSv1.1"
116
109
  TL_SV1_2 = "TLSv1.2"
@@ -169,19 +162,11 @@ class InputTCPTLSSettingsServerSide(BaseModel):
169
162
  ] = None
170
163
 
171
164
  min_version: Annotated[
172
- Annotated[
173
- Optional[InputTCPMinimumTLSVersion],
174
- PlainValidator(validate_open_enum(False)),
175
- ],
176
- pydantic.Field(alias="minVersion"),
165
+ Optional[InputTCPMinimumTLSVersion], pydantic.Field(alias="minVersion")
177
166
  ] = None
178
167
 
179
168
  max_version: Annotated[
180
- Annotated[
181
- Optional[InputTCPMaximumTLSVersion],
182
- PlainValidator(validate_open_enum(False)),
183
- ],
184
- pydantic.Field(alias="maxVersion"),
169
+ Optional[InputTCPMaximumTLSVersion], pydantic.Field(alias="maxVersion")
185
170
  ] = None
186
171
 
187
172
 
@@ -216,7 +201,7 @@ class InputTCPPreprocess(BaseModel):
216
201
  r"""Arguments to be added to the custom command"""
217
202
 
218
203
 
219
- class InputTCPAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
204
+ class InputTCPAuthenticationMethod(str, Enum):
220
205
  r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
221
206
 
222
207
  MANUAL = "manual"
@@ -363,10 +348,6 @@ class InputTCP(BaseModel):
363
348
  description: Optional[str] = None
364
349
 
365
350
  auth_type: Annotated[
366
- Annotated[
367
- Optional[InputTCPAuthenticationMethod],
368
- PlainValidator(validate_open_enum(False)),
369
- ],
370
- pydantic.Field(alias="authType"),
351
+ Optional[InputTCPAuthenticationMethod], pydantic.Field(alias="authType")
371
352
  ] = InputTCPAuthenticationMethod.MANUAL
372
353
  r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
@@ -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 Any, List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
@@ -26,14 +23,14 @@ class InputTcpjsonConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputTcpjsonMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputTcpjsonMode(str, Enum):
30
27
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
31
28
 
32
29
  SMART = "smart"
33
30
  ALWAYS = "always"
34
31
 
35
32
 
36
- class InputTcpjsonCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputTcpjsonCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -67,9 +64,7 @@ class InputTcpjsonPqTypedDict(TypedDict):
67
64
 
68
65
 
69
66
  class InputTcpjsonPq(BaseModel):
70
- mode: Annotated[
71
- Optional[InputTcpjsonMode], PlainValidator(validate_open_enum(False))
72
- ] = InputTcpjsonMode.ALWAYS
67
+ mode: Optional[InputTcpjsonMode] = InputTcpjsonMode.ALWAYS
73
68
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
74
69
 
75
70
  max_buffer_size: Annotated[
@@ -93,9 +88,7 @@ class InputTcpjsonPq(BaseModel):
93
88
  path: Optional[str] = "$CRIBL_HOME/state/queues"
94
89
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
95
90
 
96
- compress: Annotated[
97
- Optional[InputTcpjsonCompression], PlainValidator(validate_open_enum(False))
98
- ] = InputTcpjsonCompression.NONE
91
+ compress: Optional[InputTcpjsonCompression] = InputTcpjsonCompression.NONE
99
92
  r"""Codec to use to compress the persisted data"""
100
93
 
101
94
  pq_controls: Annotated[
@@ -103,14 +96,14 @@ class InputTcpjsonPq(BaseModel):
103
96
  ] = None
104
97
 
105
98
 
106
- class InputTcpjsonMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
99
+ class InputTcpjsonMinimumTLSVersion(str, Enum):
107
100
  TL_SV1 = "TLSv1"
108
101
  TL_SV1_1 = "TLSv1.1"
109
102
  TL_SV1_2 = "TLSv1.2"
110
103
  TL_SV1_3 = "TLSv1.3"
111
104
 
112
105
 
113
- class InputTcpjsonMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
106
+ class InputTcpjsonMaximumTLSVersion(str, Enum):
114
107
  TL_SV1 = "TLSv1"
115
108
  TL_SV1_1 = "TLSv1.1"
116
109
  TL_SV1_2 = "TLSv1.2"
@@ -169,19 +162,11 @@ class InputTcpjsonTLSSettingsServerSide(BaseModel):
169
162
  ] = None
170
163
 
171
164
  min_version: Annotated[
172
- Annotated[
173
- Optional[InputTcpjsonMinimumTLSVersion],
174
- PlainValidator(validate_open_enum(False)),
175
- ],
176
- pydantic.Field(alias="minVersion"),
165
+ Optional[InputTcpjsonMinimumTLSVersion], pydantic.Field(alias="minVersion")
177
166
  ] = None
178
167
 
179
168
  max_version: Annotated[
180
- Annotated[
181
- Optional[InputTcpjsonMaximumTLSVersion],
182
- PlainValidator(validate_open_enum(False)),
183
- ],
184
- pydantic.Field(alias="maxVersion"),
169
+ Optional[InputTcpjsonMaximumTLSVersion], pydantic.Field(alias="maxVersion")
185
170
  ] = None
186
171
 
187
172
 
@@ -198,7 +183,7 @@ class InputTcpjsonMetadatum(BaseModel):
198
183
  r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
199
184
 
200
185
 
201
- class InputTcpjsonAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
186
+ class InputTcpjsonAuthenticationMethod(str, Enum):
202
187
  r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
203
188
 
204
189
  MANUAL = "manual"
@@ -330,11 +315,7 @@ class InputTcpjson(BaseModel):
330
315
  r"""Load balance traffic across all Worker Processes"""
331
316
 
332
317
  auth_type: Annotated[
333
- Annotated[
334
- Optional[InputTcpjsonAuthenticationMethod],
335
- PlainValidator(validate_open_enum(False)),
336
- ],
337
- pydantic.Field(alias="authType"),
318
+ Optional[InputTcpjsonAuthenticationMethod], pydantic.Field(alias="authType")
338
319
  ] = InputTcpjsonAuthenticationMethod.MANUAL
339
320
  r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
340
321
 
@@ -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 Any, List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
@@ -26,14 +23,14 @@ class InputWefConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputWefMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputWefMode(str, Enum):
30
27
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
31
28
 
32
29
  SMART = "smart"
33
30
  ALWAYS = "always"
34
31
 
35
32
 
36
- class InputWefCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputWefCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -67,9 +64,7 @@ class InputWefPqTypedDict(TypedDict):
67
64
 
68
65
 
69
66
  class InputWefPq(BaseModel):
70
- mode: Annotated[
71
- Optional[InputWefMode], PlainValidator(validate_open_enum(False))
72
- ] = InputWefMode.ALWAYS
67
+ mode: Optional[InputWefMode] = InputWefMode.ALWAYS
73
68
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
74
69
 
75
70
  max_buffer_size: Annotated[
@@ -93,9 +88,7 @@ class InputWefPq(BaseModel):
93
88
  path: Optional[str] = "$CRIBL_HOME/state/queues"
94
89
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
95
90
 
96
- compress: Annotated[
97
- Optional[InputWefCompression], PlainValidator(validate_open_enum(False))
98
- ] = InputWefCompression.NONE
91
+ compress: Optional[InputWefCompression] = InputWefCompression.NONE
99
92
  r"""Codec to use to compress the persisted data"""
100
93
 
101
94
  pq_controls: Annotated[
@@ -103,21 +96,21 @@ class InputWefPq(BaseModel):
103
96
  ] = None
104
97
 
105
98
 
106
- class InputWefAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
99
+ class InputWefAuthenticationMethod(str, Enum):
107
100
  r"""How to authenticate incoming client connections"""
108
101
 
109
102
  CLIENT_CERT = "clientCert"
110
103
  KERBEROS = "kerberos"
111
104
 
112
105
 
113
- class InputWefMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
106
+ class InputWefMinimumTLSVersion(str, Enum):
114
107
  TL_SV1 = "TLSv1"
115
108
  TL_SV1_1 = "TLSv1.1"
116
109
  TL_SV1_2 = "TLSv1.2"
117
110
  TL_SV1_3 = "TLSv1.3"
118
111
 
119
112
 
120
- class InputWefMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
113
+ class InputWefMaximumTLSVersion(str, Enum):
121
114
  TL_SV1 = "TLSv1"
122
115
  TL_SV1_1 = "TLSv1.1"
123
116
  TL_SV1_2 = "TLSv1.2"
@@ -188,19 +181,11 @@ class MTLSSettings(BaseModel):
188
181
  r"""Regex matching allowable common names in peer certificates' subject attribute"""
189
182
 
190
183
  min_version: Annotated[
191
- Annotated[
192
- Optional[InputWefMinimumTLSVersion],
193
- PlainValidator(validate_open_enum(False)),
194
- ],
195
- pydantic.Field(alias="minVersion"),
184
+ Optional[InputWefMinimumTLSVersion], pydantic.Field(alias="minVersion")
196
185
  ] = None
197
186
 
198
187
  max_version: Annotated[
199
- Annotated[
200
- Optional[InputWefMaximumTLSVersion],
201
- PlainValidator(validate_open_enum(False)),
202
- ],
203
- pydantic.Field(alias="maxVersion"),
188
+ Optional[InputWefMaximumTLSVersion], pydantic.Field(alias="maxVersion")
204
189
  ] = None
205
190
 
206
191
  ocsp_check: Annotated[Optional[bool], pydantic.Field(alias="ocspCheck")] = False
@@ -216,14 +201,14 @@ class MTLSSettings(BaseModel):
216
201
  r"""If enabled, checks will fail on any OCSP error. Otherwise, checks will fail only when a certificate is revoked, ignoring other errors."""
217
202
 
218
203
 
219
- class InputWefFormat(str, Enum, metaclass=utils.OpenEnumMeta):
204
+ class InputWefFormat(str, Enum):
220
205
  r"""Content format in which the endpoint should deliver events"""
221
206
 
222
207
  RAW = "Raw"
223
208
  RENDERED_TEXT = "RenderedText"
224
209
 
225
210
 
226
- class QueryBuilderMode(str, Enum, metaclass=utils.OpenEnumMeta):
211
+ class QueryBuilderMode(str, Enum):
227
212
  SIMPLE = "simple"
228
213
  XML = "xml"
229
214
 
@@ -276,8 +261,7 @@ class Subscription(BaseModel):
276
261
  r"""Version UUID for this subscription. If any subscription parameters are modified, this value will change."""
277
262
 
278
263
  content_format: Annotated[
279
- Annotated[Optional[InputWefFormat], PlainValidator(validate_open_enum(False))],
280
- pydantic.Field(alias="contentFormat"),
264
+ Optional[InputWefFormat], pydantic.Field(alias="contentFormat")
281
265
  ] = InputWefFormat.RAW
282
266
  r"""Content format in which the endpoint should deliver events"""
283
267
 
@@ -306,10 +290,7 @@ class Subscription(BaseModel):
306
290
  r"""The RFC-3066 locale the Windows clients should use when sending events. Defaults to \"en-US\"."""
307
291
 
308
292
  query_selector: Annotated[
309
- Annotated[
310
- Optional[QueryBuilderMode], PlainValidator(validate_open_enum(False))
311
- ],
312
- pydantic.Field(alias="querySelector"),
293
+ Optional[QueryBuilderMode], pydantic.Field(alias="querySelector")
313
294
  ] = QueryBuilderMode.SIMPLE
314
295
 
315
296
  metadata: Optional[List[SubscriptionMetadatum]] = None
@@ -429,11 +410,7 @@ class InputWef(BaseModel):
429
410
  r"""Port to listen on"""
430
411
 
431
412
  auth_method: Annotated[
432
- Annotated[
433
- Optional[InputWefAuthenticationMethod],
434
- PlainValidator(validate_open_enum(False)),
435
- ],
436
- pydantic.Field(alias="authMethod"),
413
+ Optional[InputWefAuthenticationMethod], pydantic.Field(alias="authMethod")
437
414
  ] = InputWefAuthenticationMethod.CLIENT_CERT
438
415
  r"""How to authenticate incoming client connections"""
439
416