cribl-control-plane 0.0.16__py3-none-any.whl → 0.0.18__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 (156) hide show
  1. cribl_control_plane/_version.py +3 -3
  2. cribl_control_plane/errors/healthstatus_error.py +2 -8
  3. cribl_control_plane/models/__init__.py +4365 -4124
  4. cribl_control_plane/models/createinputop.py +1734 -2771
  5. cribl_control_plane/models/createoutputop.py +2153 -4314
  6. cribl_control_plane/models/createversioncommitop.py +24 -0
  7. cribl_control_plane/models/createversionpushop.py +23 -0
  8. cribl_control_plane/models/createversionrevertop.py +47 -0
  9. cribl_control_plane/models/createversionsyncop.py +23 -0
  10. cribl_control_plane/models/createversionundoop.py +37 -0
  11. cribl_control_plane/models/getversionbranchop.py +23 -0
  12. cribl_control_plane/models/getversioncountop.py +47 -0
  13. cribl_control_plane/models/getversioncurrentbranchop.py +23 -0
  14. cribl_control_plane/models/getversiondiffop.py +63 -0
  15. cribl_control_plane/models/getversionfilesop.py +48 -0
  16. cribl_control_plane/models/getversioninfoop.py +24 -0
  17. cribl_control_plane/models/getversionshowop.py +63 -0
  18. cribl_control_plane/models/getversionstatusop.py +38 -0
  19. cribl_control_plane/models/gitcommitparams.py +23 -0
  20. cribl_control_plane/models/gitcommitsummary.py +68 -0
  21. cribl_control_plane/models/gitfile.py +20 -0
  22. cribl_control_plane/models/gitfilesresponse.py +22 -0
  23. cribl_control_plane/models/gitinfo.py +23 -0
  24. cribl_control_plane/models/gitrevertparams.py +20 -0
  25. cribl_control_plane/models/gitrevertresult.py +48 -0
  26. cribl_control_plane/models/gitstatusresult.py +73 -0
  27. cribl_control_plane/models/healthstatus.py +4 -7
  28. cribl_control_plane/models/inputappscope.py +16 -36
  29. cribl_control_plane/models/inputazureblob.py +8 -19
  30. cribl_control_plane/models/inputcollection.py +6 -15
  31. cribl_control_plane/models/inputconfluentcloud.py +20 -45
  32. cribl_control_plane/models/inputcribl.py +6 -13
  33. cribl_control_plane/models/inputcriblhttp.py +10 -27
  34. cribl_control_plane/models/inputcribllakehttp.py +12 -26
  35. cribl_control_plane/models/inputcriblmetrics.py +6 -14
  36. cribl_control_plane/models/inputcribltcp.py +10 -27
  37. cribl_control_plane/models/inputcrowdstrike.py +12 -28
  38. cribl_control_plane/models/inputdatadogagent.py +10 -28
  39. cribl_control_plane/models/inputdatagen.py +6 -13
  40. cribl_control_plane/models/inputedgeprometheus.py +31 -64
  41. cribl_control_plane/models/inputelastic.py +16 -44
  42. cribl_control_plane/models/inputeventhub.py +8 -19
  43. cribl_control_plane/models/inputexec.py +8 -16
  44. cribl_control_plane/models/inputfile.py +8 -17
  45. cribl_control_plane/models/inputfirehose.py +10 -27
  46. cribl_control_plane/models/inputgooglepubsub.py +8 -23
  47. cribl_control_plane/models/inputgrafana_union.py +35 -81
  48. cribl_control_plane/models/inputhttp.py +10 -27
  49. cribl_control_plane/models/inputhttpraw.py +10 -27
  50. cribl_control_plane/models/inputjournalfiles.py +6 -16
  51. cribl_control_plane/models/inputkafka.py +16 -45
  52. cribl_control_plane/models/inputkinesis.py +16 -42
  53. cribl_control_plane/models/inputkubeevents.py +6 -13
  54. cribl_control_plane/models/inputkubelogs.py +10 -18
  55. cribl_control_plane/models/inputkubemetrics.py +10 -18
  56. cribl_control_plane/models/inputloki.py +12 -33
  57. cribl_control_plane/models/inputmetrics.py +10 -25
  58. cribl_control_plane/models/inputmodeldriventelemetry.py +12 -32
  59. cribl_control_plane/models/inputmsk.py +18 -52
  60. cribl_control_plane/models/inputnetflow.py +6 -15
  61. cribl_control_plane/models/inputoffice365mgmt.py +16 -37
  62. cribl_control_plane/models/inputoffice365msgtrace.py +18 -39
  63. cribl_control_plane/models/inputoffice365service.py +18 -39
  64. cribl_control_plane/models/inputopentelemetry.py +18 -42
  65. cribl_control_plane/models/inputprometheus.py +20 -54
  66. cribl_control_plane/models/inputprometheusrw.py +12 -34
  67. cribl_control_plane/models/inputrawudp.py +6 -15
  68. cribl_control_plane/models/inputs3.py +10 -23
  69. cribl_control_plane/models/inputs3inventory.py +12 -28
  70. cribl_control_plane/models/inputsecuritylake.py +12 -29
  71. cribl_control_plane/models/inputsnmp.py +8 -20
  72. cribl_control_plane/models/inputsplunk.py +14 -37
  73. cribl_control_plane/models/inputsplunkhec.py +12 -33
  74. cribl_control_plane/models/inputsplunksearch.py +16 -37
  75. cribl_control_plane/models/inputsqs.py +12 -31
  76. cribl_control_plane/models/inputsyslog_union.py +29 -53
  77. cribl_control_plane/models/inputsystemmetrics.py +26 -50
  78. cribl_control_plane/models/inputsystemstate.py +10 -18
  79. cribl_control_plane/models/inputtcp.py +12 -33
  80. cribl_control_plane/models/inputtcpjson.py +12 -33
  81. cribl_control_plane/models/inputwef.py +20 -45
  82. cribl_control_plane/models/inputwindowsmetrics.py +26 -46
  83. cribl_control_plane/models/inputwineventlogs.py +12 -22
  84. cribl_control_plane/models/inputwiz.py +10 -25
  85. cribl_control_plane/models/inputzscalerhec.py +12 -33
  86. cribl_control_plane/models/output.py +3 -6
  87. cribl_control_plane/models/outputazureblob.py +20 -52
  88. cribl_control_plane/models/outputazuredataexplorer.py +30 -77
  89. cribl_control_plane/models/outputazureeventhub.py +20 -44
  90. cribl_control_plane/models/outputazurelogs.py +14 -37
  91. cribl_control_plane/models/outputclickhouse.py +22 -59
  92. cribl_control_plane/models/outputcloudwatch.py +12 -33
  93. cribl_control_plane/models/outputconfluentcloud.py +32 -75
  94. cribl_control_plane/models/outputcriblhttp.py +18 -46
  95. cribl_control_plane/models/outputcribllake.py +18 -48
  96. cribl_control_plane/models/outputcribltcp.py +20 -47
  97. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +16 -54
  98. cribl_control_plane/models/outputdatadog.py +22 -50
  99. cribl_control_plane/models/outputdataset.py +20 -48
  100. cribl_control_plane/models/outputdefault.py +2 -5
  101. cribl_control_plane/models/outputdevnull.py +2 -5
  102. cribl_control_plane/models/outputdiskspool.py +4 -9
  103. cribl_control_plane/models/outputdls3.py +26 -72
  104. cribl_control_plane/models/outputdynatracehttp.py +22 -57
  105. cribl_control_plane/models/outputdynatraceotlp.py +24 -59
  106. cribl_control_plane/models/outputelastic.py +20 -45
  107. cribl_control_plane/models/outputelasticcloud.py +14 -40
  108. cribl_control_plane/models/outputexabeam.py +12 -33
  109. cribl_control_plane/models/outputfilesystem.py +16 -41
  110. cribl_control_plane/models/outputgooglechronicle.py +18 -54
  111. cribl_control_plane/models/outputgooglecloudlogging.py +16 -46
  112. cribl_control_plane/models/outputgooglecloudstorage.py +26 -71
  113. cribl_control_plane/models/outputgooglepubsub.py +16 -39
  114. cribl_control_plane/models/{outputgrafanacloud_union.py → outputgrafanacloud.py} +49 -110
  115. cribl_control_plane/models/outputgraphite.py +16 -35
  116. cribl_control_plane/models/outputhoneycomb.py +14 -37
  117. cribl_control_plane/models/outputhumiohec.py +18 -47
  118. cribl_control_plane/models/outputinfluxdb.py +18 -44
  119. cribl_control_plane/models/outputkafka.py +28 -73
  120. cribl_control_plane/models/outputkinesis.py +18 -44
  121. cribl_control_plane/models/outputloki.py +18 -43
  122. cribl_control_plane/models/outputminio.py +26 -69
  123. cribl_control_plane/models/outputmsk.py +30 -81
  124. cribl_control_plane/models/outputnetflow.py +2 -5
  125. cribl_control_plane/models/outputnewrelic.py +20 -45
  126. cribl_control_plane/models/outputnewrelicevents.py +16 -45
  127. cribl_control_plane/models/outputopentelemetry.py +28 -69
  128. cribl_control_plane/models/outputprometheus.py +14 -37
  129. cribl_control_plane/models/outputring.py +10 -21
  130. cribl_control_plane/models/outputrouter.py +2 -5
  131. cribl_control_plane/models/outputs3.py +28 -72
  132. cribl_control_plane/models/outputsecuritylake.py +20 -56
  133. cribl_control_plane/models/outputsentinel.py +20 -49
  134. cribl_control_plane/models/outputsentineloneaisiem.py +20 -54
  135. cribl_control_plane/models/outputservicenow.py +26 -64
  136. cribl_control_plane/models/outputsignalfx.py +16 -39
  137. cribl_control_plane/models/outputsnmp.py +2 -5
  138. cribl_control_plane/models/outputsns.py +16 -40
  139. cribl_control_plane/models/outputsplunk.py +26 -64
  140. cribl_control_plane/models/outputsplunkhec.py +14 -37
  141. cribl_control_plane/models/outputsplunklb.py +36 -83
  142. cribl_control_plane/models/outputsqs.py +18 -45
  143. cribl_control_plane/models/outputstatsd.py +16 -34
  144. cribl_control_plane/models/outputstatsdext.py +14 -33
  145. cribl_control_plane/models/outputsumologic.py +14 -37
  146. cribl_control_plane/models/outputsyslog.py +26 -60
  147. cribl_control_plane/models/outputtcpjson.py +22 -54
  148. cribl_control_plane/models/outputwavefront.py +14 -37
  149. cribl_control_plane/models/outputwebhook.py +24 -60
  150. cribl_control_plane/models/outputxsiam.py +16 -37
  151. cribl_control_plane/sdk.py +4 -0
  152. cribl_control_plane/versioning.py +2309 -0
  153. {cribl_control_plane-0.0.16.dist-info → cribl_control_plane-0.0.18.dist-info}/METADATA +18 -2
  154. cribl_control_plane-0.0.18.dist-info/RECORD +237 -0
  155. cribl_control_plane-0.0.16.dist-info/RECORD +0 -215
  156. {cribl_control_plane-0.0.16.dist-info → cribl_control_plane-0.0.18.dist-info}/WHEEL +0 -0
