cribl-control-plane 0.0.15__py3-none-any.whl → 0.0.17__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 (144) hide show
  1. cribl_control_plane/_version.py +3 -3
  2. cribl_control_plane/{outputs.py → destinations.py} +69 -71
  3. cribl_control_plane/errors/healthstatus_error.py +2 -8
  4. cribl_control_plane/models/__init__.py +5347 -115
  5. cribl_control_plane/models/createinputop.py +18216 -2
  6. cribl_control_plane/models/createoutputop.py +18417 -4
  7. cribl_control_plane/models/createoutputtestbyidop.py +2 -2
  8. cribl_control_plane/models/deleteoutputbyidop.py +2 -2
  9. cribl_control_plane/models/deleteoutputpqbyidop.py +2 -2
  10. cribl_control_plane/models/getoutputbyidop.py +2 -2
  11. cribl_control_plane/models/getoutputpqbyidop.py +2 -2
  12. cribl_control_plane/models/getoutputsamplesbyidop.py +2 -2
  13. cribl_control_plane/models/healthstatus.py +4 -7
  14. cribl_control_plane/models/inputappscope.py +16 -36
  15. cribl_control_plane/models/inputazureblob.py +8 -19
  16. cribl_control_plane/models/inputcollection.py +6 -15
  17. cribl_control_plane/models/inputconfluentcloud.py +22 -45
  18. cribl_control_plane/models/inputcribl.py +6 -13
  19. cribl_control_plane/models/inputcriblhttp.py +12 -27
  20. cribl_control_plane/models/inputcribllakehttp.py +14 -26
  21. cribl_control_plane/models/inputcriblmetrics.py +6 -14
  22. cribl_control_plane/models/inputcribltcp.py +12 -27
  23. cribl_control_plane/models/inputcrowdstrike.py +12 -28
  24. cribl_control_plane/models/inputdatadogagent.py +12 -28
  25. cribl_control_plane/models/inputdatagen.py +6 -13
  26. cribl_control_plane/models/inputedgeprometheus.py +33 -64
  27. cribl_control_plane/models/inputelastic.py +18 -44
  28. cribl_control_plane/models/inputeventhub.py +10 -19
  29. cribl_control_plane/models/inputexec.py +8 -16
  30. cribl_control_plane/models/inputfile.py +8 -17
  31. cribl_control_plane/models/inputfirehose.py +12 -27
  32. cribl_control_plane/models/inputgooglepubsub.py +10 -23
  33. cribl_control_plane/models/inputgrafana_union.py +39 -81
  34. cribl_control_plane/models/inputhttp.py +12 -27
  35. cribl_control_plane/models/inputhttpraw.py +12 -27
  36. cribl_control_plane/models/inputjournalfiles.py +8 -16
  37. cribl_control_plane/models/inputkafka.py +18 -45
  38. cribl_control_plane/models/inputkinesis.py +18 -42
  39. cribl_control_plane/models/inputkubeevents.py +6 -13
  40. cribl_control_plane/models/inputkubelogs.py +10 -18
  41. cribl_control_plane/models/inputkubemetrics.py +10 -18
  42. cribl_control_plane/models/inputloki.py +14 -33
  43. cribl_control_plane/models/inputmetrics.py +10 -25
  44. cribl_control_plane/models/inputmodeldriventelemetry.py +14 -33
  45. cribl_control_plane/models/inputmsk.py +20 -52
  46. cribl_control_plane/models/inputnetflow.py +8 -15
  47. cribl_control_plane/models/inputoffice365mgmt.py +18 -37
  48. cribl_control_plane/models/inputoffice365msgtrace.py +20 -41
  49. cribl_control_plane/models/inputoffice365service.py +20 -41
  50. cribl_control_plane/models/inputopentelemetry.py +20 -42
  51. cribl_control_plane/models/inputprometheus.py +22 -54
  52. cribl_control_plane/models/inputprometheusrw.py +14 -34
  53. cribl_control_plane/models/inputrawudp.py +8 -15
  54. cribl_control_plane/models/inputs3.py +10 -23
  55. cribl_control_plane/models/inputs3inventory.py +12 -28
  56. cribl_control_plane/models/inputsecuritylake.py +12 -29
  57. cribl_control_plane/models/inputsnmp.py +10 -20
  58. cribl_control_plane/models/inputsplunk.py +16 -37
  59. cribl_control_plane/models/inputsplunkhec.py +14 -33
  60. cribl_control_plane/models/inputsplunksearch.py +18 -37
  61. cribl_control_plane/models/inputsqs.py +14 -31
  62. cribl_control_plane/models/inputsyslog_union.py +29 -53
  63. cribl_control_plane/models/inputsystemmetrics.py +26 -50
  64. cribl_control_plane/models/inputsystemstate.py +10 -18
  65. cribl_control_plane/models/inputtcp.py +14 -33
  66. cribl_control_plane/models/inputtcpjson.py +14 -33
  67. cribl_control_plane/models/inputwef.py +22 -45
  68. cribl_control_plane/models/inputwindowsmetrics.py +26 -46
  69. cribl_control_plane/models/inputwineventlogs.py +12 -22
  70. cribl_control_plane/models/inputwiz.py +12 -25
  71. cribl_control_plane/models/inputzscalerhec.py +14 -33
  72. cribl_control_plane/models/listoutputop.py +2 -2
  73. cribl_control_plane/models/output.py +3 -6
  74. cribl_control_plane/models/outputazureblob.py +20 -52
  75. cribl_control_plane/models/outputazuredataexplorer.py +30 -77
  76. cribl_control_plane/models/outputazureeventhub.py +20 -44
  77. cribl_control_plane/models/outputazurelogs.py +14 -37
  78. cribl_control_plane/models/outputclickhouse.py +22 -59
  79. cribl_control_plane/models/outputcloudwatch.py +12 -33
  80. cribl_control_plane/models/outputconfluentcloud.py +32 -75
  81. cribl_control_plane/models/outputcriblhttp.py +18 -46
  82. cribl_control_plane/models/outputcribllake.py +18 -48
  83. cribl_control_plane/models/outputcribltcp.py +20 -47
  84. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +16 -54
  85. cribl_control_plane/models/outputdatadog.py +22 -50
  86. cribl_control_plane/models/outputdataset.py +20 -48
  87. cribl_control_plane/models/outputdefault.py +2 -5
  88. cribl_control_plane/models/outputdevnull.py +2 -5
  89. cribl_control_plane/models/outputdiskspool.py +4 -9
  90. cribl_control_plane/models/outputdls3.py +26 -72
  91. cribl_control_plane/models/outputdynatracehttp.py +22 -57
  92. cribl_control_plane/models/outputdynatraceotlp.py +24 -59
  93. cribl_control_plane/models/outputelastic.py +20 -45
  94. cribl_control_plane/models/outputelasticcloud.py +14 -40
  95. cribl_control_plane/models/outputexabeam.py +12 -33
  96. cribl_control_plane/models/outputfilesystem.py +16 -41
  97. cribl_control_plane/models/outputgooglechronicle.py +18 -54
  98. cribl_control_plane/models/outputgooglecloudlogging.py +16 -46
  99. cribl_control_plane/models/outputgooglecloudstorage.py +26 -71
  100. cribl_control_plane/models/outputgooglepubsub.py +16 -39
  101. cribl_control_plane/models/{outputgrafanacloud_union.py → outputgrafanacloud.py} +49 -110
  102. cribl_control_plane/models/outputgraphite.py +16 -35
  103. cribl_control_plane/models/outputhoneycomb.py +14 -37
  104. cribl_control_plane/models/outputhumiohec.py +18 -47
  105. cribl_control_plane/models/outputinfluxdb.py +18 -44
  106. cribl_control_plane/models/outputkafka.py +28 -73
  107. cribl_control_plane/models/outputkinesis.py +18 -44
  108. cribl_control_plane/models/outputloki.py +18 -43
  109. cribl_control_plane/models/outputminio.py +26 -69
  110. cribl_control_plane/models/outputmsk.py +30 -81
  111. cribl_control_plane/models/outputnetflow.py +2 -5
  112. cribl_control_plane/models/outputnewrelic.py +20 -45
  113. cribl_control_plane/models/outputnewrelicevents.py +16 -45
  114. cribl_control_plane/models/outputopentelemetry.py +28 -69
  115. cribl_control_plane/models/outputprometheus.py +14 -37
  116. cribl_control_plane/models/outputring.py +10 -21
  117. cribl_control_plane/models/outputrouter.py +2 -5
  118. cribl_control_plane/models/outputs3.py +28 -72
  119. cribl_control_plane/models/outputsecuritylake.py +20 -56
  120. cribl_control_plane/models/outputsentinel.py +20 -49
  121. cribl_control_plane/models/outputsentineloneaisiem.py +20 -54
  122. cribl_control_plane/models/outputservicenow.py +26 -64
  123. cribl_control_plane/models/outputsignalfx.py +16 -39
  124. cribl_control_plane/models/outputsnmp.py +2 -5
  125. cribl_control_plane/models/outputsns.py +16 -40
  126. cribl_control_plane/models/outputsplunk.py +26 -64
  127. cribl_control_plane/models/outputsplunkhec.py +14 -37
  128. cribl_control_plane/models/outputsplunklb.py +36 -83
  129. cribl_control_plane/models/outputsqs.py +18 -45
  130. cribl_control_plane/models/outputstatsd.py +16 -34
  131. cribl_control_plane/models/outputstatsdext.py +14 -33
  132. cribl_control_plane/models/outputsumologic.py +14 -37
  133. cribl_control_plane/models/outputsyslog.py +26 -60
  134. cribl_control_plane/models/outputtcpjson.py +22 -54
  135. cribl_control_plane/models/outputwavefront.py +14 -37
  136. cribl_control_plane/models/outputwebhook.py +24 -60
  137. cribl_control_plane/models/outputxsiam.py +16 -37
  138. cribl_control_plane/models/updateoutputbyidop.py +4 -4
  139. cribl_control_plane/sdk.py +3 -5
  140. cribl_control_plane/sources.py +8 -10
  141. {cribl_control_plane-0.0.15.dist-info → cribl_control_plane-0.0.17.dist-info}/METADATA +13 -13
  142. cribl_control_plane-0.0.17.dist-info/RECORD +215 -0
  143. cribl_control_plane-0.0.15.dist-info/RECORD +0 -215
  144. {cribl_control_plane-0.0.15.dist-info → cribl_control_plane-0.0.17.dist-info}/WHEEL +0 -0
