cribl-control-plane 0.0.49__py3-none-any.whl → 0.1.0b1__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 (173) hide show
  1. cribl_control_plane/_version.py +4 -6
  2. cribl_control_plane/errors/healthstatus_error.py +8 -2
  3. cribl_control_plane/health.py +6 -2
  4. cribl_control_plane/models/__init__.py +68 -30
  5. cribl_control_plane/models/cacheconnection.py +10 -2
  6. cribl_control_plane/models/cacheconnectionbackfillstatus.py +2 -1
  7. cribl_control_plane/models/cloudprovider.py +2 -1
  8. cribl_control_plane/models/configgroup.py +7 -2
  9. cribl_control_plane/models/configgroupcloud.py +6 -2
  10. cribl_control_plane/models/createconfiggroupbyproductop.py +8 -2
  11. cribl_control_plane/models/createinputhectokenbyidop.py +6 -5
  12. cribl_control_plane/models/createversionpushop.py +5 -5
  13. cribl_control_plane/models/cribllakedataset.py +8 -2
  14. cribl_control_plane/models/datasetmetadata.py +8 -2
  15. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +7 -2
  16. cribl_control_plane/models/error.py +16 -0
  17. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +4 -2
  18. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +4 -2
  19. cribl_control_plane/models/getconfiggroupbyproductandidop.py +3 -1
  20. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +7 -2
  21. cribl_control_plane/models/gethealthinfoop.py +17 -0
  22. cribl_control_plane/models/getsummaryop.py +7 -2
  23. cribl_control_plane/models/getversionshowop.py +6 -5
  24. cribl_control_plane/models/gitshowresult.py +19 -0
  25. cribl_control_plane/models/hbcriblinfo.py +24 -3
  26. cribl_control_plane/models/healthstatus.py +7 -4
  27. cribl_control_plane/models/heartbeatmetadata.py +3 -0
  28. cribl_control_plane/models/inputappscope.py +34 -14
  29. cribl_control_plane/models/inputazureblob.py +17 -6
  30. cribl_control_plane/models/inputcollection.py +11 -4
  31. cribl_control_plane/models/inputconfluentcloud.py +41 -32
  32. cribl_control_plane/models/inputcribl.py +11 -4
  33. cribl_control_plane/models/inputcriblhttp.py +23 -8
  34. cribl_control_plane/models/inputcribllakehttp.py +22 -10
  35. cribl_control_plane/models/inputcriblmetrics.py +12 -4
  36. cribl_control_plane/models/inputcribltcp.py +23 -8
  37. cribl_control_plane/models/inputcrowdstrike.py +26 -10
  38. cribl_control_plane/models/inputdatadogagent.py +24 -8
  39. cribl_control_plane/models/inputdatagen.py +11 -4
  40. cribl_control_plane/models/inputedgeprometheus.py +58 -24
  41. cribl_control_plane/models/inputelastic.py +40 -14
  42. cribl_control_plane/models/inputeventhub.py +15 -6
  43. cribl_control_plane/models/inputexec.py +14 -6
  44. cribl_control_plane/models/inputfile.py +15 -6
  45. cribl_control_plane/models/inputfirehose.py +23 -8
  46. cribl_control_plane/models/inputgooglepubsub.py +19 -6
  47. cribl_control_plane/models/inputgrafana.py +67 -24
  48. cribl_control_plane/models/inputhttp.py +23 -8
  49. cribl_control_plane/models/inputhttpraw.py +23 -8
  50. cribl_control_plane/models/inputjournalfiles.py +12 -4
  51. cribl_control_plane/models/inputkafka.py +41 -28
  52. cribl_control_plane/models/inputkinesis.py +38 -14
  53. cribl_control_plane/models/inputkubeevents.py +11 -4
  54. cribl_control_plane/models/inputkubelogs.py +16 -8
  55. cribl_control_plane/models/inputkubemetrics.py +16 -8
  56. cribl_control_plane/models/inputloki.py +29 -10
  57. cribl_control_plane/models/inputmetrics.py +23 -8
  58. cribl_control_plane/models/inputmodeldriventelemetry.py +32 -10
  59. cribl_control_plane/models/inputmsk.py +48 -30
  60. cribl_control_plane/models/inputnetflow.py +11 -4
  61. cribl_control_plane/models/inputoffice365mgmt.py +33 -14
  62. cribl_control_plane/models/inputoffice365msgtrace.py +35 -16
  63. cribl_control_plane/models/inputoffice365service.py +35 -16
  64. cribl_control_plane/models/inputopentelemetry.py +38 -16
  65. cribl_control_plane/models/inputprometheus.py +50 -18
  66. cribl_control_plane/models/inputprometheusrw.py +30 -10
  67. cribl_control_plane/models/inputrawudp.py +11 -4
  68. cribl_control_plane/models/inputs3.py +21 -8
  69. cribl_control_plane/models/inputs3inventory.py +26 -10
  70. cribl_control_plane/models/inputsecuritylake.py +27 -10
  71. cribl_control_plane/models/inputsnmp.py +16 -6
  72. cribl_control_plane/models/inputsplunk.py +33 -12
  73. cribl_control_plane/models/inputsplunkhec.py +29 -10
  74. cribl_control_plane/models/inputsplunksearch.py +33 -14
  75. cribl_control_plane/models/inputsqs.py +27 -10
  76. cribl_control_plane/models/inputsyslog.py +43 -16
  77. cribl_control_plane/models/inputsystemmetrics.py +48 -24
  78. cribl_control_plane/models/inputsystemstate.py +16 -8
  79. cribl_control_plane/models/inputtcp.py +29 -10
  80. cribl_control_plane/models/inputtcpjson.py +29 -10
  81. cribl_control_plane/models/inputwef.py +37 -14
  82. cribl_control_plane/models/inputwindowsmetrics.py +44 -24
  83. cribl_control_plane/models/inputwineventlogs.py +20 -10
  84. cribl_control_plane/models/inputwiz.py +21 -8
  85. cribl_control_plane/models/inputwizwebhook.py +23 -8
  86. cribl_control_plane/models/inputzscalerhec.py +29 -10
  87. cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
  88. cribl_control_plane/models/listconfiggroupbyproductop.py +3 -1
  89. cribl_control_plane/models/masterworkerentry.py +7 -2
  90. cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
  91. cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
  92. cribl_control_plane/models/nodeprovidedinfo.py +3 -0
  93. cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
  94. cribl_control_plane/models/nodeupgradestate.py +2 -1
  95. cribl_control_plane/models/nodeupgradestatus.py +13 -5
  96. cribl_control_plane/models/output.py +3 -0
  97. cribl_control_plane/models/outputazureblob.py +48 -18
  98. cribl_control_plane/models/outputazuredataexplorer.py +73 -28
  99. cribl_control_plane/models/outputazureeventhub.py +40 -18
  100. cribl_control_plane/models/outputazurelogs.py +35 -12
  101. cribl_control_plane/models/outputclickhouse.py +55 -20
  102. cribl_control_plane/models/outputcloudwatch.py +29 -10
  103. cribl_control_plane/models/outputconfluentcloud.py +71 -44
  104. cribl_control_plane/models/outputcriblhttp.py +44 -16
  105. cribl_control_plane/models/outputcribllake.py +46 -16
  106. cribl_control_plane/models/outputcribltcp.py +45 -18
  107. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +49 -14
  108. cribl_control_plane/models/outputdatabricks.py +439 -0
  109. cribl_control_plane/models/outputdatadog.py +48 -20
  110. cribl_control_plane/models/outputdataset.py +46 -18
  111. cribl_control_plane/models/outputdiskspool.py +7 -2
  112. cribl_control_plane/models/outputdls3.py +68 -24
  113. cribl_control_plane/models/outputdynatracehttp.py +53 -20
  114. cribl_control_plane/models/outputdynatraceotlp.py +55 -22
  115. cribl_control_plane/models/outputelastic.py +43 -18
  116. cribl_control_plane/models/outputelasticcloud.py +36 -12
  117. cribl_control_plane/models/outputexabeam.py +29 -10
  118. cribl_control_plane/models/outputfilesystem.py +39 -14
  119. cribl_control_plane/models/outputgooglechronicle.py +50 -16
  120. cribl_control_plane/models/outputgooglecloudlogging.py +41 -14
  121. cribl_control_plane/models/outputgooglecloudstorage.py +66 -24
  122. cribl_control_plane/models/outputgooglepubsub.py +31 -10
  123. cribl_control_plane/models/outputgrafanacloud.py +97 -32
  124. cribl_control_plane/models/outputgraphite.py +31 -14
  125. cribl_control_plane/models/outputhoneycomb.py +35 -12
  126. cribl_control_plane/models/outputhumiohec.py +43 -16
  127. cribl_control_plane/models/outputinfluxdb.py +42 -16
  128. cribl_control_plane/models/outputkafka.py +69 -40
  129. cribl_control_plane/models/outputkinesis.py +40 -16
  130. cribl_control_plane/models/outputloki.py +41 -16
  131. cribl_control_plane/models/outputminio.py +65 -24
  132. cribl_control_plane/models/outputmsk.py +77 -42
  133. cribl_control_plane/models/outputnewrelic.py +43 -18
  134. cribl_control_plane/models/outputnewrelicevents.py +41 -14
  135. cribl_control_plane/models/outputopentelemetry.py +67 -26
  136. cribl_control_plane/models/outputprometheus.py +35 -12
  137. cribl_control_plane/models/outputring.py +19 -8
  138. cribl_control_plane/models/outputs3.py +68 -26
  139. cribl_control_plane/models/outputsecuritylake.py +52 -18
  140. cribl_control_plane/models/outputsentinel.py +45 -18
  141. cribl_control_plane/models/outputsentineloneaisiem.py +50 -18
  142. cribl_control_plane/models/outputservicenow.py +60 -24
  143. cribl_control_plane/models/outputsignalfx.py +37 -14
  144. cribl_control_plane/models/outputsns.py +36 -14
  145. cribl_control_plane/models/outputsplunk.py +60 -24
  146. cribl_control_plane/models/outputsplunkhec.py +35 -12
  147. cribl_control_plane/models/outputsplunklb.py +77 -30
  148. cribl_control_plane/models/outputsqs.py +41 -16
  149. cribl_control_plane/models/outputstatsd.py +30 -14
  150. cribl_control_plane/models/outputstatsdext.py +29 -12
  151. cribl_control_plane/models/outputsumologic.py +35 -12
  152. cribl_control_plane/models/outputsyslog.py +58 -24
  153. cribl_control_plane/models/outputtcpjson.py +52 -20
  154. cribl_control_plane/models/outputwavefront.py +35 -12
  155. cribl_control_plane/models/outputwebhook.py +58 -22
  156. cribl_control_plane/models/outputxsiam.py +35 -14
  157. cribl_control_plane/models/productscore.py +2 -1
  158. cribl_control_plane/models/rbacresource.py +2 -1
  159. cribl_control_plane/models/resourcepolicy.py +4 -2
  160. cribl_control_plane/models/routeconf.py +3 -4
  161. cribl_control_plane/models/runnablejobcollection.py +30 -13
  162. cribl_control_plane/models/runnablejobexecutor.py +13 -4
  163. cribl_control_plane/models/runnablejobscheduledsearch.py +7 -2
  164. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +8 -2
  165. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +8 -2
  166. cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +6 -5
  167. cribl_control_plane/models/workertypes.py +2 -1
  168. {cribl_control_plane-0.0.49.dist-info → cribl_control_plane-0.1.0b1.dist-info}/METADATA +1 -1
  169. cribl_control_plane-0.1.0b1.dist-info/RECORD +327 -0
  170. cribl_control_plane/models/appmode.py +0 -13
  171. cribl_control_plane/models/routecloneconf.py +0 -13
  172. cribl_control_plane-0.0.49.dist-info/RECORD +0 -325
  173. {cribl_control_plane-0.0.49.dist-info → cribl_control_plane-0.1.0b1.dist-info}/WHEEL +0 -0