@@ -1,17 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class InputMskType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputMskType(str, Enum):
15
12
  MSK = "msk"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputMskConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputMskMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputMskMode(str, Enum):
30
27
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
31
28
 
32
29
  SMART = "smart"
33
30
  ALWAYS = "always"
34
31
 
35
32
 
36
- class InputMskCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputMskCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputMskPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputMskPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputMskMode], PlainValidator(validate_open_enum(False))
63
- ] = InputMskMode.ALWAYS
58
+ mode: Optional[InputMskMode] = InputMskMode.ALWAYS
64
59
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
65
60
 
66
61
  max_buffer_size: Annotated[
@@ -84,9 +79,7 @@ class InputMskPq(BaseModel):
84
79
  path: Optional[str] = "$CRIBL_HOME/state/queues"
85
80
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
86
81
 
87
- compress: Annotated[
88
- Optional[InputMskCompression], PlainValidator(validate_open_enum(False))
89
- ] = InputMskCompression.NONE
82
+ compress: Optional[InputMskCompression] = InputMskCompression.NONE
90
83
  r"""Codec to use to compress the persisted data"""
91
84
 
92
85
 
@@ -122,18 +115,14 @@ class InputMskAuth(BaseModel):
122
115
  r"""Select or create a secret that references your credentials"""
123
116
 
124
117
 
125
- class InputMskKafkaSchemaRegistryMinimumTLSVersion(
126
- str, Enum, metaclass=utils.OpenEnumMeta
127
- ):
118
+ class InputMskKafkaSchemaRegistryMinimumTLSVersion(str, Enum):
128
119
  TL_SV1 = "TLSv1"
129
120
  TL_SV1_1 = "TLSv1.1"
130
121
  TL_SV1_2 = "TLSv1.2"
131
122
  TL_SV1_3 = "TLSv1.3"
132
123
 
133
124
 
134
- class InputMskKafkaSchemaRegistryMaximumTLSVersion(
135
- str, Enum, metaclass=utils.OpenEnumMeta
136
- ):
125
+ class InputMskKafkaSchemaRegistryMaximumTLSVersion(str, Enum):
137
126
  TL_SV1 = "TLSv1"
138
127
  TL_SV1_1 = "TLSv1.1"
139
128
  TL_SV1_2 = "TLSv1.2"
@@ -193,18 +182,12 @@ class InputMskKafkaSchemaRegistryTLSSettingsClientSide(BaseModel):
193
182
  r"""Passphrase to use to decrypt private key"""
194
183
 
195
184
  min_version: Annotated[
196
- Annotated[
197
- Optional[InputMskKafkaSchemaRegistryMinimumTLSVersion],
198
- PlainValidator(validate_open_enum(False)),
199
- ],
185
+ Optional[InputMskKafkaSchemaRegistryMinimumTLSVersion],
200
186
  pydantic.Field(alias="minVersion"),
201
187
  ] = None
202
188
 
203
189
  max_version: Annotated[
204
- Annotated[
205
- Optional[InputMskKafkaSchemaRegistryMaximumTLSVersion],
206
- PlainValidator(validate_open_enum(False)),
207
- ],
190
+ Optional[InputMskKafkaSchemaRegistryMaximumTLSVersion],
208
191
  pydantic.Field(alias="maxVersion"),
209
192
  ] = None
210
193
 
@@ -251,7 +234,7 @@ class InputMskKafkaSchemaRegistryAuthentication(BaseModel):
251
234
  tls: Optional[InputMskKafkaSchemaRegistryTLSSettingsClientSide] = None
252
235
 
253
236
 
254
- class InputMskAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
237
+ class InputMskAuthenticationMethod(str, Enum):
255
238
  r"""AWS authentication method. Choose Auto to use IAM roles."""
256
239
 
257
240
  AUTO = "auto"
@@ -259,21 +242,21 @@ class InputMskAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
259
242
  SECRET = "secret"
260
243
 
261
244
 
262
- class InputMskSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
245
+ class InputMskSignatureVersion(str, Enum):
263
246
  r"""Signature version to use for signing MSK cluster requests"""
264
247
 
265
248
  V2 = "v2"
266
249
  V4 = "v4"
267
250
 
268
251
 
269
- class InputMskMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
252
+ class InputMskMinimumTLSVersion(str, Enum):
270
253
  TL_SV1 = "TLSv1"
271
254
  TL_SV1_1 = "TLSv1.1"
272
255
  TL_SV1_2 = "TLSv1.2"
273
256
  TL_SV1_3 = "TLSv1.3"
274
257
 
275
258
 
276
- class InputMskMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
259
+ class InputMskMaximumTLSVersion(str, Enum):
277
260
  TL_SV1 = "TLSv1"
278
261
  TL_SV1_1 = "TLSv1.1"
279
262
  TL_SV1_2 = "TLSv1.2"
@@ -333,19 +316,11 @@ class InputMskTLSSettingsClientSide(BaseModel):
333
316
  r"""Passphrase to use to decrypt private key"""
334
317
 
335
318
  min_version: Annotated[
336
- Annotated[
337
- Optional[InputMskMinimumTLSVersion],
338
- PlainValidator(validate_open_enum(False)),
339
- ],
340
- pydantic.Field(alias="minVersion"),
319
+ Optional[InputMskMinimumTLSVersion], pydantic.Field(alias="minVersion")
341
320
  ] = None
342
321
 
343
322
  max_version: Annotated[
344
- Annotated[
345
- Optional[InputMskMaximumTLSVersion],
346
- PlainValidator(validate_open_enum(False)),
347
- ],
348
- pydantic.Field(alias="maxVersion"),
323
+ Optional[InputMskMaximumTLSVersion], pydantic.Field(alias="maxVersion")
349
324
  ] = None
350
325
 
351
326
 
@@ -464,9 +439,7 @@ class InputMsk(BaseModel):
464
439
  id: Optional[str] = None
465
440
  r"""Unique ID for this input"""
466
441
 
467
- type: Annotated[
468
- Optional[InputMskType], PlainValidator(validate_open_enum(False))
469
- ] = None
442
+ type: Optional[InputMskType] = None
470
443
 
471
444
  disabled: Optional[bool] = False
472
445
 
@@ -569,10 +542,7 @@ class InputMsk(BaseModel):
569
542
  r"""Specifies a time window during which @{product} can reauthenticate if needed. Creates the window measuring backward from the moment when credentials are set to expire."""
570
543
 
571
544
  aws_authentication_method: Annotated[
572
- Annotated[
573
- Optional[InputMskAuthenticationMethod],
574
- PlainValidator(validate_open_enum(False)),
575
- ],
545
+ Optional[InputMskAuthenticationMethod],
576
546
  pydantic.Field(alias="awsAuthenticationMethod"),
577
547
  ] = InputMskAuthenticationMethod.AUTO
578
548
  r"""AWS authentication method. Choose Auto to use IAM roles."""
@@ -585,11 +555,7 @@ class InputMsk(BaseModel):
585
555
  r"""MSK cluster service endpoint. If empty, defaults to the AWS Region-specific endpoint. Otherwise, it must point to MSK cluster-compatible endpoint."""
586
556
 
587
557
  signature_version: Annotated[
588
- Annotated[
589
- Optional[InputMskSignatureVersion],
590
- PlainValidator(validate_open_enum(False)),
591
- ],
592
- pydantic.Field(alias="signatureVersion"),
558
+ Optional[InputMskSignatureVersion], pydantic.Field(alias="signatureVersion")
593
559
  ] = InputMskSignatureVersion.V4
594
560
  r"""Signature version to use for signing MSK cluster requests"""
595
561
 
@@ -1,17 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class InputNetflowType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputNetflowType(str, Enum):
15
12
  NETFLOW = "netflow"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputNetflowConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputNetflowMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputNetflowMode(str, Enum):
30
27
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
31
28
 
32
29
  SMART = "smart"
33
30
  ALWAYS = "always"
34
31
 
35
32
 
36
- class InputNetflowCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputNetflowCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputNetflowPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputNetflowPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputNetflowMode], PlainValidator(validate_open_enum(False))
63
- ] = InputNetflowMode.ALWAYS
58
+ mode: Optional[InputNetflowMode] = InputNetflowMode.ALWAYS
64
59
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
65
60
 
