cribl-control-plane 0.0.16__py3-none-any.whl → 0.0.17__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of cribl-control-plane might be problematic. Click here for more details.

Files changed (133) 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 +4124 -4124
  4. cribl_control_plane/models/createinputop.py +1734 -2771
  5. cribl_control_plane/models/createoutputop.py +2153 -4314
  6. cribl_control_plane/models/healthstatus.py +4 -7
  7. cribl_control_plane/models/inputappscope.py +16 -36
  8. cribl_control_plane/models/inputazureblob.py +8 -19
  9. cribl_control_plane/models/inputcollection.py +6 -15
  10. cribl_control_plane/models/inputconfluentcloud.py +20 -45
  11. cribl_control_plane/models/inputcribl.py +6 -13
  12. cribl_control_plane/models/inputcriblhttp.py +10 -27
  13. cribl_control_plane/models/inputcribllakehttp.py +12 -26
  14. cribl_control_plane/models/inputcriblmetrics.py +6 -14
  15. cribl_control_plane/models/inputcribltcp.py +10 -27
  16. cribl_control_plane/models/inputcrowdstrike.py +12 -28
  17. cribl_control_plane/models/inputdatadogagent.py +10 -28
  18. cribl_control_plane/models/inputdatagen.py +6 -13
  19. cribl_control_plane/models/inputedgeprometheus.py +31 -64
  20. cribl_control_plane/models/inputelastic.py +16 -44
  21. cribl_control_plane/models/inputeventhub.py +8 -19
  22. cribl_control_plane/models/inputexec.py +8 -16
  23. cribl_control_plane/models/inputfile.py +8 -17
  24. cribl_control_plane/models/inputfirehose.py +10 -27
  25. cribl_control_plane/models/inputgooglepubsub.py +8 -23
  26. cribl_control_plane/models/inputgrafana_union.py +35 -81
  27. cribl_control_plane/models/inputhttp.py +10 -27
  28. cribl_control_plane/models/inputhttpraw.py +10 -27
  29. cribl_control_plane/models/inputjournalfiles.py +6 -16
  30. cribl_control_plane/models/inputkafka.py +16 -45
  31. cribl_control_plane/models/inputkinesis.py +16 -42
  32. cribl_control_plane/models/inputkubeevents.py +6 -13
  33. cribl_control_plane/models/inputkubelogs.py +10 -18
  34. cribl_control_plane/models/inputkubemetrics.py +10 -18
  35. cribl_control_plane/models/inputloki.py +12 -33
  36. cribl_control_plane/models/inputmetrics.py +10 -25
  37. cribl_control_plane/models/inputmodeldriventelemetry.py +12 -32
  38. cribl_control_plane/models/inputmsk.py +18 -52
  39. cribl_control_plane/models/inputnetflow.py +6 -15
  40. cribl_control_plane/models/inputoffice365mgmt.py +16 -37
  41. cribl_control_plane/models/inputoffice365msgtrace.py +18 -39
  42. cribl_control_plane/models/inputoffice365service.py +18 -39
  43. cribl_control_plane/models/inputopentelemetry.py +18 -42
  44. cribl_control_plane/models/inputprometheus.py +20 -54
  45. cribl_control_plane/models/inputprometheusrw.py +12 -34
  46. cribl_control_plane/models/inputrawudp.py +6 -15
  47. cribl_control_plane/models/inputs3.py +10 -23
  48. cribl_control_plane/models/inputs3inventory.py +12 -28
  49. cribl_control_plane/models/inputsecuritylake.py +12 -29
  50. cribl_control_plane/models/inputsnmp.py +8 -20
  51. cribl_control_plane/models/inputsplunk.py +14 -37
  52. cribl_control_plane/models/inputsplunkhec.py +12 -33
  53. cribl_control_plane/models/inputsplunksearch.py +16 -37
  54. cribl_control_plane/models/inputsqs.py +12 -31
  55. cribl_control_plane/models/inputsyslog_union.py +29 -53
  56. cribl_control_plane/models/inputsystemmetrics.py +26 -50
  57. cribl_control_plane/models/inputsystemstate.py +10 -18
  58. cribl_control_plane/models/inputtcp.py +12 -33
  59. cribl_control_plane/models/inputtcpjson.py +12 -33
  60. cribl_control_plane/models/inputwef.py +20 -45
  61. cribl_control_plane/models/inputwindowsmetrics.py +26 -46
  62. cribl_control_plane/models/inputwineventlogs.py +12 -22
  63. cribl_control_plane/models/inputwiz.py +10 -25
  64. cribl_control_plane/models/inputzscalerhec.py +12 -33
  65. cribl_control_plane/models/output.py +3 -6
  66. cribl_control_plane/models/outputazureblob.py +20 -52
  67. cribl_control_plane/models/outputazuredataexplorer.py +30 -77
  68. cribl_control_plane/models/outputazureeventhub.py +20 -44
  69. cribl_control_plane/models/outputazurelogs.py +14 -37
  70. cribl_control_plane/models/outputclickhouse.py +22 -59
  71. cribl_control_plane/models/outputcloudwatch.py +12 -33
  72. cribl_control_plane/models/outputconfluentcloud.py +32 -75
  73. cribl_control_plane/models/outputcriblhttp.py +18 -46
  74. cribl_control_plane/models/outputcribllake.py +18 -48
  75. cribl_control_plane/models/outputcribltcp.py +20 -47
  76. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +16 -54
  77. cribl_control_plane/models/outputdatadog.py +22 -50
  78. cribl_control_plane/models/outputdataset.py +20 -48
  79. cribl_control_plane/models/outputdefault.py +2 -5
  80. cribl_control_plane/models/outputdevnull.py +2 -5
  81. cribl_control_plane/models/outputdiskspool.py +4 -9
  82. cribl_control_plane/models/outputdls3.py +26 -72
  83. cribl_control_plane/models/outputdynatracehttp.py +22 -57
  84. cribl_control_plane/models/outputdynatraceotlp.py +24 -59
  85. cribl_control_plane/models/outputelastic.py +20 -45
  86. cribl_control_plane/models/outputelasticcloud.py +14 -40
  87. cribl_control_plane/models/outputexabeam.py +12 -33
  88. cribl_control_plane/models/outputfilesystem.py +16 -41
  89. cribl_control_plane/models/outputgooglechronicle.py +18 -54
  90. cribl_control_plane/models/outputgooglecloudlogging.py +16 -46
  91. cribl_control_plane/models/outputgooglecloudstorage.py +26 -71
  92. cribl_control_plane/models/outputgooglepubsub.py +16 -39
  93. cribl_control_plane/models/{outputgrafanacloud_union.py → outputgrafanacloud.py} +49 -110
  94. cribl_control_plane/models/outputgraphite.py +16 -35
  95. cribl_control_plane/models/outputhoneycomb.py +14 -37
  96. cribl_control_plane/models/outputhumiohec.py +18 -47
  97. cribl_control_plane/models/outputinfluxdb.py +18 -44
  98. cribl_control_plane/models/outputkafka.py +28 -73
  99. cribl_control_plane/models/outputkinesis.py +18 -44
  100. cribl_control_plane/models/outputloki.py +18 -43
  101. cribl_control_plane/models/outputminio.py +26 -69
  102. cribl_control_plane/models/outputmsk.py +30 -81
  103. cribl_control_plane/models/outputnetflow.py +2 -5
  104. cribl_control_plane/models/outputnewrelic.py +20 -45
  105. cribl_control_plane/models/outputnewrelicevents.py +16 -45
  106. cribl_control_plane/models/outputopentelemetry.py +28 -69
  107. cribl_control_plane/models/outputprometheus.py +14 -37
  108. cribl_control_plane/models/outputring.py +10 -21
  109. cribl_control_plane/models/outputrouter.py +2 -5
  110. cribl_control_plane/models/outputs3.py +28 -72
  111. cribl_control_plane/models/outputsecuritylake.py +20 -56
  112. cribl_control_plane/models/outputsentinel.py +20 -49
  113. cribl_control_plane/models/outputsentineloneaisiem.py +20 -54
  114. cribl_control_plane/models/outputservicenow.py +26 -64
  115. cribl_control_plane/models/outputsignalfx.py +16 -39
  116. cribl_control_plane/models/outputsnmp.py +2 -5
  117. cribl_control_plane/models/outputsns.py +16 -40
  118. cribl_control_plane/models/outputsplunk.py +26 -64
  119. cribl_control_plane/models/outputsplunkhec.py +14 -37
  120. cribl_control_plane/models/outputsplunklb.py +36 -83
  121. cribl_control_plane/models/outputsqs.py +18 -45
  122. cribl_control_plane/models/outputstatsd.py +16 -34
  123. cribl_control_plane/models/outputstatsdext.py +14 -33
  124. cribl_control_plane/models/outputsumologic.py +14 -37
  125. cribl_control_plane/models/outputsyslog.py +26 -60
  126. cribl_control_plane/models/outputtcpjson.py +22 -54
  127. cribl_control_plane/models/outputwavefront.py +14 -37
  128. cribl_control_plane/models/outputwebhook.py +24 -60
  129. cribl_control_plane/models/outputxsiam.py +16 -37
  130. {cribl_control_plane-0.0.16.dist-info → cribl_control_plane-0.0.17.dist-info}/METADATA +1 -1
  131. cribl_control_plane-0.0.17.dist-info/RECORD +215 -0
  132. cribl_control_plane-0.0.16.dist-info/RECORD +0 -215
  133. {cribl_control_plane-0.0.16.dist-info → cribl_control_plane-0.0.17.dist-info}/WHEEL +0 -0
