cribl-control-plane 0.0.49__py3-none-any.whl → 0.1.0a1__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 (166) 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 +18 -3
  5. cribl_control_plane/models/appmode.py +2 -1
  6. cribl_control_plane/models/cacheconnection.py +10 -2
  7. cribl_control_plane/models/cacheconnectionbackfillstatus.py +2 -1
  8. cribl_control_plane/models/cloudprovider.py +2 -1
  9. cribl_control_plane/models/configgroup.py +7 -2
  10. cribl_control_plane/models/configgroupcloud.py +6 -2
  11. cribl_control_plane/models/createconfiggroupbyproductop.py +8 -2
  12. cribl_control_plane/models/createinputhectokenbyidop.py +6 -5
  13. cribl_control_plane/models/createversionpushop.py +5 -5
  14. cribl_control_plane/models/cribllakedataset.py +8 -2
  15. cribl_control_plane/models/datasetmetadata.py +8 -2
  16. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +7 -2
  17. cribl_control_plane/models/error.py +16 -0
  18. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +4 -2
  19. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +4 -2
  20. cribl_control_plane/models/getconfiggroupbyproductandidop.py +3 -1
  21. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +7 -2
  22. cribl_control_plane/models/gethealthinfoop.py +17 -0
  23. cribl_control_plane/models/getsummaryop.py +7 -2
  24. cribl_control_plane/models/getversionshowop.py +6 -5
  25. cribl_control_plane/models/gitshowresult.py +19 -0
  26. cribl_control_plane/models/hbcriblinfo.py +6 -1
  27. cribl_control_plane/models/healthstatus.py +7 -4
  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 +47 -20
  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 +46 -16
  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 +53 -18
  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/nodeskippedupgradestatus.py +2 -1
  93. cribl_control_plane/models/nodeupgradestate.py +2 -1
  94. cribl_control_plane/models/nodeupgradestatus.py +13 -5
  95. cribl_control_plane/models/outputazureblob.py +48 -18
  96. cribl_control_plane/models/outputazuredataexplorer.py +73 -28
  97. cribl_control_plane/models/outputazureeventhub.py +40 -18
  98. cribl_control_plane/models/outputazurelogs.py +35 -12
  99. cribl_control_plane/models/outputclickhouse.py +55 -20
  100. cribl_control_plane/models/outputcloudwatch.py +29 -10
  101. cribl_control_plane/models/outputconfluentcloud.py +77 -32
  102. cribl_control_plane/models/outputcriblhttp.py +44 -16
  103. cribl_control_plane/models/outputcribllake.py +46 -16
  104. cribl_control_plane/models/outputcribltcp.py +45 -18
  105. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +49 -14
  106. cribl_control_plane/models/outputdatadog.py +48 -20
  107. cribl_control_plane/models/outputdataset.py +46 -18
  108. cribl_control_plane/models/outputdiskspool.py +7 -2
  109. cribl_control_plane/models/outputdls3.py +68 -24
  110. cribl_control_plane/models/outputdynatracehttp.py +53 -20
  111. cribl_control_plane/models/outputdynatraceotlp.py +55 -22
  112. cribl_control_plane/models/outputelastic.py +43 -18
  113. cribl_control_plane/models/outputelasticcloud.py +36 -12
  114. cribl_control_plane/models/outputexabeam.py +29 -10
  115. cribl_control_plane/models/outputfilesystem.py +39 -14
  116. cribl_control_plane/models/outputgooglechronicle.py +50 -16
  117. cribl_control_plane/models/outputgooglecloudlogging.py +41 -14
  118. cribl_control_plane/models/outputgooglecloudstorage.py +66 -24
  119. cribl_control_plane/models/outputgooglepubsub.py +31 -10
  120. cribl_control_plane/models/outputgrafanacloud.py +97 -32
  121. cribl_control_plane/models/outputgraphite.py +31 -14
  122. cribl_control_plane/models/outputhoneycomb.py +35 -12
  123. cribl_control_plane/models/outputhumiohec.py +43 -16
  124. cribl_control_plane/models/outputinfluxdb.py +42 -16
  125. cribl_control_plane/models/outputkafka.py +74 -28
  126. cribl_control_plane/models/outputkinesis.py +40 -16
  127. cribl_control_plane/models/outputloki.py +41 -16
  128. cribl_control_plane/models/outputminio.py +65 -24
  129. cribl_control_plane/models/outputmsk.py +82 -30
  130. cribl_control_plane/models/outputnewrelic.py +43 -18
  131. cribl_control_plane/models/outputnewrelicevents.py +41 -14
  132. cribl_control_plane/models/outputopentelemetry.py +67 -26
  133. cribl_control_plane/models/outputprometheus.py +35 -12
  134. cribl_control_plane/models/outputring.py +19 -8
  135. cribl_control_plane/models/outputs3.py +68 -26
  136. cribl_control_plane/models/outputsecuritylake.py +52 -18
  137. cribl_control_plane/models/outputsentinel.py +45 -18
  138. cribl_control_plane/models/outputsentineloneaisiem.py +50 -18
  139. cribl_control_plane/models/outputservicenow.py +60 -24
  140. cribl_control_plane/models/outputsignalfx.py +37 -14
  141. cribl_control_plane/models/outputsns.py +36 -14
  142. cribl_control_plane/models/outputsplunk.py +60 -24
  143. cribl_control_plane/models/outputsplunkhec.py +35 -12
  144. cribl_control_plane/models/outputsplunklb.py +77 -30
  145. cribl_control_plane/models/outputsqs.py +41 -16
  146. cribl_control_plane/models/outputstatsd.py +30 -14
  147. cribl_control_plane/models/outputstatsdext.py +29 -12
  148. cribl_control_plane/models/outputsumologic.py +35 -12
  149. cribl_control_plane/models/outputsyslog.py +58 -24
  150. cribl_control_plane/models/outputtcpjson.py +52 -20
  151. cribl_control_plane/models/outputwavefront.py +35 -12
  152. cribl_control_plane/models/outputwebhook.py +58 -22
  153. cribl_control_plane/models/outputxsiam.py +35 -14
  154. cribl_control_plane/models/productscore.py +2 -1
  155. cribl_control_plane/models/rbacresource.py +2 -1
  156. cribl_control_plane/models/resourcepolicy.py +4 -2
  157. cribl_control_plane/models/runnablejobcollection.py +30 -13
  158. cribl_control_plane/models/runnablejobexecutor.py +13 -4
  159. cribl_control_plane/models/runnablejobscheduledsearch.py +7 -2
  160. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +8 -2
  161. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +8 -2
  162. cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +6 -5
  163. cribl_control_plane/models/workertypes.py +2 -1
  164. {cribl_control_plane-0.0.49.dist-info → cribl_control_plane-0.1.0a1.dist-info}/METADATA +1 -1
  165. {cribl_control_plane-0.0.49.dist-info → cribl_control_plane-0.1.0a1.dist-info}/RECORD +166 -163
  166. {cribl_control_plane-0.0.49.dist-info → cribl_control_plane-0.1.0a1.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 InputGooglePubsubConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputGooglePubsubMode(str, Enum):
29
+ class InputGooglePubsubMode(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 InputGooglePubsubCompression(str, Enum):
36
+ class InputGooglePubsubCompression(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 InputGooglePubsubPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputGooglePubsubPq(BaseModel):
67
- mode: Optional[InputGooglePubsubMode] = InputGooglePubsubMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputGooglePubsubMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputGooglePubsubMode.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 InputGooglePubsubPq(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[InputGooglePubsubCompression] = InputGooglePubsubCompression.NONE
96
+ compress: Annotated[
97
+ Optional[InputGooglePubsubCompression],
98
+ PlainValidator(validate_open_enum(False)),
99
+ ] = InputGooglePubsubCompression.NONE
92
100
  r"""Codec to use to compress the persisted data"""
93
101
 
94
102
  pq_controls: Annotated[
@@ -96,7 +104,9 @@ class InputGooglePubsubPq(BaseModel):
96
104
  ] = None
97
105
 
98
106
 
99
- class InputGooglePubsubGoogleAuthenticationMethod(str, Enum):
107
+ class InputGooglePubsubGoogleAuthenticationMethod(
108
+ str, Enum, metaclass=utils.OpenEnumMeta
109
+ ):
100
110
  r"""Choose Auto to use Google Application Default Credentials (ADC), Manual to enter Google service account credentials directly, or Secret to select or create a stored secret that references Google service account credentials."""
101
111
 
102
112
  AUTO = "auto"
@@ -219,7 +229,10 @@ class InputGooglePubsub(BaseModel):
219
229
  r"""Region to retrieve messages from. Select 'default' to allow Google to auto-select the nearest region. When using ordered delivery, the selected region must be allowed by message storage policy."""
220
230
 
221
231
  google_auth_method: Annotated[
222
- Optional[InputGooglePubsubGoogleAuthenticationMethod],
232
+ Annotated[
233
+ Optional[InputGooglePubsubGoogleAuthenticationMethod],
234
+ PlainValidator(validate_open_enum(False)),
235
+ ],
223
236
  pydantic.Field(alias="googleAuthMethod"),
224
237
  ] = InputGooglePubsubGoogleAuthenticationMethod.MANUAL
225
238
  r"""Choose Auto to use Google Application Default Credentials (ADC), Manual to enter Google service account credentials directly, or Secret to select or create a stored secret that references Google service account credentials."""
@@ -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, Union
8
11
  from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
9
12
 
@@ -23,14 +26,14 @@ class InputGrafanaConnection2(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputGrafanaMode2(str, Enum):
29
+ class InputGrafanaMode2(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 InputGrafanaCompression2(str, Enum):
36
+ class InputGrafanaCompression2(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 InputGrafanaPq2TypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputGrafanaPq2(BaseModel):
67
- mode: Optional[InputGrafanaMode2] = InputGrafanaMode2.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputGrafanaMode2], PlainValidator(validate_open_enum(False))
72
+ ] = InputGrafanaMode2.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 InputGrafanaPq2(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[InputGrafanaCompression2] = InputGrafanaCompression2.NONE
96
+ compress: Annotated[
97
+ Optional[InputGrafanaCompression2], PlainValidator(validate_open_enum(False))
98
+ ] = InputGrafanaCompression2.NONE
92
99
  r"""Codec to use to compress the persisted data"""
93
100
 
94
101
  pq_controls: Annotated[
@@ -96,14 +103,14 @@ class InputGrafanaPq2(BaseModel):
96
103
  ] = None
97
104
 
98
105
 
99
- class InputGrafanaMinimumTLSVersion2(str, Enum):
106
+ class InputGrafanaMinimumTLSVersion2(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 InputGrafanaMaximumTLSVersion2(str, Enum):
113
+ class InputGrafanaMaximumTLSVersion2(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,15 +169,25 @@ class InputGrafanaTLSSettingsServerSide2(BaseModel):
162
169
  ] = None
163
170
 
164
171
  min_version: Annotated[
165
- Optional[InputGrafanaMinimumTLSVersion2], pydantic.Field(alias="minVersion")
172
+ Annotated[
173
+ Optional[InputGrafanaMinimumTLSVersion2],
174
+ PlainValidator(validate_open_enum(False)),
175
+ ],
176
+ pydantic.Field(alias="minVersion"),
166
177
  ] = None
167
178
 
168
179
  max_version: Annotated[
169
- Optional[InputGrafanaMaximumTLSVersion2], pydantic.Field(alias="maxVersion")
180
+ Annotated[
181
+ Optional[InputGrafanaMaximumTLSVersion2],
182
+ PlainValidator(validate_open_enum(False)),
183
+ ],
184
+ pydantic.Field(alias="maxVersion"),
170
185
  ] = None
171
186
 
172
187
 
173
- class InputGrafanaPrometheusAuthAuthenticationType2(str, Enum):
188
+ class InputGrafanaPrometheusAuthAuthenticationType2(
189
+ str, Enum, metaclass=utils.OpenEnumMeta
190
+ ):
174
191
  r"""Remote Write authentication type"""
175
192
 
176
193
  NONE = "none"
@@ -242,7 +259,10 @@ class InputGrafanaPrometheusAuth2TypedDict(TypedDict):
242
259
 
243
260
  class InputGrafanaPrometheusAuth2(BaseModel):
244
261
  auth_type: Annotated[
245
- Optional[InputGrafanaPrometheusAuthAuthenticationType2],
262
+ Annotated[
263
+ Optional[InputGrafanaPrometheusAuthAuthenticationType2],
264
+ PlainValidator(validate_open_enum(False)),
265
+ ],
246
266
  pydantic.Field(alias="authType"),
247
267
  ] = InputGrafanaPrometheusAuthAuthenticationType2.NONE
248
268
  r"""Remote Write authentication type"""
@@ -299,7 +319,7 @@ class InputGrafanaPrometheusAuth2(BaseModel):
299
319
  r"""Additional headers to send in the OAuth login request. @{product} will automatically add the content-type header 'application/x-www-form-urlencoded' when sending this request."""
300
320
 
301
321
 
302
- class InputGrafanaLokiAuthAuthenticationType2(str, Enum):
322
+ class InputGrafanaLokiAuthAuthenticationType2(str, Enum, metaclass=utils.OpenEnumMeta):
303
323
  r"""Loki logs authentication type"""
304
324
 
305
325
  NONE = "none"
@@ -371,7 +391,10 @@ class InputGrafanaLokiAuth2TypedDict(TypedDict):
371
391
 
372
392
  class InputGrafanaLokiAuth2(BaseModel):
373
393
  auth_type: Annotated[
374
- Optional[InputGrafanaLokiAuthAuthenticationType2],
394
+ Annotated[
395
+ Optional[InputGrafanaLokiAuthAuthenticationType2],
396
+ PlainValidator(validate_open_enum(False)),
397
+ ],
375
398
  pydantic.Field(alias="authType"),
376
399
  ] = InputGrafanaLokiAuthAuthenticationType2.NONE
377
400
  r"""Loki logs authentication type"""
@@ -629,14 +652,14 @@ class InputGrafanaConnection1(BaseModel):
629
652
  pipeline: Optional[str] = None
630
653
 
631
654
 
632
- class InputGrafanaMode1(str, Enum):
655
+ class InputGrafanaMode1(str, Enum, metaclass=utils.OpenEnumMeta):
633
656
  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."""
634
657
 
635
658
  SMART = "smart"
636
659
  ALWAYS = "always"
637
660
 
638
661
 
639
- class InputGrafanaCompression1(str, Enum):
662
+ class InputGrafanaCompression1(str, Enum, metaclass=utils.OpenEnumMeta):
640
663
  r"""Codec to use to compress the persisted data"""
641
664
 
642
665
  NONE = "none"
@@ -670,7 +693,9 @@ class InputGrafanaPq1TypedDict(TypedDict):
670
693
 
671
694
 
672
695
  class InputGrafanaPq1(BaseModel):
673
- mode: Optional[InputGrafanaMode1] = InputGrafanaMode1.ALWAYS
696
+ mode: Annotated[
697
+ Optional[InputGrafanaMode1], PlainValidator(validate_open_enum(False))
698
+ ] = InputGrafanaMode1.ALWAYS
674
699
  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."""
675
700
 
676
701
  max_buffer_size: Annotated[
@@ -694,7 +719,9 @@ class InputGrafanaPq1(BaseModel):
694
719
  path: Optional[str] = "$CRIBL_HOME/state/queues"
695
720
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
696
721
 
697
- compress: Optional[InputGrafanaCompression1] = InputGrafanaCompression1.NONE
722
+ compress: Annotated[
723
+ Optional[InputGrafanaCompression1], PlainValidator(validate_open_enum(False))
724
+ ] = InputGrafanaCompression1.NONE
698
725
  r"""Codec to use to compress the persisted data"""
699
726
 
700
727
  pq_controls: Annotated[
@@ -702,14 +729,14 @@ class InputGrafanaPq1(BaseModel):
702
729
  ] = None
703
730
 
704
731
 
705
- class InputGrafanaMinimumTLSVersion1(str, Enum):
732
+ class InputGrafanaMinimumTLSVersion1(str, Enum, metaclass=utils.OpenEnumMeta):
706
733
  TL_SV1 = "TLSv1"
707
734
  TL_SV1_1 = "TLSv1.1"
708
735
  TL_SV1_2 = "TLSv1.2"
709
736
  TL_SV1_3 = "TLSv1.3"
710
737
 
711
738
 
712
- class InputGrafanaMaximumTLSVersion1(str, Enum):
739
+ class InputGrafanaMaximumTLSVersion1(str, Enum, metaclass=utils.OpenEnumMeta):
713
740
  TL_SV1 = "TLSv1"
714
741
  TL_SV1_1 = "TLSv1.1"
715
742
  TL_SV1_2 = "TLSv1.2"
@@ -768,15 +795,25 @@ class InputGrafanaTLSSettingsServerSide1(BaseModel):
768
795
  ] = None
769
796
 
770
797
  min_version: Annotated[
771
- Optional[InputGrafanaMinimumTLSVersion1], pydantic.Field(alias="minVersion")
798
+ Annotated[
799
+ Optional[InputGrafanaMinimumTLSVersion1],
800
+ PlainValidator(validate_open_enum(False)),
801
+ ],
802
+ pydantic.Field(alias="minVersion"),
772
803
  ] = None
773
804
 
774
805
  max_version: Annotated[
775
- Optional[InputGrafanaMaximumTLSVersion1], pydantic.Field(alias="maxVersion")
806
+ Annotated[
807
+ Optional[InputGrafanaMaximumTLSVersion1],
808
+ PlainValidator(validate_open_enum(False)),
809
+ ],
810
+ pydantic.Field(alias="maxVersion"),
776
811
  ] = None
777
812
 
778
813
 
779
- class InputGrafanaPrometheusAuthAuthenticationType1(str, Enum):
814
+ class InputGrafanaPrometheusAuthAuthenticationType1(
815
+ str, Enum, metaclass=utils.OpenEnumMeta
816
+ ):
780
817
  r"""Remote Write authentication type"""
781
818
 
782
819
  NONE = "none"
@@ -848,7 +885,10 @@ class InputGrafanaPrometheusAuth1TypedDict(TypedDict):
848
885
 
849
886
  class InputGrafanaPrometheusAuth1(BaseModel):
850
887
  auth_type: Annotated[
851
- Optional[InputGrafanaPrometheusAuthAuthenticationType1],
888
+ Annotated[
889
+ Optional[InputGrafanaPrometheusAuthAuthenticationType1],
890
+ PlainValidator(validate_open_enum(False)),
891
+ ],
852
892
  pydantic.Field(alias="authType"),
853
893
  ] = InputGrafanaPrometheusAuthAuthenticationType1.NONE
854
894
  r"""Remote Write authentication type"""
@@ -905,7 +945,7 @@ class InputGrafanaPrometheusAuth1(BaseModel):
905
945
  r"""Additional headers to send in the OAuth login request. @{product} will automatically add the content-type header 'application/x-www-form-urlencoded' when sending this request."""
906
946
 
907
947
 
908
- class InputGrafanaLokiAuthAuthenticationType1(str, Enum):
948
+ class InputGrafanaLokiAuthAuthenticationType1(str, Enum, metaclass=utils.OpenEnumMeta):
909
949
  r"""Loki logs authentication type"""
910
950
 
911
951
  NONE = "none"
@@ -977,7 +1017,10 @@ class InputGrafanaLokiAuth1TypedDict(TypedDict):
977
1017
 
978
1018
  class InputGrafanaLokiAuth1(BaseModel):
979
1019
  auth_type: Annotated[
980
- Optional[InputGrafanaLokiAuthAuthenticationType1],
1020
+ Annotated[
1021
+ Optional[InputGrafanaLokiAuthAuthenticationType1],
1022
+ PlainValidator(validate_open_enum(False)),
1023
+ ],
981
1024
  pydantic.Field(alias="authType"),
982
1025
  ] = InputGrafanaLokiAuthAuthenticationType1.NONE
983
1026
  r"""Loki logs authentication type"""
@@ -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 InputHTTPConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputHTTPMode(str, Enum):
29
+ class InputHTTPMode(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 InputHTTPCompression(str, Enum):
36
+ class InputHTTPCompression(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 InputHTTPPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputHTTPPq(BaseModel):
67
- mode: Optional[InputHTTPMode] = InputHTTPMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputHTTPMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputHTTPMode.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 InputHTTPPq(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[InputHTTPCompression] = InputHTTPCompression.NONE
96
+ compress: Annotated[
97
+ Optional[InputHTTPCompression], PlainValidator(validate_open_enum(False))
98
+ ] = InputHTTPCompression.NONE
92
99
  r"""Codec to use to compress the persisted data"""
93
100
 
94
101
  pq_controls: Annotated[
@@ -96,14 +103,14 @@ class InputHTTPPq(BaseModel):
96
103
  ] = None
97
104
 
98
105
 
99
- class InputHTTPMinimumTLSVersion(str, Enum):
106
+ class InputHTTPMinimumTLSVersion(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 InputHTTPMaximumTLSVersion(str, Enum):
113
+ class InputHTTPMaximumTLSVersion(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 InputHTTPTLSSettingsServerSide(BaseModel):
162
169
  ] = None
163
170
 
164
171
  min_version: Annotated[
165
- Optional[InputHTTPMinimumTLSVersion], pydantic.Field(alias="minVersion")
172
+ Annotated[
173
+ Optional[InputHTTPMinimumTLSVersion],
174
+ PlainValidator(validate_open_enum(False)),
175
+ ],
176
+ pydantic.Field(alias="minVersion"),
166
177
  ] = None
167
178
 
168
179
  max_version: Annotated[
169
- Optional[InputHTTPMaximumTLSVersion], pydantic.Field(alias="maxVersion")
180
+ Annotated[
181
+ Optional[InputHTTPMaximumTLSVersion],
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 InputHTTPRawConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputHTTPRawMode(str, Enum):
29
+ class InputHTTPRawMode(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 InputHTTPRawCompression(str, Enum):
36
+ class InputHTTPRawCompression(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 InputHTTPRawPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputHTTPRawPq(BaseModel):
67
- mode: Optional[InputHTTPRawMode] = InputHTTPRawMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputHTTPRawMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputHTTPRawMode.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 InputHTTPRawPq(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[InputHTTPRawCompression] = InputHTTPRawCompression.NONE
96
+ compress: Annotated[
97
+ Optional[InputHTTPRawCompression], PlainValidator(validate_open_enum(False))
98
+ ] = InputHTTPRawCompression.NONE
92
99
  r"""Codec to use to compress the persisted data"""
93
100
 
94
101
  pq_controls: Annotated[
@@ -96,14 +103,14 @@ class InputHTTPRawPq(BaseModel):
96
103
  ] = None
97
104
 
98
105
 
99
- class InputHTTPRawMinimumTLSVersion(str, Enum):
106
+ class InputHTTPRawMinimumTLSVersion(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 InputHTTPRawMaximumTLSVersion(str, Enum):
113
+ class InputHTTPRawMaximumTLSVersion(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 InputHTTPRawTLSSettingsServerSide(BaseModel):
162
169
  ] = None
163
170
 
164
171
  min_version: Annotated[
165
- Optional[InputHTTPRawMinimumTLSVersion], pydantic.Field(alias="minVersion")
172
+ Annotated[
173
+ Optional[InputHTTPRawMinimumTLSVersion],
174
+ PlainValidator(validate_open_enum(False)),
175
+ ],
176
+ pydantic.Field(alias="minVersion"),
166
177
  ] = None
167
178
 
168
179
  max_version: Annotated[
169
- Optional[InputHTTPRawMaximumTLSVersion], pydantic.Field(alias="maxVersion")
180
+ Annotated[
181
+ Optional[InputHTTPRawMaximumTLSVersion],
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 List, Optional
8
11
  from typing_extensions import Annotated, NotRequired, TypedDict
9
12
 
@@ -23,14 +26,14 @@ class InputJournalFilesConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputJournalFilesMode(str, Enum):
29
+ class InputJournalFilesMode(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 InputJournalFilesCompression(str, Enum):
36
+ class InputJournalFilesCompression(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 InputJournalFilesPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputJournalFilesPq(BaseModel):
67
- mode: Optional[InputJournalFilesMode] = InputJournalFilesMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputJournalFilesMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputJournalFilesMode.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 InputJournalFilesPq(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[InputJournalFilesCompression] = InputJournalFilesCompression.NONE
96
+ compress: Annotated[
97
+ Optional[InputJournalFilesCompression],
98
+ PlainValidator(validate_open_enum(False)),
99
+ ] = InputJournalFilesCompression.NONE
92
100
  r"""Codec to use to compress the persisted data"""
93
101
 
94
102
  pq_controls: Annotated[