cribl-control-plane 0.0.47__py3-none-any.whl → 0.0.48a1__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 (162) hide show
  1. cribl_control_plane/_version.py +3 -5
  2. cribl_control_plane/errors/healthstatus_error.py +8 -2
  3. cribl_control_plane/models/__init__.py +12 -12
  4. cribl_control_plane/models/cacheconnection.py +10 -2
  5. cribl_control_plane/models/cacheconnectionbackfillstatus.py +2 -1
  6. cribl_control_plane/models/cloudprovider.py +2 -1
  7. cribl_control_plane/models/configgroup.py +7 -2
  8. cribl_control_plane/models/configgroupcloud.py +6 -2
  9. cribl_control_plane/models/createconfiggroupbyproductop.py +8 -2
  10. cribl_control_plane/models/cribllakedataset.py +8 -2
  11. cribl_control_plane/models/datasetmetadata.py +8 -2
  12. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +7 -2
  13. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +4 -2
  14. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +4 -2
  15. cribl_control_plane/models/getconfiggroupbyproductandidop.py +3 -1
  16. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +7 -2
  17. cribl_control_plane/models/getsummaryop.py +7 -2
  18. cribl_control_plane/models/hbcriblinfo.py +19 -3
  19. cribl_control_plane/models/healthstatus.py +7 -4
  20. cribl_control_plane/models/heartbeatmetadata.py +3 -0
  21. cribl_control_plane/models/inputappscope.py +34 -14
  22. cribl_control_plane/models/inputazureblob.py +17 -6
  23. cribl_control_plane/models/inputcollection.py +11 -4
  24. cribl_control_plane/models/inputconfluentcloud.py +47 -20
  25. cribl_control_plane/models/inputcribl.py +11 -4
  26. cribl_control_plane/models/inputcriblhttp.py +23 -8
  27. cribl_control_plane/models/inputcribllakehttp.py +22 -10
  28. cribl_control_plane/models/inputcriblmetrics.py +12 -4
  29. cribl_control_plane/models/inputcribltcp.py +23 -8
  30. cribl_control_plane/models/inputcrowdstrike.py +26 -10
  31. cribl_control_plane/models/inputdatadogagent.py +24 -8
  32. cribl_control_plane/models/inputdatagen.py +11 -4
  33. cribl_control_plane/models/inputedgeprometheus.py +58 -24
  34. cribl_control_plane/models/inputelastic.py +40 -14
  35. cribl_control_plane/models/inputeventhub.py +15 -6
  36. cribl_control_plane/models/inputexec.py +14 -6
  37. cribl_control_plane/models/inputfile.py +15 -6
  38. cribl_control_plane/models/inputfirehose.py +23 -8
  39. cribl_control_plane/models/inputgooglepubsub.py +19 -6
  40. cribl_control_plane/models/inputgrafana.py +67 -24
  41. cribl_control_plane/models/inputhttp.py +23 -8
  42. cribl_control_plane/models/inputhttpraw.py +23 -8
  43. cribl_control_plane/models/inputjournalfiles.py +12 -4
  44. cribl_control_plane/models/inputkafka.py +46 -16
  45. cribl_control_plane/models/inputkinesis.py +38 -14
  46. cribl_control_plane/models/inputkubeevents.py +11 -4
  47. cribl_control_plane/models/inputkubelogs.py +16 -8
  48. cribl_control_plane/models/inputkubemetrics.py +16 -8
  49. cribl_control_plane/models/inputloki.py +29 -10
  50. cribl_control_plane/models/inputmetrics.py +23 -8
  51. cribl_control_plane/models/inputmodeldriventelemetry.py +32 -10
  52. cribl_control_plane/models/inputmsk.py +53 -18
  53. cribl_control_plane/models/inputnetflow.py +11 -4
  54. cribl_control_plane/models/inputoffice365mgmt.py +33 -14
  55. cribl_control_plane/models/inputoffice365msgtrace.py +35 -16
  56. cribl_control_plane/models/inputoffice365service.py +35 -16
  57. cribl_control_plane/models/inputopentelemetry.py +38 -16
  58. cribl_control_plane/models/inputprometheus.py +50 -18
  59. cribl_control_plane/models/inputprometheusrw.py +30 -10
  60. cribl_control_plane/models/inputrawudp.py +11 -4
  61. cribl_control_plane/models/inputs3.py +21 -8
  62. cribl_control_plane/models/inputs3inventory.py +26 -10
  63. cribl_control_plane/models/inputsecuritylake.py +27 -10
  64. cribl_control_plane/models/inputsnmp.py +16 -6
  65. cribl_control_plane/models/inputsplunk.py +33 -12
  66. cribl_control_plane/models/inputsplunkhec.py +29 -10
  67. cribl_control_plane/models/inputsplunksearch.py +33 -14
  68. cribl_control_plane/models/inputsqs.py +27 -10
  69. cribl_control_plane/models/inputsyslog.py +43 -16
  70. cribl_control_plane/models/inputsystemmetrics.py +48 -24
  71. cribl_control_plane/models/inputsystemstate.py +16 -8
  72. cribl_control_plane/models/inputtcp.py +29 -10
  73. cribl_control_plane/models/inputtcpjson.py +29 -10
  74. cribl_control_plane/models/inputwef.py +37 -14
  75. cribl_control_plane/models/inputwindowsmetrics.py +44 -24
  76. cribl_control_plane/models/inputwineventlogs.py +20 -10
  77. cribl_control_plane/models/inputwiz.py +21 -8
  78. cribl_control_plane/models/inputwizwebhook.py +23 -8
  79. cribl_control_plane/models/inputzscalerhec.py +29 -10
  80. cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
  81. cribl_control_plane/models/listconfiggroupbyproductop.py +3 -1
  82. cribl_control_plane/models/masterworkerentry.py +7 -2
  83. cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
  84. cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
  85. cribl_control_plane/models/nodeprovidedinfo.py +3 -0
  86. cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
  87. cribl_control_plane/models/nodeupgradestate.py +2 -1
  88. cribl_control_plane/models/nodeupgradestatus.py +13 -5
  89. cribl_control_plane/models/outputazureblob.py +48 -18
  90. cribl_control_plane/models/outputazuredataexplorer.py +73 -28
  91. cribl_control_plane/models/outputazureeventhub.py +40 -18
  92. cribl_control_plane/models/outputazurelogs.py +35 -12
  93. cribl_control_plane/models/outputclickhouse.py +55 -20
  94. cribl_control_plane/models/outputcloudwatch.py +29 -10
  95. cribl_control_plane/models/outputconfluentcloud.py +77 -32
  96. cribl_control_plane/models/outputcriblhttp.py +44 -16
  97. cribl_control_plane/models/outputcribllake.py +46 -16
  98. cribl_control_plane/models/outputcribltcp.py +45 -18
  99. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +49 -14
  100. cribl_control_plane/models/outputdatadog.py +48 -20
  101. cribl_control_plane/models/outputdataset.py +46 -18
  102. cribl_control_plane/models/outputdiskspool.py +7 -2
  103. cribl_control_plane/models/outputdls3.py +68 -24
  104. cribl_control_plane/models/outputdynatracehttp.py +53 -20
  105. cribl_control_plane/models/outputdynatraceotlp.py +55 -22
  106. cribl_control_plane/models/outputelastic.py +43 -18
  107. cribl_control_plane/models/outputelasticcloud.py +36 -12
  108. cribl_control_plane/models/outputexabeam.py +29 -10
  109. cribl_control_plane/models/outputfilesystem.py +39 -14
  110. cribl_control_plane/models/outputgooglechronicle.py +50 -16
  111. cribl_control_plane/models/outputgooglecloudlogging.py +41 -14
  112. cribl_control_plane/models/outputgooglecloudstorage.py +66 -24
  113. cribl_control_plane/models/outputgooglepubsub.py +31 -10
  114. cribl_control_plane/models/outputgrafanacloud.py +97 -32
  115. cribl_control_plane/models/outputgraphite.py +31 -14
  116. cribl_control_plane/models/outputhoneycomb.py +35 -12
  117. cribl_control_plane/models/outputhumiohec.py +43 -16
  118. cribl_control_plane/models/outputinfluxdb.py +42 -16
  119. cribl_control_plane/models/outputkafka.py +74 -28
  120. cribl_control_plane/models/outputkinesis.py +40 -16
  121. cribl_control_plane/models/outputloki.py +41 -16
  122. cribl_control_plane/models/outputminio.py +65 -24
  123. cribl_control_plane/models/outputmsk.py +82 -30
  124. cribl_control_plane/models/outputnewrelic.py +43 -18
  125. cribl_control_plane/models/outputnewrelicevents.py +41 -14
  126. cribl_control_plane/models/outputopentelemetry.py +67 -26
  127. cribl_control_plane/models/outputprometheus.py +35 -12
  128. cribl_control_plane/models/outputring.py +19 -8
  129. cribl_control_plane/models/outputs3.py +68 -26
  130. cribl_control_plane/models/outputsecuritylake.py +52 -18
  131. cribl_control_plane/models/outputsentinel.py +45 -18
  132. cribl_control_plane/models/outputsentineloneaisiem.py +50 -18
  133. cribl_control_plane/models/outputservicenow.py +60 -24
  134. cribl_control_plane/models/outputsignalfx.py +37 -14
  135. cribl_control_plane/models/outputsns.py +36 -14
  136. cribl_control_plane/models/outputsplunk.py +60 -24
  137. cribl_control_plane/models/outputsplunkhec.py +35 -12
  138. cribl_control_plane/models/outputsplunklb.py +77 -30
  139. cribl_control_plane/models/outputsqs.py +41 -16
  140. cribl_control_plane/models/outputstatsd.py +30 -14
  141. cribl_control_plane/models/outputstatsdext.py +29 -12
  142. cribl_control_plane/models/outputsumologic.py +35 -12
  143. cribl_control_plane/models/outputsyslog.py +58 -24
  144. cribl_control_plane/models/outputtcpjson.py +52 -20
  145. cribl_control_plane/models/outputwavefront.py +35 -12
  146. cribl_control_plane/models/outputwebhook.py +58 -22
  147. cribl_control_plane/models/outputxsiam.py +35 -14
  148. cribl_control_plane/models/productscore.py +2 -1
  149. cribl_control_plane/models/rbacresource.py +2 -1
  150. cribl_control_plane/models/resourcepolicy.py +4 -2
  151. cribl_control_plane/models/routeconf.py +3 -4
  152. cribl_control_plane/models/runnablejobcollection.py +30 -13
  153. cribl_control_plane/models/runnablejobexecutor.py +13 -4
  154. cribl_control_plane/models/runnablejobscheduledsearch.py +7 -2
  155. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +8 -2
  156. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +8 -2
  157. cribl_control_plane/models/workertypes.py +2 -1
  158. {cribl_control_plane-0.0.47.dist-info → cribl_control_plane-0.0.48a1.dist-info}/METADATA +1 -1
  159. {cribl_control_plane-0.0.47.dist-info → cribl_control_plane-0.0.48a1.dist-info}/RECORD +160 -162
  160. {cribl_control_plane-0.0.47.dist-info → cribl_control_plane-0.0.48a1.dist-info}/WHEEL +1 -1
  161. cribl_control_plane/models/appmode.py +0 -13
  162. cribl_control_plane/models/routecloneconf.py +0 -13