66
61
  max_buffer_size: Annotated[
@@ -84,9 +79,7 @@ class InputNetflowPq(BaseModel):
84
79
  path: Optional[str] = "$CRIBL_HOME/state/queues"
85
80
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
86
81
 
87
- compress: Annotated[
88
- Optional[InputNetflowCompression], PlainValidator(validate_open_enum(False))
89
- ] = InputNetflowCompression.NONE
82
+ compress: Optional[InputNetflowCompression] = InputNetflowCompression.NONE
90
83
  r"""Codec to use to compress the persisted data"""
91
84
 
92
85
 
@@ -150,9 +143,7 @@ class InputNetflow(BaseModel):
150
143
  id: Optional[str] = None
151
144
  r"""Unique ID for this input"""
152
145
 
153
- type: Annotated[
154
- Optional[InputNetflowType], PlainValidator(validate_open_enum(False))
155
- ] = None
146
+ type: Optional[InputNetflowType] = None
156
147
 
157
148
  disabled: Optional[bool] = False
158
149
 
@@ -1,17 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class InputOffice365MgmtType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputOffice365MgmtType(str, Enum):
15
12
  OFFICE365_MGMT = "office365_mgmt"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputOffice365MgmtConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputOffice365MgmtMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputOffice365MgmtMode(str, Enum):
30
27
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
31
28
 
32
29
  SMART = "smart"
33
30
  ALWAYS = "always"
34
31
 
35
32
 
36
- class InputOffice365MgmtCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputOffice365MgmtCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputOffice365MgmtPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputOffice365MgmtPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputOffice365MgmtMode], PlainValidator(validate_open_enum(False))
63
- ] = InputOffice365MgmtMode.ALWAYS
58
+ mode: Optional[InputOffice365MgmtMode] = InputOffice365MgmtMode.ALWAYS
64
59
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
65
60
 