@@ -1,17 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class InputEdgePrometheusType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputEdgePrometheusType(str, Enum):
15
12
  EDGE_PROMETHEUS = "edge_prometheus"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputEdgePrometheusConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputEdgePrometheusMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputEdgePrometheusMode(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 InputEdgePrometheusPqCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputEdgePrometheusPqCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputEdgePrometheusPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputEdgePrometheusPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputEdgePrometheusMode], PlainValidator(validate_open_enum(False))
63
- ] = InputEdgePrometheusMode.ALWAYS
58
+ mode: Optional[InputEdgePrometheusMode] = InputEdgePrometheusMode.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 InputEdgePrometheusPq(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[InputEdgePrometheusPqCompression],
89
- PlainValidator(validate_open_enum(False)),
90
- ] = InputEdgePrometheusPqCompression.NONE
82
+ compress: Optional[InputEdgePrometheusPqCompression] = (
83
+ InputEdgePrometheusPqCompression.NONE
84
+ )
91
85
  r"""Codec to use to compress the persisted data"""
92
86
 
93
87
 
94
- class InputEdgePrometheusDiscoveryType(str, Enum, metaclass=utils.OpenEnumMeta):
88
+ class InputEdgePrometheusDiscoveryType(str, Enum):
95
89
  r"""Target discovery mechanism. Use static to manually enter a list of targets."""
