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 InputOffice365ServiceType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputOffice365ServiceType(str, Enum):
15
12
  OFFICE365_SERVICE = "office365_service"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputOffice365ServiceConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputOffice365ServiceMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputOffice365ServiceMode(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 InputOffice365ServiceCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputOffice365ServiceCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputOffice365ServicePqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputOffice365ServicePq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputOffice365ServiceMode], PlainValidator(validate_open_enum(False))
63
- ] = InputOffice365ServiceMode.ALWAYS
58
+ mode: Optional[InputOffice365ServiceMode] = InputOffice365ServiceMode.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 InputOffice365ServicePq(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[InputOffice365ServiceCompression],
89
- PlainValidator(validate_open_enum(False)),
90
- ] = InputOffice365ServiceCompression.NONE
82
+ compress: Optional[InputOffice365ServiceCompression] = (
83
+ InputOffice365ServiceCompression.NONE
84
+ )
91
85
  r"""Codec to use to compress the persisted data"""
92
86
 
93
87
 
94
- class InputOffice365ServiceSubscriptionPlan(str, Enum, metaclass=utils.OpenEnumMeta):
88
+ class InputOffice365ServiceSubscriptionPlan(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 InputOffice365ServiceMetadatum(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 InputOffice365ServiceLogLevel(str, Enum, metaclass=utils.OpenEnumMeta):
110
+ class InputOffice365ServiceLogLevel(str, Enum):
117
111
  r"""Collector runtime Log Level"""
118
112
 
119
113
  ERROR = "error"
@@ -143,18 +137,14 @@ class InputOffice365ServiceContentConfig(BaseModel):
143
137
  interval: Optional[float] = None
144
138
 
145
139
  log_level: Annotated[
146
- Annotated[
147
- Optional[InputOffice365ServiceLogLevel],
148
- PlainValidator(validate_open_enum(False)),
149
- ],
150
- pydantic.Field(alias="logLevel"),
140
+ Optional[InputOffice365ServiceLogLevel], 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 InputOffice365ServiceRetryType(str, Enum, metaclass=utils.OpenEnumMeta):
147
+ class InputOffice365ServiceRetryType(str, Enum):
158
148
  r"""The algorithm to use when performing HTTP retries"""
159
149
 
160
150
  NONE = "none"
@@ -182,10 +172,9 @@ class InputOffice365ServiceRetryRulesTypedDict(TypedDict):
182
172
 
183
173
 
184
174
  class InputOffice365ServiceRetryRules(BaseModel):
185
- type: Annotated[
186
- Optional[InputOffice365ServiceRetryType],
187
- PlainValidator(validate_open_enum(False)),
188
- ] = InputOffice365ServiceRetryType.BACKOFF
175
+ type: Optional[InputOffice365ServiceRetryType] = (
176
+ InputOffice365ServiceRetryType.BACKOFF
177
+ )
189
178
  r"""The algorithm to use when performing HTTP retries"""
190
179
 
191
180
  interval: Optional[float] = 1000
@@ -216,9 +205,7 @@ class InputOffice365ServiceRetryRules(BaseModel):
216
205
  r"""Retry request when a connection reset (ECONNRESET) error occurs"""
217
206
 
218
207
 
219
- class InputOffice365ServiceAuthenticationMethod(
220
- str, Enum, metaclass=utils.OpenEnumMeta
221
- ):
208
+ class InputOffice365ServiceAuthenticationMethod(str, Enum):
222
209
  r"""Enter client secret directly, or select a stored secret"""
223
210
 
224
211
  MANUAL = "manual"
@@ -285,9 +272,7 @@ class InputOffice365Service(BaseModel):
285
272
  id: Optional[str] = None
286
273
  r"""Unique ID for this input"""
287
274
 
288
- type: Annotated[
289
- Optional[InputOffice365ServiceType], PlainValidator(validate_open_enum(False))
290
- ] = None
275
+ type: Optional[InputOffice365ServiceType] = None
291
276
 
292
277
  disabled: Optional[bool] = False
293
278
 
@@ -314,10 +299,7 @@ class InputOffice365Service(BaseModel):
314
299
  pq: Optional[InputOffice365ServicePq] = None
315
300
 
316
301
  plan_type: Annotated[
317
- Annotated[
318
- Optional[InputOffice365ServiceSubscriptionPlan],
319
- PlainValidator(validate_open_enum(False)),
320
- ],
302
+ Optional[InputOffice365ServiceSubscriptionPlan],
321
303
  pydantic.Field(alias="planType"),
322
304
  ] = InputOffice365ServiceSubscriptionPlan.ENTERPRISE_GCC
323
305
  r"""Office 365 subscription plan for your organization, typically Office 365 Enterprise"""
@@ -360,10 +342,7 @@ class InputOffice365Service(BaseModel):
360
342
  ] = None
361
343
 
362
344
  auth_type: Annotated[
363
- Annotated[
364
- Optional[InputOffice365ServiceAuthenticationMethod],
365
- PlainValidator(validate_open_enum(False)),
366
- ],
345
+ Optional[InputOffice365ServiceAuthenticationMethod],
367
346
  pydantic.Field(alias="authType"),
368
347
  ] = InputOffice365ServiceAuthenticationMethod.MANUAL
369
348
  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 Any, List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class InputOpenTelemetryType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputOpenTelemetryType(str, Enum):
15
12
  OPEN_TELEMETRY = "open_telemetry"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputOpenTelemetryConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputOpenTelemetryMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputOpenTelemetryMode(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 InputOpenTelemetryCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputOpenTelemetryCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputOpenTelemetryPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputOpenTelemetryPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputOpenTelemetryMode], PlainValidator(validate_open_enum(False))
63
- ] = InputOpenTelemetryMode.ALWAYS
58
+ mode: Optional[InputOpenTelemetryMode] = InputOpenTelemetryMode.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,21 +79,20 @@ class InputOpenTelemetryPq(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[InputOpenTelemetryCompression],
89
- PlainValidator(validate_open_enum(False)),
90
- ] = InputOpenTelemetryCompression.NONE
82
+ compress: Optional[InputOpenTelemetryCompression] = (
83
+ InputOpenTelemetryCompression.NONE
84
+ )
91
85
  r"""Codec to use to compress the persisted data"""
92
86
 
93
87
 
94
- class InputOpenTelemetryMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
88
+ class InputOpenTelemetryMinimumTLSVersion(str, Enum):
95
89
  TL_SV1 = "TLSv1"
96
90
  TL_SV1_1 = "TLSv1.1"
97
91
  TL_SV1_2 = "TLSv1.2"
98
92
  TL_SV1_3 = "TLSv1.3"
99
93
 
100
94
 
101
- class InputOpenTelemetryMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
95
+ class InputOpenTelemetryMaximumTLSVersion(str, Enum):
102
96
  TL_SV1 = "TLSv1"
103
97
  TL_SV1_1 = "TLSv1.1"
104
98
  TL_SV1_2 = "TLSv1.2"
@@ -157,37 +151,31 @@ class InputOpenTelemetryTLSSettingsServerSide(BaseModel):
157
151
  ] = None