@@ -1,9 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from cribl_control_plane import utils
4
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic.functional_validators import PlainValidator
7
10
  from typing import List, Optional
8
11
  from typing_extensions import Annotated, NotRequired, TypedDict
9
12
 
@@ -23,14 +26,14 @@ class InputCollectionConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputCollectionMode(str, Enum):
29
+ class InputCollectionMode(str, Enum, metaclass=utils.OpenEnumMeta):
27
30
  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."""
28
31
 
29
32
  SMART = "smart"
30
33
  ALWAYS = "always"
31
34
 
32
35
 
33
- class InputCollectionCompression(str, Enum):
36
+ class InputCollectionCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
37
  r"""Codec to use to compress the persisted data"""
35
38
 
36
39
  NONE = "none"
@@ -64,7 +67,9 @@ class InputCollectionPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputCollectionPq(BaseModel):
67
- mode: Optional[InputCollectionMode] = InputCollectionMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputCollectionMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputCollectionMode.ALWAYS
68
73
  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."""
69
74
 
70
75
  max_buffer_size: Annotated[
@@ -88,7 +93,9 @@ class InputCollectionPq(BaseModel):
88
93
  path: Optional[str] = "$CRIBL_HOME/state/queues"
89
94
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
90
95
 
91
- compress: Optional[InputCollectionCompression] = InputCollectionCompression.NONE
96
+ compress: Annotated[
97
+ Optional[InputCollectionCompression], PlainValidator(validate_open_enum(False))
98
+ ] = InputCollectionCompression.NONE
92
99
  r"""Codec to use to compress the persisted data"""
93
100
 
94
101
  pq_controls: Annotated[
@@ -1,9 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from cribl_control_plane import utils
4
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic.functional_validators import PlainValidator
7
10
  from typing import List, Optional
8
11
  from typing_extensions import Annotated, NotRequired, TypedDict
9
12
 
@@ -23,14 +26,14 @@ class InputConfluentCloudConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputConfluentCloudMode(str, Enum):
29
+ class InputConfluentCloudMode(str, Enum, metaclass=utils.OpenEnumMeta):
27
30
  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."""
28
31
 
29
32
  SMART = "smart"
30
33
  ALWAYS = "always"
31
34
 
32
35
 
33
- class InputConfluentCloudCompression(str, Enum):
36
+ class InputConfluentCloudCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
37
  r"""Codec to use to compress the persisted data"""
35
38
 
36
39
  NONE = "none"
@@ -64,7 +67,9 @@ class InputConfluentCloudPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputConfluentCloudPq(BaseModel):
67
- mode: Optional[InputConfluentCloudMode] = InputConfluentCloudMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputConfluentCloudMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputConfluentCloudMode.ALWAYS
68
73
  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."""
69
74
 
70
75
  max_buffer_size: Annotated[
@@ -88,9 +93,10 @@ class InputConfluentCloudPq(BaseModel):
88
93
  path: Optional[str] = "$CRIBL_HOME/state/queues"
89
94
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
90
95
 
91
- compress: Optional[InputConfluentCloudCompression] = (
92
- InputConfluentCloudCompression.NONE
93
- )
96
+ compress: Annotated[
97
+ Optional[InputConfluentCloudCompression],
98
+ PlainValidator(validate_open_enum(False)),
99
+ ] = InputConfluentCloudCompression.NONE
94
100
  r"""Codec to use to compress the persisted data"""
95
101
 
96
102
  pq_controls: Annotated[
@@ -98,14 +104,14 @@ class InputConfluentCloudPq(BaseModel):
98
104
  ] = None
99
105
 
100
106
 
101
- class InputConfluentCloudMinimumTLSVersion(str, Enum):
107
+ class InputConfluentCloudMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
102
108
  TL_SV1 = "TLSv1"
103
109
  TL_SV1_1 = "TLSv1.1"
104
110
  TL_SV1_2 = "TLSv1.2"
105
111
  TL_SV1_3 = "TLSv1.3"
106
112
 
107
113
 
108
- class InputConfluentCloudMaximumTLSVersion(str, Enum):
114
+ class InputConfluentCloudMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
109
115
  TL_SV1 = "TLSv1"
110
116
  TL_SV1_1 = "TLSv1.1"
111
117
  TL_SV1_2 = "TLSv1.2"
@@ -165,23 +171,22 @@ class InputConfluentCloudTLSSettingsClientSide(BaseModel):
165
171
  r"""Passphrase to use to decrypt private key"""
166
172
 
167
173
  min_version: Annotated[
168
- Optional[InputConfluentCloudMinimumTLSVersion],
174
+ Annotated[
175
+ Optional[InputConfluentCloudMinimumTLSVersion],
176
+ PlainValidator(validate_open_enum(False)),
177
+ ],
169
178
  pydantic.Field(alias="minVersion"),
170
179
  ] = None
171
180
 
172
181
  max_version: Annotated[
173
- Optional[InputConfluentCloudMaximumTLSVersion],
182
+ Annotated[
183
+ Optional[InputConfluentCloudMaximumTLSVersion],
184
+ PlainValidator(validate_open_enum(False)),
185
+ ],
174
186
  pydantic.Field(alias="maxVersion"),
175
187
  ] = None
176
188
 
177
189
 
178
- class InputConfluentCloudSchemaType(str, Enum):
179
- r"""The schema format used to encode and decode event data"""
180
-
181
- AVRO = "avro"
182
- JSON = "json"
183
-
184
-
185
190
  class InputConfluentCloudAuthTypedDict(TypedDict):
186
191
  r"""Credentials to use when authenticating with the schema registry using basic HTTP authentication"""
187
192
 
@@ -201,14 +206,18 @@ class InputConfluentCloudAuth(BaseModel):
201
206
  r"""Select or create a secret that references your credentials"""
202
207
 
203
208
 
204
- class InputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion(str, Enum):
209
+ class InputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion(
210
+ str, Enum, metaclass=utils.OpenEnumMeta
211
+ ):
205
212
  TL_SV1 = "TLSv1"
206
213
  TL_SV1_1 = "TLSv1.1"
207
214
  TL_SV1_2 = "TLSv1.2"
208
215
  TL_SV1_3 = "TLSv1.3"
209
216
 
210
217
 
211
- class InputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion(str, Enum):
218
+ class InputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion(
219
+ str, Enum, metaclass=utils.OpenEnumMeta
220
+ ):
212
221
  TL_SV1 = "TLSv1"
213
222
  TL_SV1_1 = "TLSv1.1"
214
223
  TL_SV1_2 = "TLSv1.2"
@@ -268,12 +277,18 @@ class InputConfluentCloudKafkaSchemaRegistryTLSSettingsClientSide(BaseModel):
268
277
  r"""Passphrase to use to decrypt private key"""
269
278
 
270
279
  min_version: Annotated[
271
- Optional[InputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion],
280
+ Annotated[
281
+ Optional[InputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion],
282
+ PlainValidator(validate_open_enum(False)),
283
+ ],
272
284
  pydantic.Field(alias="minVersion"),
273
285
  ] = None
274
286
 
275
287
  max_version: Annotated[
276
- Optional[InputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion],
288
+ Annotated[
289
+ Optional[InputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion],
290
+ PlainValidator(validate_open_enum(False)),
291
+ ],
277
292
  pydantic.Field(alias="maxVersion"),
278
293
  ] = None
279
294
 
@@ -282,8 +297,6 @@ class InputConfluentCloudKafkaSchemaRegistryAuthenticationTypedDict(TypedDict):
282
297
  disabled: NotRequired[bool]
283
298
  schema_registry_url: NotRequired[str]
284
299
  r"""URL for accessing the Confluent Schema Registry. Example: http://localhost:8081. To connect over TLS, use https instead of http."""
285
- schema_type: NotRequired[InputConfluentCloudSchemaType]
286
- r"""The schema format used to encode and decode event data"""
287
300
  connection_timeout: NotRequired[float]
288
301
  r"""Maximum time to wait for a Schema Registry connection to complete successfully"""
289
302
  request_timeout: NotRequired[float]
@@ -305,11 +318,6 @@ class InputConfluentCloudKafkaSchemaRegistryAuthentication(BaseModel):
305
318
  ] = "http://localhost:8081"
306
319
  r"""URL for accessing the Confluent Schema Registry. Example: http://localhost:8081. To connect over TLS, use https instead of http."""
307
320
 
308
- schema_type: Annotated[
309
- Optional[InputConfluentCloudSchemaType], pydantic.Field(alias="schemaType")
310
- ] = InputConfluentCloudSchemaType.AVRO
311
- r"""The schema format used to encode and decode event data"""
312
-
313
321
  connection_timeout: Annotated[
314
322
  Optional[float], pydantic.Field(alias="connectionTimeout")
315
323
  ] = 30000
@@ -329,7 +337,7 @@ class InputConfluentCloudKafkaSchemaRegistryAuthentication(BaseModel):
329
337
  tls: Optional[InputConfluentCloudKafkaSchemaRegistryTLSSettingsClientSide] = None
330
338
 
331
339
 
332
- class InputConfluentCloudSASLMechanism(str, Enum):
340
+ class InputConfluentCloudSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
333
341
  PLAIN = "plain"
334
342
  SCRAM_SHA_256 = "scram-sha-256"
335
343
  SCRAM_SHA_512 = "scram-sha-512"
@@ -350,9 +358,10 @@ class InputConfluentCloudAuthentication(BaseModel):
350
358
 
351
359
  disabled: Optional[bool] = True
352
360
 
353
- mechanism: Optional[InputConfluentCloudSASLMechanism] = (
354
- InputConfluentCloudSASLMechanism.PLAIN
355
- )
361
+ mechanism: Annotated[
362
+ Optional[InputConfluentCloudSASLMechanism],
363
+ PlainValidator(validate_open_enum(False)),
364
+ ] = InputConfluentCloudSASLMechanism.PLAIN
356
365
 
357
366
  oauth_enabled: Annotated[Optional[bool], pydantic.Field(alias="oauthEnabled")] = (
358
367
  False
@@ -1,9 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from cribl_control_plane import utils
4
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic.functional_validators import PlainValidator
7
10
  from typing import List, Optional
8
11
  from typing_extensions import Annotated, NotRequired, TypedDict
9
12
 
@@ -23,14 +26,14 @@ class InputCriblConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputCriblMode(str, Enum):
29
+ class InputCriblMode(str, Enum, metaclass=utils.OpenEnumMeta):
27
30
  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."""
28
31
 
29
32
  SMART = "smart"
30
33
  ALWAYS = "always"
31
34
 
32
35
 
33
- class InputCriblCompression(str, Enum):
36
+ class InputCriblCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
37
  r"""Codec to use to compress the persisted data"""
35
38
 
36
39
  NONE = "none"
@@ -64,7 +67,9 @@ class InputCriblPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputCriblPq(BaseModel):
67
- mode: Optional[InputCriblMode] = InputCriblMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputCriblMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputCriblMode.ALWAYS
68
73
  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."""
69
74
 
70
75
  max_buffer_size: Annotated[
@@ -88,7 +93,9 @@ class InputCriblPq(BaseModel):
88
93
  path: Optional[str] = "$CRIBL_HOME/state/queues"
89
94
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
90
95
 
91
- compress: Optional[InputCriblCompression] = InputCriblCompression.NONE
96
+ compress: Annotated[
97
+ Optional[InputCriblCompression], PlainValidator(validate_open_enum(False))
98
+ ] = InputCriblCompression.NONE
92
99
  r"""Codec to use to compress the persisted data"""
93
100
 
94
101
  pq_controls: Annotated[
@@ -1,9 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from cribl_control_plane import utils
4
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic.functional_validators import PlainValidator
7
10
  from typing import Any, List, Optional
8
11
  from typing_extensions import Annotated, NotRequired, TypedDict
9
12
 
@@ -23,14 +26,14 @@ class InputCriblHTTPConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputCriblHTTPMode(str, Enum):
29
+ class InputCriblHTTPMode(str, Enum, metaclass=utils.OpenEnumMeta):
27
30
  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."""
28
31
 
29
32
  SMART = "smart"
30
33
  ALWAYS = "always"
31
34
 
32
35
 
33
- class InputCriblHTTPCompression(str, Enum):
36
+ class InputCriblHTTPCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
37
  r"""Codec to use to compress the persisted data"""
35
38
 
36
39
  NONE = "none"
@@ -64,7 +67,9 @@ class InputCriblHTTPPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputCriblHTTPPq(BaseModel):
67
- mode: Optional[InputCriblHTTPMode] = InputCriblHTTPMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputCriblHTTPMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputCriblHTTPMode.ALWAYS
68
73
  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."""
69
74
 
70
75
  max_buffer_size: Annotated[
@@ -88,7 +93,9 @@ class InputCriblHTTPPq(BaseModel):
88
93
  path: Optional[str] = "$CRIBL_HOME/state/queues"
89
94
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
90
95
 
91
- compress: Optional[InputCriblHTTPCompression] = InputCriblHTTPCompression.NONE
96
+ compress: Annotated[
97
+ Optional[InputCriblHTTPCompression], PlainValidator(validate_open_enum(False))
98
+ ] = InputCriblHTTPCompression.NONE
92
99
  r"""Codec to use to compress the persisted data"""
93
100
 
94
101
  pq_controls: Annotated[
@@ -96,14 +103,14 @@ class InputCriblHTTPPq(BaseModel):
96
103
  ] = None
97
104
 
98
105
 
99
- class InputCriblHTTPMinimumTLSVersion(str, Enum):
106
+ class InputCriblHTTPMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
100
107
  TL_SV1 = "TLSv1"
101
108
  TL_SV1_1 = "TLSv1.1"
102
109
  TL_SV1_2 = "TLSv1.2"
103
110
  TL_SV1_3 = "TLSv1.3"
104
111
 
105
112
 
106
- class InputCriblHTTPMaximumTLSVersion(str, Enum):
113
+ class InputCriblHTTPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
107
114
  TL_SV1 = "TLSv1"
108
115
  TL_SV1_1 = "TLSv1.1"
109
116
  TL_SV1_2 = "TLSv1.2"
@@ -162,11 +169,19 @@ class InputCriblHTTPTLSSettingsServerSide(BaseModel):
162
169
  ] = None
163
170
 
164
171
  min_version: Annotated[
165
- Optional[InputCriblHTTPMinimumTLSVersion], pydantic.Field(alias="minVersion")
172
+ Annotated[
173
+ Optional[InputCriblHTTPMinimumTLSVersion],
174
+ PlainValidator(validate_open_enum(False)),
175
+ ],
176
+ pydantic.Field(alias="minVersion"),
166
177
  ] = None
167
178
 
168
179
  max_version: Annotated[
169
- Optional[InputCriblHTTPMaximumTLSVersion], pydantic.Field(alias="maxVersion")
180
+ Annotated[
181
+ Optional[InputCriblHTTPMaximumTLSVersion],
182
+ PlainValidator(validate_open_enum(False)),
183
+ ],
184
+ pydantic.Field(alias="maxVersion"),
170
185
  ] = None
171
186
 
172
187
 
@@ -1,9 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from cribl_control_plane import utils
4
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic.functional_validators import PlainValidator
7
10
  from typing import Any, List, Optional
8
11
  from typing_extensions import Annotated, NotRequired, TypedDict
9
12
 
@@ -23,14 +26,14 @@ class InputCriblLakeHTTPConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputCriblLakeHTTPMode(str, Enum):
29
+ class InputCriblLakeHTTPMode(str, Enum, metaclass=utils.OpenEnumMeta):
27
30
  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."""
28
31
 
29
32
  SMART = "smart"
30
33
  ALWAYS = "always"
31
34
 
32
35
 
33
- class InputCriblLakeHTTPCompression(str, Enum):
36
+ class InputCriblLakeHTTPCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
37
  r"""Codec to use to compress the persisted data"""
35
38
 
36
39
  NONE = "none"
@@ -64,7 +67,9 @@ class InputCriblLakeHTTPPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputCriblLakeHTTPPq(BaseModel):
67
- mode: Optional[InputCriblLakeHTTPMode] = InputCriblLakeHTTPMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputCriblLakeHTTPMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputCriblLakeHTTPMode.ALWAYS
68
73
  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."""
69
74
 
70
75
  max_buffer_size: Annotated[
@@ -88,9 +93,10 @@ class InputCriblLakeHTTPPq(BaseModel):
88
93
  path: Optional[str] = "$CRIBL_HOME/state/queues"
89
94
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
90
95
 
91
- compress: Optional[InputCriblLakeHTTPCompression] = (
92
- InputCriblLakeHTTPCompression.NONE
93
- )
96
+ compress: Annotated[
97
+ Optional[InputCriblLakeHTTPCompression],
98
+ PlainValidator(validate_open_enum(False)),
99
+ ] = InputCriblLakeHTTPCompression.NONE
94
100
  r"""Codec to use to compress the persisted data"""
95
101
 
96
102
  pq_controls: Annotated[
@@ -98,14 +104,14 @@ class InputCriblLakeHTTPPq(BaseModel):
98
104
  ] = None
99
105
 
100
106
 
101
- class InputCriblLakeHTTPMinimumTLSVersion(str, Enum):
107
+ class InputCriblLakeHTTPMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
102
108
  TL_SV1 = "TLSv1"
103
109
  TL_SV1_1 = "TLSv1.1"
104
110
  TL_SV1_2 = "TLSv1.2"
105
111
  TL_SV1_3 = "TLSv1.3"
106
112
 
107
113
 
108
- class InputCriblLakeHTTPMaximumTLSVersion(str, Enum):
114
+ class InputCriblLakeHTTPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
109
115
  TL_SV1 = "TLSv1"
110
116
  TL_SV1_1 = "TLSv1.1"
111
117
  TL_SV1_2 = "TLSv1.2"
@@ -164,12 +170,18 @@ class InputCriblLakeHTTPTLSSettingsServerSide(BaseModel):
164
170
  ] = None
165
171
 
166
172
  min_version: Annotated[
167
- Optional[InputCriblLakeHTTPMinimumTLSVersion],
173
+ Annotated[
174
+ Optional[InputCriblLakeHTTPMinimumTLSVersion],
175
+ PlainValidator(validate_open_enum(False)),
176
+ ],
168
177
  pydantic.Field(alias="minVersion"),
169
178
  ] = None
170
179
 
171
180
  max_version: Annotated[
172
- Optional[InputCriblLakeHTTPMaximumTLSVersion],
181
+ Annotated[
182
+ Optional[InputCriblLakeHTTPMaximumTLSVersion],
183
+ PlainValidator(validate_open_enum(False)),
184
+ ],
173
185
  pydantic.Field(alias="maxVersion"),
174
186
  ] = None
175
187
 
@@ -1,9 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from cribl_control_plane import utils
4
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic.functional_validators import PlainValidator
7
10
  from typing import List, Optional
8
11
  from typing_extensions import Annotated, NotRequired, TypedDict
9
12
 
@@ -23,14 +26,14 @@ class InputCriblmetricsConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputCriblmetricsMode(str, Enum):
29
+ class InputCriblmetricsMode(str, Enum, metaclass=utils.OpenEnumMeta):
27
30
  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."""
28
31
 
29
32
  SMART = "smart"
30
33
  ALWAYS = "always"
31
34
 
32
35
 
33
- class InputCriblmetricsCompression(str, Enum):
36
+ class InputCriblmetricsCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
37
  r"""Codec to use to compress the persisted data"""
35
38
 
36
39
  NONE = "none"
@@ -64,7 +67,9 @@ class InputCriblmetricsPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputCriblmetricsPq(BaseModel):
67
- mode: Optional[InputCriblmetricsMode] = InputCriblmetricsMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputCriblmetricsMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputCriblmetricsMode.ALWAYS
68
73
  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."""
69
74
 
70
75
  max_buffer_size: Annotated[
@@ -88,7 +93,10 @@ class InputCriblmetricsPq(BaseModel):
88
93
  path: Optional[str] = "$CRIBL_HOME/state/queues"
89
94
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
90
95
 
91
- compress: Optional[InputCriblmetricsCompression] = InputCriblmetricsCompression.NONE
96
+ compress: Annotated[
97
+ Optional[InputCriblmetricsCompression],
98
+ PlainValidator(validate_open_enum(False)),
99
+ ] = InputCriblmetricsCompression.NONE
92
100
  r"""Codec to use to compress the persisted data"""
93
101
 
94
102
  pq_controls: Annotated[
@@ -1,9 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from cribl_control_plane import utils
4
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic.functional_validators import PlainValidator
7
10
  from typing import Any, List, Optional
8
11
  from typing_extensions import Annotated, NotRequired, TypedDict
9
12
 
@@ -23,14 +26,14 @@ class InputCriblTCPConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputCriblTCPMode(str, Enum):
29
+ class InputCriblTCPMode(str, Enum, metaclass=utils.OpenEnumMeta):
27
30
  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."""
28
31
 
29
32
  SMART = "smart"
30
33
  ALWAYS = "always"
31
34
 
32
35
 
33
- class InputCriblTCPCompression(str, Enum):
36
+ class InputCriblTCPCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
37
  r"""Codec to use to compress the persisted data"""
35
38
 
36
39
  NONE = "none"
@@ -64,7 +67,9 @@ class InputCriblTCPPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputCriblTCPPq(BaseModel):
67
- mode: Optional[InputCriblTCPMode] = InputCriblTCPMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputCriblTCPMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputCriblTCPMode.ALWAYS
68
73
  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."""
69
74
 
70
75
  max_buffer_size: Annotated[
@@ -88,7 +93,9 @@ class InputCriblTCPPq(BaseModel):
88
93
  path: Optional[str] = "$CRIBL_HOME/state/queues"
89
94
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
90
95
 
91
- compress: Optional[InputCriblTCPCompression] = InputCriblTCPCompression.NONE
96
+ compress: Annotated[
97
+ Optional[InputCriblTCPCompression], PlainValidator(validate_open_enum(False))
98
+ ] = InputCriblTCPCompression.NONE
92
99
  r"""Codec to use to compress the persisted data"""
93
100
 
94
101
  pq_controls: Annotated[
@@ -96,14 +103,14 @@ class InputCriblTCPPq(BaseModel):
96
103
  ] = None
97
104
 
98
105
 
99
- class InputCriblTCPMinimumTLSVersion(str, Enum):
106
+ class InputCriblTCPMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
100
107
  TL_SV1 = "TLSv1"
101
108
  TL_SV1_1 = "TLSv1.1"
102
109
  TL_SV1_2 = "TLSv1.2"
103
110
  TL_SV1_3 = "TLSv1.3"
104
111
 
105
112
 
106
- class InputCriblTCPMaximumTLSVersion(str, Enum):
113
+ class InputCriblTCPMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
107
114
  TL_SV1 = "TLSv1"
108
115
  TL_SV1_1 = "TLSv1.1"
109
116
  TL_SV1_2 = "TLSv1.2"
@@ -162,11 +169,19 @@ class InputCriblTCPTLSSettingsServerSide(BaseModel):
162
169
  ] = None
163
170
 
164
171
  min_version: Annotated[
165
- Optional[InputCriblTCPMinimumTLSVersion], pydantic.Field(alias="minVersion")
172
+ Annotated[
173
+ Optional[InputCriblTCPMinimumTLSVersion],
174
+ PlainValidator(validate_open_enum(False)),
175
+ ],
176
+ pydantic.Field(alias="minVersion"),
166
177
  ] = None
167
178
 
168
179
  max_version: Annotated[
169
- Optional[InputCriblTCPMaximumTLSVersion], pydantic.Field(alias="maxVersion")
180
+ Annotated[
181
+ Optional[InputCriblTCPMaximumTLSVersion],
182
+ PlainValidator(validate_open_enum(False)),
183
+ ],
184
+ pydantic.Field(alias="maxVersion"),
170
185
  ] = None
171
186
 
172
187