96
90
 
97
91
  STATIC = "static"
@@ -101,9 +95,7 @@ class InputEdgePrometheusDiscoveryType(str, Enum, metaclass=utils.OpenEnumMeta):
101
95
  K8S_PODS = "k8s-pods"
102
96
 
103
97
 
104
- class InputEdgePrometheusPersistenceCompression(
105
- str, Enum, metaclass=utils.OpenEnumMeta
106
- ):
98
+ class InputEdgePrometheusPersistenceCompression(str, Enum):
107
99
  r"""Data compression format. Default is gzip."""
108
100
 
109
101
  NONE = "none"
@@ -136,10 +128,9 @@ class InputEdgePrometheusDiskSpooling(BaseModel):
136
128
  max_data_time: Annotated[Optional[str], pydantic.Field(alias="maxDataTime")] = "24h"
137
129
  r"""Maximum amount of time to retain data before older buckets are deleted. Examples: 2h, 4d. Default is 24h."""
138
130
 
139
- compress: Annotated[
140
- Optional[InputEdgePrometheusPersistenceCompression],
141
- PlainValidator(validate_open_enum(False)),
142
- ] = InputEdgePrometheusPersistenceCompression.GZIP
131
+ compress: Optional[InputEdgePrometheusPersistenceCompression] = (
132
+ InputEdgePrometheusPersistenceCompression.GZIP
133
+ )
143
134
  r"""Data compression format. Default is gzip."""