158
152
 
159
153
  min_version: Annotated[
160
- Annotated[
161
- Optional[InputOpenTelemetryMinimumTLSVersion],
162
- PlainValidator(validate_open_enum(False)),
163
- ],
154
+ Optional[InputOpenTelemetryMinimumTLSVersion],
164
155
  pydantic.Field(alias="minVersion"),
165
156
  ] = None
166
157
 
167
158
  max_version: Annotated[
168
- Annotated[
169
- Optional[InputOpenTelemetryMaximumTLSVersion],
170
- PlainValidator(validate_open_enum(False)),
171
- ],
159
+ Optional[InputOpenTelemetryMaximumTLSVersion],
172
160
  pydantic.Field(alias="maxVersion"),
173
161
  ] = None
174
162
 
175
163
 
176
- class InputOpenTelemetryProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
164
+ class InputOpenTelemetryProtocol(str, Enum):
177
165
  r"""Select whether to leverage gRPC or HTTP for OpenTelemetry"""
178
166
 
179
167
  GRPC = "grpc"
180
168
  HTTP = "http"
181
169
 
182
170
 
183
- class InputOpenTelemetryOTLPVersion(str, Enum, metaclass=utils.OpenEnumMeta):
171
+ class InputOpenTelemetryOTLPVersion(str, Enum):
184
172
  r"""The version of OTLP Protobuf definitions to use when interpreting received data"""