@@ -1,17 +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
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
 
13
10
 
14
- class InputLokiType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputLokiType(str, Enum):
15
12
  LOKI = "loki"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputLokiConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputLokiMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputLokiMode(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 InputLokiCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputLokiCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputLokiPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputLokiPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputLokiMode], PlainValidator(validate_open_enum(False))
63
- ] = InputLokiMode.ALWAYS
58
+ mode: Optional[InputLokiMode] = InputLokiMode.ALWAYS
64
59
  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."""
65
60
 
66
61
  max_buffer_size: Annotated[
@@ -84,20 +79,18 @@ class InputLokiPq(BaseModel):
84
79
  path: Optional[str] = "$CRIBL_HOME/state/queues"
85
80
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
86
81
 
87
- compress: Annotated[
88
- Optional[InputLokiCompression], PlainValidator(validate_open_enum(False))
89
- ] = InputLokiCompression.NONE
82
+ compress: Optional[InputLokiCompression] = InputLokiCompression.NONE
90
83
  r"""Codec to use to compress the persisted data"""
91
84
 
92
85
 
93
- class InputLokiMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
86
+ class InputLokiMinimumTLSVersion(str, Enum):
94
87
  TL_SV1 = "TLSv1"
95
88
  TL_SV1_1 = "TLSv1.1"
96
89
  TL_SV1_2 = "TLSv1.2"
97
90
  TL_SV1_3 = "TLSv1.3"
98
91
 
99
92
 
100
- class InputLokiMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
93
+ class InputLokiMaximumTLSVersion(str, Enum):
101
94
  TL_SV1 = "TLSv1"
102
95
  TL_SV1_1 = "TLSv1.1"
103
96
  TL_SV1_2 = "TLSv1.2"
@@ -156,23 +149,15 @@ class InputLokiTLSSettingsServerSide(BaseModel):
156
149
  ] = None
157
150
 
158
151
  min_version: Annotated[
159
- Annotated[
160
- Optional[InputLokiMinimumTLSVersion],
161
- PlainValidator(validate_open_enum(False)),
162
- ],
163
- pydantic.Field(alias="minVersion"),
152
+ Optional[InputLokiMinimumTLSVersion], pydantic.Field(alias="minVersion")
164
153
  ] = None
165
154
 
166
155
  max_version: Annotated[
167
- Annotated[
168
- Optional[InputLokiMaximumTLSVersion],
169
- PlainValidator(validate_open_enum(False)),
170
- ],
171
- pydantic.Field(alias="maxVersion"),
156
+ Optional[InputLokiMaximumTLSVersion], pydantic.Field(alias="maxVersion")
172
157
  ] = None
173
158
 
174
159
 
175
- class InputLokiAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
160
+ class InputLokiAuthenticationType(str, Enum):
176
161
  r"""Loki logs authentication type"""
177
162
 
178
163
  NONE = "none"
@@ -227,11 +212,11 @@ class InputLokiOauthHeader(BaseModel):
227
212
 
228
213
 
229
214
  class InputLokiTypedDict(TypedDict):
230
- type: InputLokiType
231
215
  port: float
232
216
  r"""Port to listen on"""
233
217
  id: NotRequired[str]
234
218
  r"""Unique ID for this input"""
219
+ type: NotRequired[InputLokiType]
235
220
  disabled: NotRequired[bool]
236
221
  pipeline: NotRequired[str]
237
222
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -305,14 +290,14 @@ class InputLokiTypedDict(TypedDict):
305
290
 
306
291
 
307
292
  class InputLoki(BaseModel):
308
- type: Annotated[InputLokiType, PlainValidator(validate_open_enum(False))]
309
-
310
293
  port: float
311
294
  r"""Port to listen on"""
312
295
 
313
296
  id: Optional[str] = None
314
297
  r"""Unique ID for this input"""
315
298
 
299
+ type: Optional[InputLokiType] = None
300
+
316
301
  disabled: Optional[bool] = False
317
302
 
318
303
  pipeline: Optional[str] = None
@@ -403,11 +388,7 @@ class InputLoki(BaseModel):
403
388
  r"""Absolute path on which to listen for Loki logs requests. Defaults to /loki/api/v1/push, which will (in this example) expand as: 'http://<your‑upstream‑URL>:<your‑port>/loki/api/v1/push'."""
404
389
 
405
390
  auth_type: Annotated[
406
- Annotated[
407
- Optional[InputLokiAuthenticationType],
408
- PlainValidator(validate_open_enum(False)),
409
- ],
410
- pydantic.Field(alias="authType"),
391
+ Optional[InputLokiAuthenticationType], pydantic.Field(alias="authType")
411
392
  ] = InputLokiAuthenticationType.NONE
412
393
  r"""Loki logs authentication type"""
413
394
 
@@ -1,17 +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
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
 
13
10
 
14
- class InputMetricsType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputMetricsType(str, Enum):
15
12
  METRICS = "metrics"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputMetricsConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputMetricsMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputMetricsMode(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 InputMetricsCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputMetricsCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputMetricsPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputMetricsPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputMetricsMode], PlainValidator(validate_open_enum(False))
63
- ] = InputMetricsMode.ALWAYS
58
+ mode: Optional[InputMetricsMode] = InputMetricsMode.ALWAYS
64
59
  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."""