144
135
 
145
136
 
@@ -156,9 +147,7 @@ class InputEdgePrometheusMetadatum(BaseModel):
156
147
  r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
157
148
 
158
149
 
159
- class InputEdgePrometheusAuthTypeAuthenticationMethod(
160
- str, Enum, metaclass=utils.OpenEnumMeta
161
- ):
150
+ class InputEdgePrometheusAuthTypeAuthenticationMethod(str, Enum):
162
151
  r"""Enter credentials directly, or select a stored secret"""
163
152
 
164
153
  MANUAL = "manual"
@@ -166,7 +155,7 @@ class InputEdgePrometheusAuthTypeAuthenticationMethod(
166
155
  KUBERNETES = "kubernetes"
167
156
 
168
157
 
169
- class TargetProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
158
+ class InputEdgePrometheusTargetProtocol(str, Enum):
170
159
  r"""Protocol to use when collecting metrics"""
171
160
 
172
161
  HTTP = "http"
@@ -176,7 +165,7 @@ class TargetProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
176
165
  class TargetTypedDict(TypedDict):
177
166
  host: str
178
167
  r"""Name of host from which to pull metrics."""
179
- protocol: NotRequired[TargetProtocol]
168
+ protocol: NotRequired[InputEdgePrometheusTargetProtocol]
180
169
  r"""Protocol to use when collecting metrics"""
181
170
  port: NotRequired[float]
182
171
  r"""The port number in the metrics URL for discovered targets."""
@@ -188,9 +177,9 @@ class Target(BaseModel):
188
177
  host: str
189
178
  r"""Name of host from which to pull metrics."""
190
179
 
191
- protocol: Annotated[
192
- Optional[TargetProtocol], PlainValidator(validate_open_enum(False))
193
- ] = TargetProtocol.HTTP
180
+ protocol: Optional[InputEdgePrometheusTargetProtocol] = (
181
+ InputEdgePrometheusTargetProtocol.HTTP
182
+ )
194
183
  r"""Protocol to use when collecting metrics"""
195
184
 
196
185
  port: Optional[float] = 9090
@@ -200,7 +189,7 @@ class Target(BaseModel):
200
189
  r"""Path to use when collecting metrics from discovered targets"""
201
190
 
202
191
 
203
- class InputEdgePrometheusRecordType(str, Enum, metaclass=utils.OpenEnumMeta):
192
+ class InputEdgePrometheusRecordType(str, Enum):
204
193
  r"""DNS Record type to resolve"""
205
194
 
206
195
  SRV = "SRV"
@@ -208,7 +197,7 @@ class InputEdgePrometheusRecordType(str, Enum, metaclass=utils.OpenEnumMeta):
208
197
  AAAA = "AAAA"
209
198
 
210
199
 
211
- class ScrapeProtocolProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
200
+ class InputEdgePrometheusScrapeProtocolProtocol(str, Enum):
212
201
  r"""Protocol to use when collecting metrics"""
213
202
 
214
203
  HTTP = "http"
@@ -230,9 +219,7 @@ class InputEdgePrometheusSearchFilter(BaseModel):
230
219
  r"""Search Filter Values, if empty only \"running\" EC2 instances will be returned"""
231
220
 
232
221
 
233
- class InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod(
234
- str, Enum, metaclass=utils.OpenEnumMeta
235
- ):
222
+ class InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod(str, Enum):
236
223
  r"""AWS authentication method. Choose Auto to use IAM roles."""
237
224
 
238
225
  AUTO = "auto"
@@ -240,7 +227,7 @@ class InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod(
240
227
  SECRET = "secret"
241
228
 
242
229
 
243
- class InputEdgePrometheusSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
230
+ class InputEdgePrometheusSignatureVersion(str, Enum):
244
231
  r"""Signature version to use for signing EC2 requests"""
245
232
 
246
233
  V2 = "v2"
@@ -299,7 +286,7 @@ class InputEdgePrometheusTypedDict(TypedDict):
299
286
  r"""List of DNS names to resolve"""
300
287
  record_type: NotRequired[InputEdgePrometheusRecordType]
301
288
  r"""DNS Record type to resolve"""
302
- scrape_protocol: NotRequired[ScrapeProtocolProtocol]
289
+ scrape_protocol: NotRequired[InputEdgePrometheusScrapeProtocolProtocol]
303
290
  r"""Protocol to use when collecting metrics"""
304
291
  scrape_path: NotRequired[str]
305
292
  r"""Path to use when collecting metrics from discovered targets"""
@@ -356,9 +343,7 @@ class InputEdgePrometheus(BaseModel):
356
343
  id: Optional[str] = None
357
344
  r"""Unique ID for this input"""
358
345
 
359
- type: Annotated[
360
- Optional[InputEdgePrometheusType], PlainValidator(validate_open_enum(False))
361
- ] = None
346
+ type: Optional[InputEdgePrometheusType] = None
362
347
 
363
348
  disabled: Optional[bool] = False
364
349
 
@@ -390,10 +375,7 @@ class InputEdgePrometheus(BaseModel):
390
375
  r"""Other dimensions to include in events"""
391
376
 
392
377
  discovery_type: Annotated[
393
- Annotated[
394
- Optional[InputEdgePrometheusDiscoveryType],
395
- PlainValidator(validate_open_enum(False)),
396
- ],
378
+ Optional[InputEdgePrometheusDiscoveryType],
397
379
  pydantic.Field(alias="discoveryType"),
398
380
  ] = InputEdgePrometheusDiscoveryType.STATIC
399
381
  r"""Target discovery mechanism. Use static to manually enter a list of targets."""
@@ -410,10 +392,7 @@ class InputEdgePrometheus(BaseModel):
410
392
  r"""Fields to add to events from this input"""
411
393
 
412
394
  auth_type: Annotated[
413
- Annotated[
414
- Optional[InputEdgePrometheusAuthTypeAuthenticationMethod],
415
- PlainValidator(validate_open_enum(False)),
416
- ],
395
+ Optional[InputEdgePrometheusAuthTypeAuthenticationMethod],
417
396
  pydantic.Field(alias="authType"),
418
397
  ] = InputEdgePrometheusAuthTypeAuthenticationMethod.MANUAL
419
398
  r"""Enter credentials directly, or select a stored secret"""
@@ -426,20 +405,14 @@ class InputEdgePrometheus(BaseModel):
426
405
  r"""List of DNS names to resolve"""
427
406
 
428
407
  record_type: Annotated[
429
- Annotated[
430
- Optional[InputEdgePrometheusRecordType],
431
- PlainValidator(validate_open_enum(False)),
432
- ],
433
- pydantic.Field(alias="recordType"),
408
+ Optional[InputEdgePrometheusRecordType], pydantic.Field(alias="recordType")
434
409
  ] = InputEdgePrometheusRecordType.SRV
435
410
  r"""DNS Record type to resolve"""
436
411
 
437
412
  scrape_protocol: Annotated[
438
- Annotated[
439
- Optional[ScrapeProtocolProtocol], PlainValidator(validate_open_enum(False))
440
- ],
413
+ Optional[InputEdgePrometheusScrapeProtocolProtocol],
441
414
  pydantic.Field(alias="scrapeProtocol"),
442
- ] = ScrapeProtocolProtocol.HTTP
415
+ ] = InputEdgePrometheusScrapeProtocolProtocol.HTTP
443
416
  r"""Protocol to use when collecting metrics"""
444
417
 
445
418
  scrape_path: Annotated[Optional[str], pydantic.Field(alias="scrapePath")] = (
@@ -460,10 +433,7 @@ class InputEdgePrometheus(BaseModel):
460
433
  r"""EC2 Instance Search Filter"""
461
434
 
462
435
  aws_authentication_method: Annotated[
463
- Annotated[
464
- Optional[InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod],
465
- PlainValidator(validate_open_enum(False)),
466
- ],
436
+ Optional[InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod],
467
437
  pydantic.Field(alias="awsAuthenticationMethod"),
468
438
  ] = InputEdgePrometheusAwsAuthenticationMethodAuthenticationMethod.AUTO
469
439
  r"""AWS authentication method. Choose Auto to use IAM roles."""
@@ -479,10 +449,7 @@ class InputEdgePrometheus(BaseModel):
479
449
  r"""EC2 service endpoint. If empty, defaults to the AWS Region-specific endpoint. Otherwise, it must point to EC2-compatible endpoint."""
480
450
 
481
451
  signature_version: Annotated[
482
- Annotated[
483
- Optional[InputEdgePrometheusSignatureVersion],
484
- PlainValidator(validate_open_enum(False)),
485
- ],
452
+ Optional[InputEdgePrometheusSignatureVersion],
486
453
  pydantic.Field(alias="signatureVersion"),
487
454
  ] = InputEdgePrometheusSignatureVersion.V4
488
455
  r"""Signature version to use for signing EC2 requests"""
@@ -1,17 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import Any, List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class InputElasticType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputElasticType(str, Enum):
15
12
  ELASTIC = "elastic"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputElasticConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputElasticMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputElasticMode(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 InputElasticCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputElasticCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputElasticPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputElasticPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputElasticMode], PlainValidator(validate_open_enum(False))
63
- ] = InputElasticMode.ALWAYS
58
+ mode: Optional[InputElasticMode] = InputElasticMode.ALWAYS
64
59
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
65
60
 
66
61
  max_buffer_size: Annotated[
@@ -84,20 +79,18 @@ class InputElasticPq(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[InputElasticCompression], PlainValidator(validate_open_enum(False))
89
- ] = InputElasticCompression.NONE
82
+ compress: Optional[InputElasticCompression] = InputElasticCompression.NONE
90
83
  r"""Codec to use to compress the persisted data"""
91
84
 
92
85
 
93
- class InputElasticMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
86
+ class InputElasticMinimumTLSVersion(str, Enum):
94
87
  TL_SV1 = "TLSv1"
95
88
  TL_SV1_1 = "TLSv1.1"
96
89
  TL_SV1_2 = "TLSv1.2"
97
90
  TL_SV1_3 = "TLSv1.3"
98
91
 
99
92
 
100
- class InputElasticMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
93
+ class InputElasticMaximumTLSVersion(str, Enum):
101
94
  TL_SV1 = "TLSv1"
102
95
  TL_SV1_1 = "TLSv1.1"
103
96
  TL_SV1_2 = "TLSv1.2"
@@ -156,30 +149,22 @@ class InputElasticTLSSettingsServerSide(BaseModel):
156
149
  ] = None
157
150
 
158
151
  min_version: Annotated[
159
- Annotated[
160
- Optional[InputElasticMinimumTLSVersion],
161
- PlainValidator(validate_open_enum(False)),
162
- ],
163
- pydantic.Field(alias="minVersion"),
152
+ Optional[InputElasticMinimumTLSVersion], pydantic.Field(alias="minVersion")
164
153
  ] = None
165
154
 
166
155
  max_version: Annotated[
167
- Annotated[
168
- Optional[InputElasticMaximumTLSVersion],
169
- PlainValidator(validate_open_enum(False)),
170
- ],
171
- pydantic.Field(alias="maxVersion"),
156
+ Optional[InputElasticMaximumTLSVersion], pydantic.Field(alias="maxVersion")
172
157
  ] = None
173
158
 
174
159
 
175
- class InputElasticAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
160
+ class InputElasticAuthenticationType(str, Enum):
176
161
  NONE = "none"
177
162
  BASIC = "basic"
178
163
  CREDENTIALS_SECRET = "credentialsSecret"
179
164
  AUTH_TOKENS = "authTokens"
180
165
 
181
166
 
182
- class InputElasticAPIVersion(str, Enum, metaclass=utils.OpenEnumMeta):
167
+ class InputElasticAPIVersion(str, Enum):
183
168
  r"""The API version to use for communicating with the server"""
184
169
 
185
170
  SIX_DOT_8_DOT_4 = "6.8.4"
@@ -211,7 +196,7 @@ class InputElasticMetadatum(BaseModel):
211
196
  r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
212
197
 
213
198
 
214
- class InputElasticAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
199
+ class InputElasticAuthenticationMethod(str, Enum):
215
200
  r"""Enter credentials directly, or select a stored secret"""
216
201
 
217
202
  NONE = "none"
@@ -255,11 +240,7 @@ class InputElasticProxyMode(BaseModel):
255
240
  r"""Amount of time, in seconds, to wait for a proxy request to complete before canceling it"""
256
241
 
257
242
  auth_type: Annotated[
258
- Annotated[
259
- Optional[InputElasticAuthenticationMethod],
260
- PlainValidator(validate_open_enum(False)),
261
- ],
262
- pydantic.Field(alias="authType"),
243
+ Optional[InputElasticAuthenticationMethod], pydantic.Field(alias="authType")
263
244
  ] = InputElasticAuthenticationMethod.NONE
264
245
  r"""Enter credentials directly, or select a stored secret"""
265
246
 
@@ -337,9 +318,7 @@ class InputElastic(BaseModel):
337
318
  id: Optional[str] = None
338
319
  r"""Unique ID for this input"""
339
320
 
340
- type: Annotated[
341
- Optional[InputElasticType], PlainValidator(validate_open_enum(False))
342
- ] = None
321
+ type: Optional[InputElasticType] = None
343
322
 
344
323
  disabled: Optional[bool] = False
345
324
 
@@ -429,18 +408,11 @@ class InputElastic(BaseModel):
429
408
  r"""Absolute path on which to listen for Elasticsearch API requests. Defaults to /. _bulk will be appended automatically. For example, /myPath becomes /myPath/_bulk. Requests can then be made to either /myPath/_bulk or /myPath/<myIndexName>/_bulk. Other entries are faked as success."""
430
409
 
431
410
  auth_type: Annotated[
432
- Annotated[
433
- Optional[InputElasticAuthenticationType],
434
- PlainValidator(validate_open_enum(False)),
435
- ],
436
- pydantic.Field(alias="authType"),
411
+ Optional[InputElasticAuthenticationType], pydantic.Field(alias="authType")
437
412
  ] = InputElasticAuthenticationType.NONE
438
413
 
439
414
  api_version: Annotated[
440
- Annotated[
441
- Optional[InputElasticAPIVersion], PlainValidator(validate_open_enum(False))
442
- ],
443
- pydantic.Field(alias="apiVersion"),
415
+ Optional[InputElasticAPIVersion], pydantic.Field(alias="apiVersion")
444
416
  ] = InputElasticAPIVersion.EIGHT_DOT_3_DOT_2
445
417
  r"""The API version to use for communicating with the server"""
446
418
 
@@ -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 InputEventhubType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputEventhubType(str, Enum):
15
12
  EVENTHUB = "eventhub"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputEventhubConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputEventhubMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputEventhubMode(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 InputEventhubCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputEventhubCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputEventhubPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputEventhubPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputEventhubMode], PlainValidator(validate_open_enum(False))
63
- ] = InputEventhubMode.ALWAYS
58
+ mode: Optional[InputEventhubMode] = InputEventhubMode.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,13 +79,11 @@ class InputEventhubPq(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[InputEventhubCompression], PlainValidator(validate_open_enum(False))
89
- ] = InputEventhubCompression.NONE
82
+ compress: Optional[InputEventhubCompression] = InputEventhubCompression.NONE
90
83
  r"""Codec to use to compress the persisted data"""