185
173
 
186
174
  ZERO_DOT_10_DOT_0 = "0.10.0"
187
175
  ONE_DOT_3_DOT_1 = "1.3.1"
188
176
 
189
177
 
190
- class InputOpenTelemetryAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
178
+ class InputOpenTelemetryAuthenticationType(str, Enum):
191
179
  r"""OpenTelemetry authentication type"""
192
180
 
193
181
  NONE = "none"
@@ -330,9 +318,7 @@ class InputOpenTelemetry(BaseModel):
330
318
  id: Optional[str] = None
331
319
  r"""Unique ID for this input"""
332
320
 
333
- type: Annotated[
334
- Optional[InputOpenTelemetryType], PlainValidator(validate_open_enum(False))
335
- ] = None
321
+ type: Optional[InputOpenTelemetryType] = None
336
322
 
337
323
  disabled: Optional[bool] = False
338
324
 
@@ -418,9 +404,7 @@ class InputOpenTelemetry(BaseModel):
418
404
  ] = "/^$/"
419
405
  r"""Messages from matched IP addresses will be ignored. This takes precedence over the allowlist."""
420
406
 
421
- protocol: Annotated[
422
- Optional[InputOpenTelemetryProtocol], PlainValidator(validate_open_enum(False))
423
- ] = InputOpenTelemetryProtocol.GRPC
407
+ protocol: Optional[InputOpenTelemetryProtocol] = InputOpenTelemetryProtocol.GRPC
424
408
  r"""Select whether to leverage gRPC or HTTP for OpenTelemetry"""
425
409
 
426
410
  extract_spans: Annotated[Optional[bool], pydantic.Field(alias="extractSpans")] = (
@@ -434,20 +418,12 @@ class InputOpenTelemetry(BaseModel):
434
418
  r"""Enable to extract each incoming Gauge or IntGauge metric to multiple events, one per data point"""
435
419
 
436
420
  otlp_version: Annotated[
437
- Annotated[
438
- Optional[InputOpenTelemetryOTLPVersion],
439
- PlainValidator(validate_open_enum(False)),
440
- ],
441
- pydantic.Field(alias="otlpVersion"),
421
+ Optional[InputOpenTelemetryOTLPVersion], pydantic.Field(alias="otlpVersion")
442
422
  ] = InputOpenTelemetryOTLPVersion.ZERO_DOT_10_DOT_0
443
423
  r"""The version of OTLP Protobuf definitions to use when interpreting received data"""
444
424
 
445
425
  auth_type: Annotated[
446
- Annotated[
447
- Optional[InputOpenTelemetryAuthenticationType],
448
- PlainValidator(validate_open_enum(False)),
449
- ],
450
- pydantic.Field(alias="authType"),
426
+ Optional[InputOpenTelemetryAuthenticationType], pydantic.Field(alias="authType")
451
427
  ] = InputOpenTelemetryAuthenticationType.NONE
452
428
  r"""OpenTelemetry authentication type"""
453
429
 
@@ -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 InputPrometheusType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputPrometheusType(str, Enum):
15
12
  PROMETHEUS = "prometheus"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputPrometheusConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputPrometheusMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputPrometheusMode(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 InputPrometheusCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputPrometheusCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputPrometheusPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputPrometheusPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputPrometheusMode], PlainValidator(validate_open_enum(False))
63
- ] = InputPrometheusMode.ALWAYS
58
+ mode: Optional[InputPrometheusMode] = InputPrometheusMode.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 InputPrometheusPq(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[InputPrometheusCompression], PlainValidator(validate_open_enum(False))
89
- ] = InputPrometheusCompression.NONE
82
+ compress: Optional[InputPrometheusCompression] = InputPrometheusCompression.NONE
90
83
  r"""Codec to use to compress the persisted data"""
91
84
 
92
85
 
93
- class InputPrometheusDiscoveryType(str, Enum, metaclass=utils.OpenEnumMeta):
86
+ class InputPrometheusDiscoveryType(str, Enum):
94
87
  r"""Target discovery mechanism. Use static to manually enter a list of targets."""