65
60
 
66
61
  max_buffer_size: Annotated[
@@ -84,20 +79,18 @@ class InputMetricsPq(BaseModel):
84
79
  path: Optional[str] = "$CRIBL_HOME/state/queues"
85
80
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
86
81
 
87
- compress: Annotated[
88
- Optional[InputMetricsCompression], PlainValidator(validate_open_enum(False))
89
- ] = InputMetricsCompression.NONE
82
+ compress: Optional[InputMetricsCompression] = InputMetricsCompression.NONE
90
83
  r"""Codec to use to compress the persisted data"""
91
84
 
92
85
 
93
- class InputMetricsMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
86
+ class InputMetricsMinimumTLSVersion(str, Enum):
94
87
  TL_SV1 = "TLSv1"
95
88
  TL_SV1_1 = "TLSv1.1"
96
89
  TL_SV1_2 = "TLSv1.2"
97
90
  TL_SV1_3 = "TLSv1.3"
98
91
 
99
92
 
100
- class InputMetricsMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
93
+ class InputMetricsMaximumTLSVersion(str, Enum):
101
94
  TL_SV1 = "TLSv1"
102
95
  TL_SV1_1 = "TLSv1.1"
103
96
  TL_SV1_2 = "TLSv1.2"
@@ -156,19 +149,11 @@ class InputMetricsTLSSettingsServerSide(BaseModel):
156
149
  ] = None