66
61
  max_buffer_size: Annotated[
@@ -84,14 +79,13 @@ class InputOffice365MgmtPq(BaseModel):
84
79
  path: Optional[str] = "$CRIBL_HOME/state/queues"
85
80
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
86
81
 
87
- compress: Annotated[
88
- Optional[InputOffice365MgmtCompression],
89
- PlainValidator(validate_open_enum(False)),
90
- ] = InputOffice365MgmtCompression.NONE
82
+ compress: Optional[InputOffice365MgmtCompression] = (
83
+ InputOffice365MgmtCompression.NONE
84
+ )
91
85
  r"""Codec to use to compress the persisted data"""
92
86
 
93
87
 
94
- class InputOffice365MgmtSubscriptionPlan(str, Enum, metaclass=utils.OpenEnumMeta):
88
+ class InputOffice365MgmtSubscriptionPlan(str, Enum):
95
89
  r"""Office 365 subscription plan for your organization, typically Office 365 Enterprise"""
96
90
 
97
91
  ENTERPRISE_GCC = "enterprise_gcc"
@@ -113,7 +107,7 @@ class InputOffice365MgmtMetadatum(BaseModel):
113
107
  r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
114
108
 
115
109
 
116
- class InputOffice365MgmtLogLevel(str, Enum, metaclass=utils.OpenEnumMeta):
110
+ class InputOffice365MgmtLogLevel(str, Enum):
117
111
  r"""Collector runtime Log Level"""
118
112
 
119
113
  ERROR = "error"
@@ -143,18 +137,14 @@ class InputOffice365MgmtContentConfig(BaseModel):
143
137
  interval: Optional[float] = None
144
138
 
145
139
  log_level: Annotated[
146
- Annotated[
147
- Optional[InputOffice365MgmtLogLevel],
148
- PlainValidator(validate_open_enum(False)),
149
- ],
150
- pydantic.Field(alias="logLevel"),
140
+ Optional[InputOffice365MgmtLogLevel], pydantic.Field(alias="logLevel")
151
141
  ] = None
152
142
  r"""Collector runtime Log Level"""
153
143
 
154
144
  enabled: Optional[bool] = None
155
145
 
156
146
 
157
- class InputOffice365MgmtRetryType(str, Enum, metaclass=utils.OpenEnumMeta):
147
+ class InputOffice365MgmtRetryType(str, Enum):
158
148
  r"""The algorithm to use when performing HTTP retries"""
159
149
 
160
150
  NONE = "none"
@@ -182,9 +172,7 @@ class InputOffice365MgmtRetryRulesTypedDict(TypedDict):
182
172
 
183
173
 
184
174
  class InputOffice365MgmtRetryRules(BaseModel):
185
- type: Annotated[
186
- Optional[InputOffice365MgmtRetryType], PlainValidator(validate_open_enum(False))
187
- ] = InputOffice365MgmtRetryType.BACKOFF
175
+ type: Optional[InputOffice365MgmtRetryType] = InputOffice365MgmtRetryType.BACKOFF
188
176
  r"""The algorithm to use when performing HTTP retries"""
189
177
 
190
178
  interval: Optional[float] = 1000
@@ -215,7 +203,7 @@ class InputOffice365MgmtRetryRules(BaseModel):
215
203
  r"""Retry request when a connection reset (ECONNRESET) error occurs"""
216
204
 
217
205
 
218
- class InputOffice365MgmtAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
206
+ class InputOffice365MgmtAuthenticationMethod(str, Enum):
219
207
  r"""Enter client secret directly, or select a stored secret"""
220
208
 
221
209
  MANUAL = "manual"
@@ -286,9 +274,7 @@ class InputOffice365Mgmt(BaseModel):
286
274
  id: Optional[str] = None
287
275
  r"""Unique ID for this input"""
288
276
 
289
- type: Annotated[
290
- Optional[InputOffice365MgmtType], PlainValidator(validate_open_enum(False))
291
- ] = None
277
+ type: Optional[InputOffice365MgmtType] = None
292
278
 
293
279
  disabled: Optional[bool] = False
294
280
 
@@ -315,11 +301,7 @@ class InputOffice365Mgmt(BaseModel):
315
301
  pq: Optional[InputOffice365MgmtPq] = None
316
302
 
317
303
  plan_type: Annotated[
318
- Annotated[
319
- Optional[InputOffice365MgmtSubscriptionPlan],
320
- PlainValidator(validate_open_enum(False)),
321
- ],
322
- pydantic.Field(alias="planType"),
304
+ Optional[InputOffice365MgmtSubscriptionPlan], pydantic.Field(alias="planType")
323
305
  ] = InputOffice365MgmtSubscriptionPlan.ENTERPRISE_GCC
324
306
  r"""Office 365 subscription plan for your organization, typically Office 365 Enterprise"""
325
307
 
@@ -369,10 +351,7 @@ class InputOffice365Mgmt(BaseModel):
369
351
  ] = None