95
88
 
96
89
  STATIC = "static"
@@ -98,7 +91,7 @@ class InputPrometheusDiscoveryType(str, Enum, metaclass=utils.OpenEnumMeta):
98
91
  EC2 = "ec2"
99
92
 
100
93
 
101
- class InputPrometheusLogLevel(str, Enum, metaclass=utils.OpenEnumMeta):
94
+ class InputPrometheusLogLevel(str, Enum):
102
95
  r"""Collector runtime Log Level"""
103
96
 
104
97
  ERROR = "error"
@@ -120,16 +113,14 @@ class InputPrometheusMetadatum(BaseModel):
120
113
  r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
121
114
 
122
115
 
123
- class InputPrometheusAuthTypeAuthenticationMethod(
124
- str, Enum, metaclass=utils.OpenEnumMeta
125
- ):
116
+ class InputPrometheusAuthTypeAuthenticationMethod(str, Enum):
126
117
  r"""Enter credentials directly, or select a stored secret"""
127
118
 
128
119
  MANUAL = "manual"
129
120
  SECRET = "secret"
130
121
 
131
122
 
132
- class InputPrometheusRecordType(str, Enum, metaclass=utils.OpenEnumMeta):
123
+ class InputPrometheusRecordType(str, Enum):
133
124
  r"""DNS Record type to resolve"""
134
125
 
135
126
  SRV = "SRV"
@@ -137,7 +128,7 @@ class InputPrometheusRecordType(str, Enum, metaclass=utils.OpenEnumMeta):
137
128
  AAAA = "AAAA"
138
129
 
139
130
 
140
- class MetricsProtocol(str, Enum, metaclass=utils.OpenEnumMeta):
131
+ class MetricsProtocol(str, Enum):
141
132
  r"""Protocol to use when collecting metrics"""
142
133
 
143
134
  HTTP = "http"
@@ -159,9 +150,7 @@ class InputPrometheusSearchFilter(BaseModel):
159
150
  r"""Search Filter Values, if empty only \"running\" EC2 instances will be returned"""
160
151
 
161
152
 
162
- class InputPrometheusAwsAuthenticationMethodAuthenticationMethod(
163
- str, Enum, metaclass=utils.OpenEnumMeta
164
- ):
153
+ class InputPrometheusAwsAuthenticationMethodAuthenticationMethod(str, Enum):
165
154
  r"""AWS authentication method. Choose Auto to use IAM roles."""
166
155
 
167
156
  AUTO = "auto"