157
150
 
158
151
  min_version: Annotated[
159
- Annotated[
160
- Optional[InputMetricsMinimumTLSVersion],
161
- PlainValidator(validate_open_enum(False)),
162
- ],
163
- pydantic.Field(alias="minVersion"),
152
+ Optional[InputMetricsMinimumTLSVersion], pydantic.Field(alias="minVersion")
164
153
  ] = None
165
154
 
166
155
  max_version: Annotated[
167
- Annotated[
168
- Optional[InputMetricsMaximumTLSVersion],
169
- PlainValidator(validate_open_enum(False)),
170
- ],
171
- pydantic.Field(alias="maxVersion"),
156
+ Optional[InputMetricsMaximumTLSVersion], pydantic.Field(alias="maxVersion")
172
157
  ] = None
173
158
 
174
159
 
@@ -224,7 +209,7 @@ class InputMetricsTypedDict(TypedDict):
224
209
 
225
210
 
226
211
  class InputMetrics(BaseModel):
227
- type: Annotated[InputMetricsType, PlainValidator(validate_open_enum(False))]
212
+ type: InputMetricsType
228
213
 
229
214
  id: Optional[str] = None
230
215
  r"""Unique ID for this input"""
@@ -1,17 +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
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
 
13
10
 
14
- class InputModelDrivenTelemetryType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputModelDrivenTelemetryType(str, Enum):
15
12
  MODEL_DRIVEN_TELEMETRY = "model_driven_telemetry"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputModelDrivenTelemetryConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputModelDrivenTelemetryMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputModelDrivenTelemetryMode(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 InputModelDrivenTelemetryCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputModelDrivenTelemetryCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,10 +55,7 @@ class InputModelDrivenTelemetryPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputModelDrivenTelemetryPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputModelDrivenTelemetryMode],
63
- PlainValidator(validate_open_enum(False)),
64
- ] = InputModelDrivenTelemetryMode.ALWAYS
58
+ mode: Optional[InputModelDrivenTelemetryMode] = InputModelDrivenTelemetryMode.ALWAYS
65
59
  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."""
66
60
 
67
61
  max_buffer_size: Annotated[
@@ -85,25 +79,20 @@ class InputModelDrivenTelemetryPq(BaseModel):
85
79
  path: Optional[str] = "$CRIBL_HOME/state/queues"
86
80
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
87
81
 
88
- compress: Annotated[
89
- Optional[InputModelDrivenTelemetryCompression],
90
- PlainValidator(validate_open_enum(False)),
91
- ] = InputModelDrivenTelemetryCompression.NONE
82
+ compress: Optional[InputModelDrivenTelemetryCompression] = (
83
+ InputModelDrivenTelemetryCompression.NONE
84
+ )
92
85
  r"""Codec to use to compress the persisted data"""
93
86
 
94
87
 
95
- class InputModelDrivenTelemetryMinimumTLSVersion(
96
- str, Enum, metaclass=utils.OpenEnumMeta
97
- ):
88
+ class InputModelDrivenTelemetryMinimumTLSVersion(str, Enum):
98
89
  TL_SV1 = "TLSv1"
99
90
  TL_SV1_1 = "TLSv1.1"
100
91
  TL_SV1_2 = "TLSv1.2"
101
92
  TL_SV1_3 = "TLSv1.3"
102
93
 
103
94
 
104
- class InputModelDrivenTelemetryMaximumTLSVersion(
105
- str, Enum, metaclass=utils.OpenEnumMeta
106
- ):
95
+ class InputModelDrivenTelemetryMaximumTLSVersion(str, Enum):
107
96
  TL_SV1 = "TLSv1"
108
97
  TL_SV1_1 = "TLSv1.1"
109
98
  TL_SV1_2 = "TLSv1.2"
@@ -157,18 +146,12 @@ class InputModelDrivenTelemetryTLSSettingsServerSide(BaseModel):
157
146
  ] = None
158
147
 
159
148
  min_version: Annotated[
160
- Annotated[
161
- Optional[InputModelDrivenTelemetryMinimumTLSVersion],
162
- PlainValidator(validate_open_enum(False)),
163
- ],
149
+ Optional[InputModelDrivenTelemetryMinimumTLSVersion],
164
150
  pydantic.Field(alias="minVersion"),
165
151
  ] = None
166
152
 
167
153
  max_version: Annotated[
168
- Annotated[
169
- Optional[InputModelDrivenTelemetryMaximumTLSVersion],
170
- PlainValidator(validate_open_enum(False)),
171
- ],
154
+ Optional[InputModelDrivenTelemetryMaximumTLSVersion],
172
155
  pydantic.Field(alias="maxVersion"),
173
156
  ] = None
174
157
 
@@ -187,9 +170,9 @@ class InputModelDrivenTelemetryMetadatum(BaseModel):
187
170
 
188
171
 
189
172
  class InputModelDrivenTelemetryTypedDict(TypedDict):
190
- type: InputModelDrivenTelemetryType
191
173
  id: NotRequired[str]
192
174
  r"""Unique ID for this input"""
175
+ type: NotRequired[InputModelDrivenTelemetryType]
193
176
  disabled: NotRequired[bool]
194
177
  pipeline: NotRequired[str]
195
178
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -219,13 +202,11 @@ class InputModelDrivenTelemetryTypedDict(TypedDict):
219
202
 
220
203
 
221
204
  class InputModelDrivenTelemetry(BaseModel):
222
- type: Annotated[
223
- InputModelDrivenTelemetryType, PlainValidator(validate_open_enum(False))
224
- ]
225
-
226
205
  id: Optional[str] = None
227
206
  r"""Unique ID for this input"""
228
207
 
208
+ type: Optional[InputModelDrivenTelemetryType] = None
209
+
229
210
  disabled: Optional[bool] = False
230
211
 
231
212
  pipeline: Optional[str] = None
@@ -1,17 +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
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
 
13
10
 
14
- class InputMskType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputMskType(str, Enum):
15
12
  MSK = "msk"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputMskConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputMskMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputMskMode(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 InputMskCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputMskCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputMskPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputMskPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputMskMode], PlainValidator(validate_open_enum(False))
63
- ] = InputMskMode.ALWAYS
58
+ mode: Optional[InputMskMode] = InputMskMode.ALWAYS
64
59
  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."""