91
84
 
92
85
 
93
- class InputEventhubSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
86
+ class InputEventhubSASLMechanism(str, Enum):
94
87
  PLAIN = "plain"
95
88
  OAUTHBEARER = "oauthbearer"
96
89
 
@@ -107,9 +100,7 @@ class InputEventhubAuthentication(BaseModel):
107
100
 
108
101
  disabled: Optional[bool] = False
109
102
 
110
- mechanism: Annotated[
111
- Optional[InputEventhubSASLMechanism], PlainValidator(validate_open_enum(False))
112
- ] = InputEventhubSASLMechanism.PLAIN
103
+ mechanism: Optional[InputEventhubSASLMechanism] = InputEventhubSASLMechanism.PLAIN
113
104
 
114
105
 
115
106
  class InputEventhubTLSSettingsClientSideTypedDict(TypedDict):
@@ -228,9 +219,7 @@ class InputEventhub(BaseModel):
228
219
  id: Optional[str] = None
229
220
  r"""Unique ID for this input"""
230
221
 
231
- type: Annotated[
232
- Optional[InputEventhubType], PlainValidator(validate_open_enum(False))
233
- ] = None
222
+ type: Optional[InputEventhubType] = None
234
223
 
235
224
  disabled: Optional[bool] = False
236
225
 