@@ -169,7 +158,7 @@ class InputPrometheusAwsAuthenticationMethodAuthenticationMethod(
169
158
  SECRET = "secret"
170
159
 
171
160
 
172
- class InputPrometheusSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
161
+ class InputPrometheusSignatureVersion(str, Enum):
173
162
  r"""Signature version to use for signing EC2 requests"""
174
163
 
175
164
  V2 = "v2"
@@ -268,9 +257,7 @@ class InputPrometheus(BaseModel):
268
257
  id: Optional[str] = None
269
258
  r"""Unique ID for this input"""
270
259
 
271
- type: Annotated[
272
- Optional[InputPrometheusType], PlainValidator(validate_open_enum(False))
273
- ] = None
260
+ type: Optional[InputPrometheusType] = None
274
261
 
275
262
  disabled: Optional[bool] = False
276
263
 
@@ -302,11 +289,7 @@ class InputPrometheus(BaseModel):
302
289
  r"""Other dimensions to include in events"""
303
290
 
304
291
  discovery_type: Annotated[
305
- Annotated[
306
- Optional[InputPrometheusDiscoveryType],
307
- PlainValidator(validate_open_enum(False)),
308
- ],
309
- pydantic.Field(alias="discoveryType"),
292
+ Optional[InputPrometheusDiscoveryType], pydantic.Field(alias="discoveryType")
310
293
  ] = InputPrometheusDiscoveryType.STATIC
311
294
  r"""Target discovery mechanism. Use static to manually enter a list of targets."""
312
295
 
@@ -314,10 +297,7 @@ class InputPrometheus(BaseModel):
314
297
  r"""How often in minutes to scrape targets for metrics, 60 must be evenly divisible by the value or save will fail."""
315
298
 
316
299
  log_level: Annotated[
317
- Annotated[
318
- Optional[InputPrometheusLogLevel], PlainValidator(validate_open_enum(False))
319
- ],
320
- pydantic.Field(alias="logLevel"),
300
+ Optional[InputPrometheusLogLevel], pydantic.Field(alias="logLevel")
321
301
  ] = InputPrometheusLogLevel.INFO
322
302
  r"""Collector runtime Log Level"""
323
303
 
@@ -351,10 +331,7 @@ class InputPrometheus(BaseModel):
351
331
  r"""Fields to add to events from this input"""
352
332
 
353
333
  auth_type: Annotated[
354
- Annotated[
355
- Optional[InputPrometheusAuthTypeAuthenticationMethod],
356
- PlainValidator(validate_open_enum(False)),
357
- ],
334
+ Optional[InputPrometheusAuthTypeAuthenticationMethod],
358
335
  pydantic.Field(alias="authType"),
359
336
  ] = InputPrometheusAuthTypeAuthenticationMethod.MANUAL
360
337
  r"""Enter credentials directly, or select a stored secret"""
@@ -370,17 +347,12 @@ class InputPrometheus(BaseModel):
370
347
  r"""List of DNS names to resolve"""
371
348
 
372
349
  record_type: Annotated[
373
- Annotated[
374
- Optional[InputPrometheusRecordType],
375
- PlainValidator(validate_open_enum(False)),
376
- ],
377
- pydantic.Field(alias="recordType"),
350
+ Optional[InputPrometheusRecordType], pydantic.Field(alias="recordType")
378
351
  ] = InputPrometheusRecordType.SRV
379
352
  r"""DNS Record type to resolve"""
380
353
 
381
354
  scrape_protocol: Annotated[
382
- Annotated[Optional[MetricsProtocol], PlainValidator(validate_open_enum(False))],
383
- pydantic.Field(alias="scrapeProtocol"),
355
+ Optional[MetricsProtocol], pydantic.Field(alias="scrapeProtocol")
384
356
  ] = MetricsProtocol.HTTP
385
357
  r"""Protocol to use when collecting metrics"""
386
358
 
@@ -402,10 +374,7 @@ class InputPrometheus(BaseModel):
402
374
  r"""EC2 Instance Search Filter"""
403
375
 
404
376
  aws_authentication_method: Annotated[
405
- Annotated[
406
- Optional[InputPrometheusAwsAuthenticationMethodAuthenticationMethod],
407
- PlainValidator(validate_open_enum(False)),
408
- ],
377
+ Optional[InputPrometheusAwsAuthenticationMethodAuthenticationMethod],
409
378
  pydantic.Field(alias="awsAuthenticationMethod"),
410
379
  ] = InputPrometheusAwsAuthenticationMethodAuthenticationMethod.AUTO
411
380
  r"""AWS authentication method. Choose Auto to use IAM roles."""
@@ -421,10 +390,7 @@ class InputPrometheus(BaseModel):
421
390
  r"""EC2 service endpoint. If empty, defaults to the AWS Region-specific endpoint. Otherwise, it must point to EC2-compatible endpoint."""
422
391
 
423
392
  signature_version: Annotated[
424
- Annotated[
425
- Optional[InputPrometheusSignatureVersion],
426
- PlainValidator(validate_open_enum(False)),
427
- ],
393
+ Optional[InputPrometheusSignatureVersion],
428
394
  pydantic.Field(alias="signatureVersion"),
429
395
  ] = InputPrometheusSignatureVersion.V4
430
396
  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 InputPrometheusRwType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class InputPrometheusRwType(str, Enum):
15
12
  PROMETHEUS_RW = "prometheus_rw"
16
13
 
17
14
 
@@ -26,14 +23,14 @@ class InputPrometheusRwConnection(BaseModel):
26
23
  pipeline: Optional[str] = None
27
24
 
28
25
 
29
- class InputPrometheusRwMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class InputPrometheusRwMode(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 InputPrometheusRwCompression(str, Enum, metaclass=utils.OpenEnumMeta):
33
+ class InputPrometheusRwCompression(str, Enum):
37
34
  r"""Codec to use to compress the persisted data"""
38
35
 
39
36
  NONE = "none"
@@ -58,9 +55,7 @@ class InputPrometheusRwPqTypedDict(TypedDict):
58
55
 
59
56
 
60
57
  class InputPrometheusRwPq(BaseModel):
61
- mode: Annotated[
62
- Optional[InputPrometheusRwMode], PlainValidator(validate_open_enum(False))
63
- ] = InputPrometheusRwMode.ALWAYS
58
+ mode: Optional[InputPrometheusRwMode] = InputPrometheusRwMode.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,21 +79,18 @@ class InputPrometheusRwPq(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[InputPrometheusRwCompression],
89
- PlainValidator(validate_open_enum(False)),
90
- ] = InputPrometheusRwCompression.NONE
82
+ compress: Optional[InputPrometheusRwCompression] = InputPrometheusRwCompression.NONE
91
83
  r"""Codec to use to compress the persisted data"""
92
84
 
93
85
 
94
- class InputPrometheusRwMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
86
+ class InputPrometheusRwMinimumTLSVersion(str, Enum):
95
87
  TL_SV1 = "TLSv1"
96
88
  TL_SV1_1 = "TLSv1.1"
97
89
  TL_SV1_2 = "TLSv1.2"
98
90
  TL_SV1_3 = "TLSv1.3"
99
91
 
100
92
 
101
- class InputPrometheusRwMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
93
+ class InputPrometheusRwMaximumTLSVersion(str, Enum):
102
94
  TL_SV1 = "TLSv1"
103
95
  TL_SV1_1 = "TLSv1.1"
104
96
  TL_SV1_2 = "TLSv1.2"
@@ -157,23 +149,15 @@ class InputPrometheusRwTLSSettingsServerSide(BaseModel):
157
149
  ] = None
158
150
 
159
151
  min_version: Annotated[
160
- Annotated[
161
- Optional[InputPrometheusRwMinimumTLSVersion],
162
- PlainValidator(validate_open_enum(False)),
163
- ],
164
- pydantic.Field(alias="minVersion"),
152
+ Optional[InputPrometheusRwMinimumTLSVersion], pydantic.Field(alias="minVersion")
165
153
  ] = None
166
154
 
167
155
  max_version: Annotated[
168
- Annotated[
169
- Optional[InputPrometheusRwMaximumTLSVersion],
170
- PlainValidator(validate_open_enum(False)),
171
- ],
172
- pydantic.Field(alias="maxVersion"),
156
+ Optional[InputPrometheusRwMaximumTLSVersion], pydantic.Field(alias="maxVersion")
173
157
  ] = None
174
158
 
175
159
 
176
- class InputPrometheusRwAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
160
+ class InputPrometheusRwAuthenticationType(str, Enum):
177
161
  r"""Remote Write authentication type"""
178
162
 
179
163
  NONE = "none"
@@ -312,9 +296,7 @@ class InputPrometheusRw(BaseModel):
312
296
  id: Optional[str] = None
313
297
  r"""Unique ID for this input"""
314
298
 
315
- type: Annotated[
316
- Optional[InputPrometheusRwType], PlainValidator(validate_open_enum(False))
317
- ] = None
299
+ type: Optional[InputPrometheusRwType] = None
318
300
 
319
301
  disabled: Optional[bool] = False
320
302
 
@@ -406,11 +388,7 @@ class InputPrometheusRw(BaseModel):
406
388
  r"""Absolute path on which to listen for Prometheus requests. Defaults to /write, which will expand as: http://<your‑upstream‑URL>:<your‑port>/write."""
407
389
 
408
390
  auth_type: Annotated[
409
- Annotated[
410
- Optional[InputPrometheusRwAuthenticationType],
411
- PlainValidator(validate_open_enum(False)),
412
- ],
413
- pydantic.Field(alias="authType"),
391
+ Optional[InputPrometheusRwAuthenticationType], pydantic.Field(alias="authType")
414
392
  ] = InputPrometheusRwAuthenticationType.NONE
415
393
  r"""Remote Write authentication type"""
416
394