@@ -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[
@@ -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 InputKafkaConnection(BaseModel):
23
26
  pipeline: Optional[str] = None
24
27
 
25
28
 
26
- class InputKafkaMode(str, Enum):
29
+ class InputKafkaMode(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 InputKafkaCompression(str, Enum):
36
+ class InputKafkaCompression(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 InputKafkaPqTypedDict(TypedDict):
64
67
 
65
68
 
66
69
  class InputKafkaPq(BaseModel):
67
- mode: Optional[InputKafkaMode] = InputKafkaMode.ALWAYS
70
+ mode: Annotated[
71
+ Optional[InputKafkaMode], PlainValidator(validate_open_enum(False))
72
+ ] = InputKafkaMode.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 InputKafkaPq(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[InputKafkaCompression] = InputKafkaCompression.NONE
96
+ compress: Annotated[
97
+ Optional[InputKafkaCompression], PlainValidator(validate_open_enum(False))
98
+ ] = InputKafkaCompression.NONE
92
99
  r"""Codec to use to compress the persisted data"""
93
100
 
94
101
  pq_controls: Annotated[
@@ -96,7 +103,7 @@ class InputKafkaPq(BaseModel):
96
103
  ] = None
97
104
 
98
105
 
99
- class InputKafkaSchemaType(str, Enum):
106
+ class InputKafkaSchemaType(str, Enum, metaclass=utils.OpenEnumMeta):
100
107
  r"""The schema format used to encode and decode event data"""
101
108
 
102
109
  AVRO = "avro"
@@ -122,14 +129,18 @@ class InputKafkaAuth(BaseModel):
122
129
  r"""Select or create a secret that references your credentials"""
123
130
 
124
131
 
125
- class InputKafkaKafkaSchemaRegistryMinimumTLSVersion(str, Enum):
132
+ class InputKafkaKafkaSchemaRegistryMinimumTLSVersion(
133
+ str, Enum, metaclass=utils.OpenEnumMeta
134
+ ):
126
135
  TL_SV1 = "TLSv1"
127
136
  TL_SV1_1 = "TLSv1.1"
128
137
  TL_SV1_2 = "TLSv1.2"
129
138
  TL_SV1_3 = "TLSv1.3"
130
139
 
131
140
 
132
- class InputKafkaKafkaSchemaRegistryMaximumTLSVersion(str, Enum):
141
+ class InputKafkaKafkaSchemaRegistryMaximumTLSVersion(
142
+ str, Enum, metaclass=utils.OpenEnumMeta
143
+ ):
133
144
  TL_SV1 = "TLSv1"
134
145
  TL_SV1_1 = "TLSv1.1"
135
146
  TL_SV1_2 = "TLSv1.2"
@@ -189,12 +200,18 @@ class InputKafkaKafkaSchemaRegistryTLSSettingsClientSide(BaseModel):
189
200
  r"""Passphrase to use to decrypt private key"""
190
201
 
191
202
  min_version: Annotated[
192
- Optional[InputKafkaKafkaSchemaRegistryMinimumTLSVersion],
203
+ Annotated[
204
+ Optional[InputKafkaKafkaSchemaRegistryMinimumTLSVersion],
205
+ PlainValidator(validate_open_enum(False)),
206
+ ],
193
207
  pydantic.Field(alias="minVersion"),
194
208
  ] = None
195
209
 
196
210
  max_version: Annotated[
197
- Optional[InputKafkaKafkaSchemaRegistryMaximumTLSVersion],
211
+ Annotated[
212
+ Optional[InputKafkaKafkaSchemaRegistryMaximumTLSVersion],
213
+ PlainValidator(validate_open_enum(False)),
214
+ ],
198
215
  pydantic.Field(alias="maxVersion"),
199
216
  ] = None
200
217
 
@@ -225,7 +242,10 @@ class InputKafkaKafkaSchemaRegistryAuthentication(BaseModel):
225
242
  r"""URL for accessing the Confluent Schema Registry. Example: http://localhost:8081. To connect over TLS, use https instead of http."""
226
243
 
227
244
  schema_type: Annotated[
228
- Optional[InputKafkaSchemaType], pydantic.Field(alias="schemaType")
245
+ Annotated[
246
+ Optional[InputKafkaSchemaType], PlainValidator(validate_open_enum(False))
247
+ ],
248
+ pydantic.Field(alias="schemaType"),
229
249
  ] = InputKafkaSchemaType.AVRO
230
250
  r"""The schema format used to encode and decode event data"""
231
251
 
@@ -248,7 +268,7 @@ class InputKafkaKafkaSchemaRegistryAuthentication(BaseModel):
248
268
  tls: Optional[InputKafkaKafkaSchemaRegistryTLSSettingsClientSide] = None
249
269
 
250
270
 
251
- class InputKafkaSASLMechanism(str, Enum):
271
+ class InputKafkaSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
252
272
  PLAIN = "plain"
253
273
  SCRAM_SHA_256 = "scram-sha-256"
254
274
  SCRAM_SHA_512 = "scram-sha-512"
@@ -269,7 +289,9 @@ class InputKafkaAuthentication(BaseModel):
269
289
 
270
290
  disabled: Optional[bool] = True
271
291
 
272
- mechanism: Optional[InputKafkaSASLMechanism] = InputKafkaSASLMechanism.PLAIN
292
+ mechanism: Annotated[
293
+ Optional[InputKafkaSASLMechanism], PlainValidator(validate_open_enum(False))
294
+ ] = InputKafkaSASLMechanism.PLAIN
273
295
 
274
296
  oauth_enabled: Annotated[Optional[bool], pydantic.Field(alias="oauthEnabled")] = (
275
297
  False
@@ -277,14 +299,14 @@ class InputKafkaAuthentication(BaseModel):
277
299
  r"""Enable OAuth authentication"""
278
300
 
279
301
 
280
- class InputKafkaMinimumTLSVersion(str, Enum):
302
+ class InputKafkaMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
281
303
  TL_SV1 = "TLSv1"
282
304
  TL_SV1_1 = "TLSv1.1"
283
305
  TL_SV1_2 = "TLSv1.2"
284
306
  TL_SV1_3 = "TLSv1.3"
285
307
 
286
308
 
287
- class InputKafkaMaximumTLSVersion(str, Enum):
309
+ class InputKafkaMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
288
310
  TL_SV1 = "TLSv1"
289
311
  TL_SV1_1 = "TLSv1.1"
290
312
  TL_SV1_2 = "TLSv1.2"
@@ -344,11 +366,19 @@ class InputKafkaTLSSettingsClientSide(BaseModel):
344
366
  r"""Passphrase to use to decrypt private key"""
345
367
 
346
368
  min_version: Annotated[
347
- Optional[InputKafkaMinimumTLSVersion], pydantic.Field(alias="minVersion")
369
+ Annotated[
370
+ Optional[InputKafkaMinimumTLSVersion],
371
+ PlainValidator(validate_open_enum(False)),
372
+ ],
373
+ pydantic.Field(alias="minVersion"),
348
374
  ] = None
349
375
 
350
376
  max_version: Annotated[
351
- Optional[InputKafkaMaximumTLSVersion], pydantic.Field(alias="maxVersion")
377
+ Annotated[
378
+ Optional[InputKafkaMaximumTLSVersion],
379
+ PlainValidator(validate_open_enum(False)),
380
+ ],
381
+ pydantic.Field(alias="maxVersion"),
352
382
  ] = None
353
383
 
354
384