@@ -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 InputExecType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputExecType(str, Enum):
15
12
  EXEC = "exec"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputExecConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputExecMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputExecMode(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 InputExecCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputExecCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputExecPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputExecPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputExecMode], PlainValidator(validate_open_enum(False))
63
- ] = InputExecMode.ALWAYS
58
+ mode: Optional[InputExecMode] = InputExecMode.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,13 +79,11 @@ class InputExecPq(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[InputExecCompression], PlainValidator(validate_open_enum(False))
89
- ] = InputExecCompression.NONE
82
+ compress: Optional[InputExecCompression] = InputExecCompression.NONE
90
83
  r"""Codec to use to compress the persisted data"""
91
84
 
92
85
 
93
- class ScheduleType(str, Enum, metaclass=utils.OpenEnumMeta):
86
+ class ScheduleType(str, Enum):
94
87
  r"""Select a schedule type; either an interval (in seconds) or a cron-style schedule."""
95
88
 
96
89
  INTERVAL = "interval"
@@ -148,7 +141,7 @@ class InputExecTypedDict(TypedDict):
148
141
 
149
142
 
150
143
  class InputExec(BaseModel):
151
- type: Annotated[InputExecType, PlainValidator(validate_open_enum(False))]
144
+ type: InputExecType
152
145
 