65
60
 
66
61
  max_buffer_size: Annotated[
@@ -84,9 +79,7 @@ class InputMskPq(BaseModel):
84
79
  path: Optional[str] = "$CRIBL_HOME/state/queues"
85
80
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
86
81
 
87
- compress: Annotated[
88
- Optional[InputMskCompression], PlainValidator(validate_open_enum(False))
89
- ] = InputMskCompression.NONE
82
+ compress: Optional[InputMskCompression] = InputMskCompression.NONE
90
83
  r"""Codec to use to compress the persisted data"""
91
84
 
92
85
 
@@ -122,18 +115,14 @@ class InputMskAuth(BaseModel):
122
115
  r"""Select or create a secret that references your credentials"""
123
116
 
124
117
 
125
- class InputMskKafkaSchemaRegistryMinimumTLSVersion(
126
- str, Enum, metaclass=utils.OpenEnumMeta
127
- ):
118
+ class InputMskKafkaSchemaRegistryMinimumTLSVersion(str, Enum):
128
119
  TL_SV1 = "TLSv1"
129
120
  TL_SV1_1 = "TLSv1.1"
130
121
  TL_SV1_2 = "TLSv1.2"
131
122
  TL_SV1_3 = "TLSv1.3"
132
123
 
133
124
 
134
- class InputMskKafkaSchemaRegistryMaximumTLSVersion(
135
- str, Enum, metaclass=utils.OpenEnumMeta
136
- ):
125
+ class InputMskKafkaSchemaRegistryMaximumTLSVersion(str, Enum):
137
126
  TL_SV1 = "TLSv1"
138
127
  TL_SV1_1 = "TLSv1.1"
139
128
  TL_SV1_2 = "TLSv1.2"
@@ -193,18 +182,12 @@ class InputMskKafkaSchemaRegistryTLSSettingsClientSide(BaseModel):
193
182
  r"""Passphrase to use to decrypt private key"""
194
183
 
195
184
  min_version: Annotated[
196
- Annotated[
197
- Optional[InputMskKafkaSchemaRegistryMinimumTLSVersion],
198
- PlainValidator(validate_open_enum(False)),
199
- ],
185
+ Optional[InputMskKafkaSchemaRegistryMinimumTLSVersion],
200
186
  pydantic.Field(alias="minVersion"),
201
187
  ] = None
202
188
 
203
189
  max_version: Annotated[
204
- Annotated[
205
- Optional[InputMskKafkaSchemaRegistryMaximumTLSVersion],
206
- PlainValidator(validate_open_enum(False)),
207
- ],
190
+ Optional[InputMskKafkaSchemaRegistryMaximumTLSVersion],
208
191
  pydantic.Field(alias="maxVersion"),
209
192
  ] = None
210
193
 
@@ -251,7 +234,7 @@ class InputMskKafkaSchemaRegistryAuthentication(BaseModel):
251
234
  tls: Optional[InputMskKafkaSchemaRegistryTLSSettingsClientSide] = None
252
235
 
253
236
 
254
- class InputMskAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
237
+ class InputMskAuthenticationMethod(str, Enum):
255
238
  r"""AWS authentication method. Choose Auto to use IAM roles."""
256
239
 
257
240
  AUTO = "auto"
@@ -259,21 +242,21 @@ class InputMskAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
259
242
  SECRET = "secret"
260
243
 
261
244
 
262
- class InputMskSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
245
+ class InputMskSignatureVersion(str, Enum):
263
246
  r"""Signature version to use for signing MSK cluster requests"""
264
247
 
265
248
  V2 = "v2"
266
249
  V4 = "v4"
267
250
 
268
251
 
269
- class InputMskMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
252
+ class InputMskMinimumTLSVersion(str, Enum):
270
253
  TL_SV1 = "TLSv1"
271
254
  TL_SV1_1 = "TLSv1.1"
272
255
  TL_SV1_2 = "TLSv1.2"
273
256
  TL_SV1_3 = "TLSv1.3"
274
257
 
275
258
 
276
- class InputMskMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
259
+ class InputMskMaximumTLSVersion(str, Enum):
277
260
  TL_SV1 = "TLSv1"
278
261
  TL_SV1_1 = "TLSv1.1"
279
262
  TL_SV1_2 = "TLSv1.2"
@@ -333,24 +316,15 @@ class InputMskTLSSettingsClientSide(BaseModel):
333
316
  r"""Passphrase to use to decrypt private key"""
334
317
 
335
318
  min_version: Annotated[
336
- Annotated[
337
- Optional[InputMskMinimumTLSVersion],
338
- PlainValidator(validate_open_enum(False)),
339
- ],
340
- pydantic.Field(alias="minVersion"),
319
+ Optional[InputMskMinimumTLSVersion], pydantic.Field(alias="minVersion")
341
320
  ] = None
342
321
 
343
322
  max_version: Annotated[
344
- Annotated[
345
- Optional[InputMskMaximumTLSVersion],
346
- PlainValidator(validate_open_enum(False)),
347
- ],
348
- pydantic.Field(alias="maxVersion"),
323
+ Optional[InputMskMaximumTLSVersion], pydantic.Field(alias="maxVersion")
349
324
  ] = None
350
325
 
351
326
 
352
327
  class InputMskTypedDict(TypedDict):
353
- type: InputMskType
354
328
  brokers: List[str]
355
329
  r"""Enter each Kafka bootstrap server you want to use. Specify the hostname and port (such as mykafkabroker:9092) or just the hostname (in which case @{product} will assign port 9092)."""
356
330
  topics: List[str]
@@ -359,6 +333,7 @@ class InputMskTypedDict(TypedDict):
359
333
  r"""Region where the MSK cluster is located"""
360
334
  id: NotRequired[str]
361
335
  r"""Unique ID for this input"""
336
+ type: NotRequired[InputMskType]
362
337
  disabled: NotRequired[bool]
363
338
  pipeline: NotRequired[str]
364
339
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -452,8 +427,6 @@ class InputMskTypedDict(TypedDict):
452
427
 
453
428
 
454
429
  class InputMsk(BaseModel):
455
- type: Annotated[InputMskType, PlainValidator(validate_open_enum(False))]
456
-
457
430
  brokers: List[str]
458
431
  r"""Enter each Kafka bootstrap server you want to use. Specify the hostname and port (such as mykafkabroker:9092) or just the hostname (in which case @{product} will assign port 9092)."""
459
432
 
@@ -466,6 +439,8 @@ class InputMsk(BaseModel):
466
439
  id: Optional[str] = None
467
440
  r"""Unique ID for this input"""
468
441
 
442
+ type: Optional[InputMskType] = None
443
+
469
444
  disabled: Optional[bool] = False
470
445
 
471
446
  pipeline: Optional[str] = None
@@ -567,10 +542,7 @@ class InputMsk(BaseModel):
567
542
  r"""Specifies a time window during which @{product} can reauthenticate if needed. Creates the window measuring backward from the moment when credentials are set to expire."""
568
543
 
569
544
  aws_authentication_method: Annotated[
570
- Annotated[
571
- Optional[InputMskAuthenticationMethod],
572
- PlainValidator(validate_open_enum(False)),
573
- ],
545
+ Optional[InputMskAuthenticationMethod],
574
546
  pydantic.Field(alias="awsAuthenticationMethod"),
575
547
  ] = InputMskAuthenticationMethod.AUTO
576
548
  r"""AWS authentication method. Choose Auto to use IAM roles."""
@@ -583,11 +555,7 @@ class InputMsk(BaseModel):
583
555
  r"""MSK cluster service endpoint. If empty, defaults to the AWS Region-specific endpoint. Otherwise, it must point to MSK cluster-compatible endpoint."""
584
556
 
585
557
  signature_version: Annotated[
586
- Annotated[
587
- Optional[InputMskSignatureVersion],
588
- PlainValidator(validate_open_enum(False)),
589
- ],
590
- pydantic.Field(alias="signatureVersion"),
558
+ Optional[InputMskSignatureVersion], pydantic.Field(alias="signatureVersion")
591
559
  ] = InputMskSignatureVersion.V4
592
560
  r"""Signature version to use for signing MSK cluster requests"""
593
561
 
@@ -1,17 +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
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
 
13
10
 
14
- class InputNetflowType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputNetflowType(str, Enum):
15
12
  NETFLOW = "netflow"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputNetflowConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputNetflowMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputNetflowMode(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 InputNetflowCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputNetflowCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputNetflowPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputNetflowPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputNetflowMode], PlainValidator(validate_open_enum(False))
63
- ] = InputNetflowMode.ALWAYS
58
+ mode: Optional[InputNetflowMode] = InputNetflowMode.ALWAYS
64
59
  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."""
65
60
 
66
61
  max_buffer_size: Annotated[
@@ -84,9 +79,7 @@ class InputNetflowPq(BaseModel):
84
79
  path: Optional[str] = "$CRIBL_HOME/state/queues"
85
80
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
86
81
 
87
- compress: Annotated[
88
- Optional[InputNetflowCompression], PlainValidator(validate_open_enum(False))
89
- ] = InputNetflowCompression.NONE
82
+ compress: Optional[InputNetflowCompression] = InputNetflowCompression.NONE
90
83
  r"""Codec to use to compress the persisted data"""
91
84
 
92
85
 
@@ -104,9 +97,9 @@ class InputNetflowMetadatum(BaseModel):
104
97
 
105
98
 
106
99
  class InputNetflowTypedDict(TypedDict):
107
- type: InputNetflowType
108
100
  id: NotRequired[str]
109
101
  r"""Unique ID for this input"""
102
+ type: NotRequired[InputNetflowType]
110
103
  disabled: NotRequired[bool]
111
104
  pipeline: NotRequired[str]
112
105
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -147,11 +140,11 @@ class InputNetflowTypedDict(TypedDict):
147
140
 
148
141
 
149
142
  class InputNetflow(BaseModel):
150
- type: Annotated[InputNetflowType, PlainValidator(validate_open_enum(False))]
151
-
152
143
  id: Optional[str] = None
153
144
  r"""Unique ID for this input"""
154
145
 
146
+ type: Optional[InputNetflowType] = None
147
+
155
148
  disabled: Optional[bool] = False
156
149
 
157
150
  pipeline: Optional[str] = None