370
352
 
371
353
  auth_type: Annotated[
372
- Annotated[
373
- Optional[InputOffice365MgmtAuthenticationMethod],
374
- PlainValidator(validate_open_enum(False)),
375
- ],
354
+ Optional[InputOffice365MgmtAuthenticationMethod],
376
355
  pydantic.Field(alias="authType"),
377
356
  ] = InputOffice365MgmtAuthenticationMethod.MANUAL
378
357
  r"""Enter client secret directly, or select a stored secret"""
@@ -1,17 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class InputOffice365MsgTraceType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputOffice365MsgTraceType(str, Enum):
15
12
  OFFICE365_MSG_TRACE = "office365_msg_trace"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputOffice365MsgTraceConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputOffice365MsgTraceMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputOffice365MsgTraceMode(str, Enum):
30
27
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
31
28
 
32
29
  SMART = "smart"
33
30
  ALWAYS = "always"
34
31
 
35
32
 
36
- class InputOffice365MsgTraceCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputOffice365MsgTraceCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputOffice365MsgTracePqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputOffice365MsgTracePq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputOffice365MsgTraceMode], PlainValidator(validate_open_enum(False))
63
- ] = InputOffice365MsgTraceMode.ALWAYS
58
+ mode: Optional[InputOffice365MsgTraceMode] = InputOffice365MsgTraceMode.ALWAYS
64
59
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
65
60
 