153
146
  command: str
154
147
  r"""Command to execute; supports Bourne shell (or CMD on Windows) syntax"""
@@ -184,8 +177,7 @@ class InputExec(BaseModel):
184
177
  r"""Maximum number of retry attempts in the event that the command fails"""
185
178
 
186
179
  schedule_type: Annotated[
187
- Annotated[Optional[ScheduleType], PlainValidator(validate_open_enum(False))],
188
- pydantic.Field(alias="scheduleType"),
180
+ Optional[ScheduleType], pydantic.Field(alias="scheduleType")
189
181
  ] = ScheduleType.INTERVAL
190
182
  r"""Select a schedule type; either an interval (in seconds) or a cron-style schedule."""
191
183
 
@@ -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 InputFileType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputFileType(str, Enum):
15
12
  FILE = "file"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputFileConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputFilePqMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputFilePqMode(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 InputFileCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputFileCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputFilePqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputFilePq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputFilePqMode], PlainValidator(validate_open_enum(False))
63
- ] = InputFilePqMode.ALWAYS
58
+ mode: Optional[InputFilePqMode] = InputFilePqMode.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,13 +79,11 @@ class InputFilePq(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[InputFileCompression], PlainValidator(validate_open_enum(False))
89
- ] = InputFileCompression.NONE
82
+ compress: Optional[InputFileCompression] = InputFileCompression.NONE
90
83
  r"""Codec to use to compress the persisted data"""
91
84
 
92
85
 
93
- class InputFileMode(str, Enum, metaclass=utils.OpenEnumMeta):
86
+ class InputFileMode(str, Enum):
94
87
  r"""Choose how to discover files to monitor"""
95
88
 
96
89
  AUTO = "auto"
@@ -168,7 +161,7 @@ class InputFile(BaseModel):
168
161
  id: str
169
162
  r"""Unique ID for this input"""
170
163
 
171
- type: Annotated[InputFileType, PlainValidator(validate_open_enum(False))]
164
+ type: InputFileType
172
165
 
173
166
  disabled: Optional[bool] = False
174
167
 
@@ -194,9 +187,7 @@ class InputFile(BaseModel):
194
187
 
195
188
  pq: Optional[InputFilePq] = None
196
189
 
197
- mode: Annotated[
198
- Optional[InputFileMode], PlainValidator(validate_open_enum(False))
199
- ] = InputFileMode.AUTO
190
+ mode: Optional[InputFileMode] = InputFileMode.AUTO
200
191
  r"""Choose how to discover files to monitor"""
201
192
 
202
193
  interval: Optional[float] = 10