66
61
  max_buffer_size: Annotated[
@@ -84,16 +79,13 @@ class InputOffice365MsgTracePq(BaseModel):
84
79
  path: Optional[str] = "$CRIBL_HOME/state/queues"
85
80
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
86
81
 
87
- compress: Annotated[
88
- Optional[InputOffice365MsgTraceCompression],
89
- PlainValidator(validate_open_enum(False)),
90
- ] = InputOffice365MsgTraceCompression.NONE
82
+ compress: Optional[InputOffice365MsgTraceCompression] = (
83
+ InputOffice365MsgTraceCompression.NONE
84
+ )
91
85
  r"""Codec to use to compress the persisted data"""
92
86
 
93
87
 
94
- class InputOffice365MsgTraceAuthenticationMethod(
95
- str, Enum, metaclass=utils.OpenEnumMeta
96
- ):
88
+ class InputOffice365MsgTraceAuthenticationMethod(str, Enum):
97
89
  r"""Select authentication method."""
98
90
 
99
91
  MANUAL = "manual"
@@ -103,7 +95,7 @@ class InputOffice365MsgTraceAuthenticationMethod(
103
95
  OAUTH_CERT = "oauthCert"
104
96
 
105
97
 
106
- class InputOffice365MsgTraceLogLevel(str, Enum, metaclass=utils.OpenEnumMeta):
98
+ class InputOffice365MsgTraceLogLevel(str, Enum):
107
99
  r"""Log Level (verbosity) for collection runtime behavior."""
108
100
 
109
101
  ERROR = "error"
@@ -126,7 +118,7 @@ class InputOffice365MsgTraceMetadatum(BaseModel):
126
118
  r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
127
119
 
128
120
 
129
- class InputOffice365MsgTraceRetryType(str, Enum, metaclass=utils.OpenEnumMeta):
121
+ class InputOffice365MsgTraceRetryType(str, Enum):
130
122
  r"""The algorithm to use when performing HTTP retries"""
131
123
 
132
124
  NONE = "none"
@@ -154,10 +146,9 @@ class InputOffice365MsgTraceRetryRulesTypedDict(TypedDict):
154
146
 
155
147
 
156
148
  class InputOffice365MsgTraceRetryRules(BaseModel):
157
- type: Annotated[
158
- Optional[InputOffice365MsgTraceRetryType],
159
- PlainValidator(validate_open_enum(False)),
160
- ] = InputOffice365MsgTraceRetryType.BACKOFF
149
+ type: Optional[InputOffice365MsgTraceRetryType] = (
150
+ InputOffice365MsgTraceRetryType.BACKOFF
151
+ )
161
152
  r"""The algorithm to use when performing HTTP retries"""
162
153
 
163
154
  interval: Optional[float] = 1000
@@ -188,7 +179,7 @@ class InputOffice365MsgTraceRetryRules(BaseModel):
188
179
  r"""Retry request when a connection reset (ECONNRESET) error occurs"""
189
180
 
190
181
 
191
- class InputOffice365MsgTraceSubscriptionPlan(str, Enum, metaclass=utils.OpenEnumMeta):
182
+ class InputOffice365MsgTraceSubscriptionPlan(str, Enum):
192
183
  r"""Office 365 subscription plan for your organization, typically Office 365 Enterprise"""
193
184
 
194
185
  ENTERPRISE_GCC = "enterprise_gcc"
@@ -301,9 +292,7 @@ class InputOffice365MsgTrace(BaseModel):
301
292
  id: Optional[str] = None
302
293
  r"""Unique ID for this input"""
303
294
 
304
- type: Annotated[
305
- Optional[InputOffice365MsgTraceType], PlainValidator(validate_open_enum(False))
306
- ] = None
295
+ type: Optional[InputOffice365MsgTraceType] = None
307
296
 
308
297
  disabled: Optional[bool] = False
309
298
 
@@ -352,10 +341,7 @@ class InputOffice365MsgTrace(BaseModel):
352
341
  r"""Disables time filtering of events when a date range is specified."""
353
342
 
354
343
  auth_type: Annotated[
355
- Annotated[
356
- Optional[InputOffice365MsgTraceAuthenticationMethod],
357
- PlainValidator(validate_open_enum(False)),
358
- ],
344
+ Optional[InputOffice365MsgTraceAuthenticationMethod],
359
345
  pydantic.Field(alias="authType"),
360
346
  ] = InputOffice365MsgTraceAuthenticationMethod.OAUTH
361
347
  r"""Select authentication method."""
@@ -371,11 +357,7 @@ class InputOffice365MsgTrace(BaseModel):
371
357
  r"""Maximum number of times a task can be rescheduled"""
372
358
 
373
359
  log_level: Annotated[
374
- Annotated[
375
- Optional[InputOffice365MsgTraceLogLevel],
376
- PlainValidator(validate_open_enum(False)),
377
- ],
378
- pydantic.Field(alias="logLevel"),
360
+ Optional[InputOffice365MsgTraceLogLevel], pydantic.Field(alias="logLevel")
379
361
  ] = InputOffice365MsgTraceLogLevel.INFO
380
362
  r"""Log Level (verbosity) for collection runtime behavior."""
381
363
 
@@ -433,10 +415,7 @@ class InputOffice365MsgTrace(BaseModel):
433
415
  r"""Resource to pass in the OAuth request parameter."""
434
416
 
435
417
  plan_type: Annotated[
436
- Annotated[
437
- Optional[InputOffice365MsgTraceSubscriptionPlan],
438
- PlainValidator(validate_open_enum(False)),
439
- ],
418
+ Optional[InputOffice365MsgTraceSubscriptionPlan],
440
419
  pydantic.Field(alias="planType"),
441
420
  ] = InputOffice365MsgTraceSubscriptionPlan.ENTERPRISE_GCC
442
421
  r"""Office 365 subscription plan for your organization, typically Office 365 Enterprise"""