cribl-control-plane 0.0.14__py3-none-any.whl → 0.0.16__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 (65) hide show
  1. cribl_control_plane/_version.py +3 -3
  2. cribl_control_plane/{outputs.py → destinations.py} +69 -71
  3. cribl_control_plane/models/__init__.py +5329 -8
  4. cribl_control_plane/models/createinputop.py +19253 -2
  5. cribl_control_plane/models/createoutputop.py +20578 -4
  6. cribl_control_plane/models/createoutputtestbyidop.py +2 -2
  7. cribl_control_plane/models/createpipelineop.py +24 -0
  8. cribl_control_plane/models/deleteoutputbyidop.py +2 -2
  9. cribl_control_plane/models/deleteoutputpqbyidop.py +2 -2
  10. cribl_control_plane/models/deletepipelinebyidop.py +37 -0
  11. cribl_control_plane/models/getoutputbyidop.py +2 -2
  12. cribl_control_plane/models/getoutputpqbyidop.py +2 -2
  13. cribl_control_plane/models/getoutputsamplesbyidop.py +2 -2
  14. cribl_control_plane/models/getpipelinebyidop.py +37 -0
  15. cribl_control_plane/models/inputconfluentcloud.py +5 -3
  16. cribl_control_plane/models/inputcriblhttp.py +5 -3
  17. cribl_control_plane/models/inputcribllakehttp.py +5 -3
  18. cribl_control_plane/models/inputcribltcp.py +5 -3
  19. cribl_control_plane/models/inputdatadogagent.py +5 -3
  20. cribl_control_plane/models/inputedgeprometheus.py +5 -3
  21. cribl_control_plane/models/inputelastic.py +5 -3
  22. cribl_control_plane/models/inputeventhub.py +5 -3
  23. cribl_control_plane/models/inputfirehose.py +5 -3
  24. cribl_control_plane/models/inputgooglepubsub.py +5 -3
  25. cribl_control_plane/models/inputgrafana_union.py +10 -6
  26. cribl_control_plane/models/inputhttp.py +5 -3
  27. cribl_control_plane/models/inputhttpraw.py +5 -3
  28. cribl_control_plane/models/inputjournalfiles.py +5 -3
  29. cribl_control_plane/models/inputkafka.py +5 -3
  30. cribl_control_plane/models/inputkinesis.py +5 -3
  31. cribl_control_plane/models/inputloki.py +5 -3
  32. cribl_control_plane/models/inputmodeldriventelemetry.py +6 -5
  33. cribl_control_plane/models/inputmsk.py +5 -3
  34. cribl_control_plane/models/inputnetflow.py +5 -3
  35. cribl_control_plane/models/inputoffice365mgmt.py +5 -3
  36. cribl_control_plane/models/inputoffice365msgtrace.py +5 -5
  37. cribl_control_plane/models/inputoffice365service.py +5 -5
  38. cribl_control_plane/models/inputopentelemetry.py +5 -3
  39. cribl_control_plane/models/inputprometheus.py +5 -3
  40. cribl_control_plane/models/inputprometheusrw.py +5 -3
  41. cribl_control_plane/models/inputrawudp.py +5 -3
  42. cribl_control_plane/models/inputsnmp.py +5 -3
  43. cribl_control_plane/models/inputsplunk.py +5 -3
  44. cribl_control_plane/models/inputsplunkhec.py +5 -3
  45. cribl_control_plane/models/inputsplunksearch.py +5 -3
  46. cribl_control_plane/models/inputsqs.py +5 -3
  47. cribl_control_plane/models/inputtcp.py +5 -3
  48. cribl_control_plane/models/inputtcpjson.py +5 -3
  49. cribl_control_plane/models/inputwef.py +5 -3
  50. cribl_control_plane/models/inputwiz.py +5 -3
  51. cribl_control_plane/models/inputzscalerhec.py +5 -3
  52. cribl_control_plane/models/listoutputop.py +2 -2
  53. cribl_control_plane/models/listpipelineop.py +24 -0
  54. cribl_control_plane/models/pipeline.py +70 -0
  55. cribl_control_plane/models/pipelinefunctionconf.py +53 -0
  56. cribl_control_plane/models/routes.py +6 -6
  57. cribl_control_plane/models/updateoutputbyidop.py +4 -4
  58. cribl_control_plane/models/updatepipelinebyidop.py +47 -0
  59. cribl_control_plane/pipelines.py +903 -0
  60. cribl_control_plane/routes_sdk.py +8 -4
  61. cribl_control_plane/sdk.py +7 -5
  62. cribl_control_plane/sources.py +8 -10
  63. {cribl_control_plane-0.0.14.dist-info → cribl_control_plane-0.0.16.dist-info}/METADATA +20 -12
  64. {cribl_control_plane-0.0.14.dist-info → cribl_control_plane-0.0.16.dist-info}/RECORD +65 -57
  65. {cribl_control_plane-0.0.14.dist-info → cribl_control_plane-0.0.16.dist-info}/WHEEL +0 -0
@@ -317,11 +317,11 @@ class InputWefMetadatum(BaseModel):
317
317
 
318
318
 
319
319
  class InputWefTypedDict(TypedDict):
320
- type: InputWefType
321
320
  subscriptions: List[SubscriptionTypedDict]
322
321
  r"""Subscriptions to events on forwarding endpoints"""
323
322
  id: NotRequired[str]
324
323
  r"""Unique ID for this input"""
324
+ type: NotRequired[InputWefType]
325
325
  disabled: NotRequired[bool]
326
326
  pipeline: NotRequired[str]
327
327
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -377,14 +377,16 @@ class InputWefTypedDict(TypedDict):
377
377
 
378
378
 
379
379
  class InputWef(BaseModel):
380
- type: Annotated[InputWefType, PlainValidator(validate_open_enum(False))]
381
-
382
380
  subscriptions: List[Subscription]
383
381
  r"""Subscriptions to events on forwarding endpoints"""
384
382
 
385
383
  id: Optional[str] = None
386
384
  r"""Unique ID for this input"""
387
385
 
386
+ type: Annotated[
387
+ Optional[InputWefType], PlainValidator(validate_open_enum(False))
388
+ ] = None
389
+
388
390
  disabled: Optional[bool] = False
389
391
 
390
392
  pipeline: Optional[str] = None
@@ -190,7 +190,6 @@ class InputWizAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
190
190
 
191
191
 
192
192
  class InputWizTypedDict(TypedDict):
193
- type: InputWizType
194
193
  auth_url: str
195
194
  r"""The authentication URL to generate an OAuth token"""
196
195
  client_id: str
@@ -198,6 +197,7 @@ class InputWizTypedDict(TypedDict):
198
197
  content_config: List[InputWizContentConfigTypedDict]
199
198
  id: NotRequired[str]
200
199
  r"""Unique ID for this input"""
200
+ type: NotRequired[InputWizType]
201
201
  disabled: NotRequired[bool]
202
202
  pipeline: NotRequired[str]
203
203
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -239,8 +239,6 @@ class InputWizTypedDict(TypedDict):
239
239
 
240
240
 
241
241
  class InputWiz(BaseModel):
242
- type: Annotated[InputWizType, PlainValidator(validate_open_enum(False))]
243
-
244
242
  auth_url: Annotated[str, pydantic.Field(alias="authUrl")]
245
243
  r"""The authentication URL to generate an OAuth token"""
246
244
 
@@ -254,6 +252,10 @@ class InputWiz(BaseModel):
254
252
  id: Optional[str] = None
255
253
  r"""Unique ID for this input"""
256
254
 
255
+ type: Annotated[
256
+ Optional[InputWizType], PlainValidator(validate_open_enum(False))
257
+ ] = None
258
+
257
259
  disabled: Optional[bool] = False
258
260
 
259
261
  pipeline: Optional[str] = None
@@ -246,11 +246,11 @@ class InputZscalerHecMetadatum(BaseModel):
246
246
 
247
247
 
248
248
  class InputZscalerHecTypedDict(TypedDict):
249
- type: InputZscalerHecType
250
249
  port: float
251
250
  r"""Port to listen on"""
252
251
  id: NotRequired[str]
253
252
  r"""Unique ID for this input"""
253
+ type: NotRequired[InputZscalerHecType]
254
254
  disabled: NotRequired[bool]
255
255
  pipeline: NotRequired[str]
256
256
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -309,14 +309,16 @@ class InputZscalerHecTypedDict(TypedDict):
309
309
 
310
310
 
311
311
  class InputZscalerHec(BaseModel):
312
- type: Annotated[InputZscalerHecType, PlainValidator(validate_open_enum(False))]
313
-
314
312
  port: float
315
313
  r"""Port to listen on"""
316
314
 
317
315
  id: Optional[str] = None
318
316
  r"""Unique ID for this input"""
319
317
 
318
+ type: Annotated[
319
+ Optional[InputZscalerHecType], PlainValidator(validate_open_enum(False))
320
+ ] = None
321
+
320
322
  disabled: Optional[bool] = False
321
323
 
322
324
  pipeline: Optional[str] = None
@@ -8,7 +8,7 @@ from typing_extensions import NotRequired, TypedDict
8
8
 
9
9
 
10
10
  class ListOutputResponseTypedDict(TypedDict):
11
- r"""a list of Output objects"""
11
+ r"""a list of Destination objects"""
12
12
 
13
13
  count: NotRequired[int]
14
14
  r"""number of items present in the items array"""
@@ -16,7 +16,7 @@ class ListOutputResponseTypedDict(TypedDict):
16
16
 
17
17
 
18
18
  class ListOutputResponse(BaseModel):
19
- r"""a list of Output objects"""
19
+ r"""a list of Destination objects"""
20
20
 
21
21
  count: Optional[int] = None
22
22
  r"""number of items present in the items array"""
@@ -0,0 +1,24 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .pipeline import Pipeline, PipelineTypedDict
5
+ from cribl_control_plane.types import BaseModel
6
+ from typing import List, Optional
7
+ from typing_extensions import NotRequired, TypedDict
8
+
9
+
10
+ class ListPipelineResponseTypedDict(TypedDict):
11
+ r"""a list of Pipeline objects"""
12
+
13
+ count: NotRequired[int]
14
+ r"""number of items present in the items array"""
15
+ items: NotRequired[List[PipelineTypedDict]]
16
+
17
+
18
+ class ListPipelineResponse(BaseModel):
19
+ r"""a list of Pipeline objects"""
20
+
21
+ count: Optional[int] = None
22
+ r"""number of items present in the items array"""
23
+
24
+ items: Optional[List[Pipeline]] = None
@@ -0,0 +1,70 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .pipelinefunctionconf import PipelineFunctionConf, PipelineFunctionConfTypedDict
5
+ from cribl_control_plane.types import BaseModel
6
+ import pydantic
7
+ from typing import Dict, List, Optional
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class PipelineGroupsTypedDict(TypedDict):
12
+ name: str
13
+ description: NotRequired[str]
14
+ r"""Short description of this group"""
15
+ disabled: NotRequired[bool]
16
+ r"""Whether this group is disabled"""
17
+
18
+
19
+ class PipelineGroups(BaseModel):
20
+ name: str
21
+
22
+ description: Optional[str] = None
23
+ r"""Short description of this group"""
24
+
25
+ disabled: Optional[bool] = None
26
+ r"""Whether this group is disabled"""
27
+
28
+
29
+ class ConfTypedDict(TypedDict):
30
+ async_func_timeout: NotRequired[int]
31
+ r"""Time (in ms) to wait for an async function to complete processing of a data item"""
32
+ output: NotRequired[str]
33
+ r"""The output destination for events processed by this Pipeline"""
34
+ description: NotRequired[str]
35
+ streamtags: NotRequired[List[str]]
36
+ r"""Tags for filtering and grouping in @{product}"""
37
+ functions: NotRequired[List[PipelineFunctionConfTypedDict]]
38
+ r"""List of Functions to pass data through"""
39
+ groups: NotRequired[Dict[str, PipelineGroupsTypedDict]]
40
+
41
+
42
+ class Conf(BaseModel):
43
+ async_func_timeout: Annotated[
44
+ Optional[int], pydantic.Field(alias="asyncFuncTimeout")
45
+ ] = None
46
+ r"""Time (in ms) to wait for an async function to complete processing of a data item"""
47
+
48
+ output: Optional[str] = "default"
49
+ r"""The output destination for events processed by this Pipeline"""
50
+
51
+ description: Optional[str] = None
52
+
53
+ streamtags: Optional[List[str]] = None
54
+ r"""Tags for filtering and grouping in @{product}"""
55
+
56
+ functions: Optional[List[PipelineFunctionConf]] = None
57
+ r"""List of Functions to pass data through"""
58
+
59
+ groups: Optional[Dict[str, PipelineGroups]] = None
60
+
61
+
62
+ class PipelineTypedDict(TypedDict):
63
+ id: str
64
+ conf: ConfTypedDict
65
+
66
+
67
+ class Pipeline(BaseModel):
68
+ id: str
69
+
70
+ conf: Conf
@@ -0,0 +1,53 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ import pydantic
6
+ from typing import Optional
7
+ from typing_extensions import Annotated, NotRequired, TypedDict
8
+
9
+
10
+ class FunctionSpecificConfigsTypedDict(TypedDict):
11
+ pass
12
+
13
+
14
+ class FunctionSpecificConfigs(BaseModel):
15
+ pass
16
+
17
+
18
+ class PipelineFunctionConfTypedDict(TypedDict):
19
+ id: str
20
+ r"""Function ID"""
21
+ conf: FunctionSpecificConfigsTypedDict
22
+ filter_: NotRequired[str]
23
+ r"""Filter that selects data to be fed through this Function"""
24
+ description: NotRequired[str]
25
+ r"""Simple description of this step"""
26
+ disabled: NotRequired[bool]
27
+ r"""If true, data will not be pushed through this function"""
28
+ final: NotRequired[bool]
29
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
30
+ group_id: NotRequired[str]
31
+ r"""Group ID"""
32
+
33
+
34
+ class PipelineFunctionConf(BaseModel):
35
+ id: str
36
+ r"""Function ID"""
37
+
38
+ conf: FunctionSpecificConfigs
39
+
40
+ filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
41
+ r"""Filter that selects data to be fed through this Function"""
42
+
43
+ description: Optional[str] = None
44
+ r"""Simple description of this step"""
45
+
46
+ disabled: Optional[bool] = None
47
+ r"""If true, data will not be pushed through this function"""
48
+
49
+ final: Optional[bool] = None
50
+ r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
51
+
52
+ group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
53
+ r"""Group ID"""
@@ -10,7 +10,7 @@ from typing import Any, Dict, List, Optional
10
10
  from typing_extensions import NotRequired, TypedDict
11
11
 
12
12
 
13
- class GroupsTypedDict(TypedDict):
13
+ class RoutesGroupsTypedDict(TypedDict):
14
14
  name: str
15
15
  description: NotRequired[str]
16
16
  r"""Short description of this group"""
@@ -18,7 +18,7 @@ class GroupsTypedDict(TypedDict):
18
18
  r"""Whether this group is disabled"""
19
19
 
20
20
 
21
- class Groups(BaseModel):
21
+ class RoutesGroups(BaseModel):
22
22
  name: str
23
23
 
24
24
  description: Optional[str] = None
@@ -56,7 +56,7 @@ class RoutesTypedDict(TypedDict):
56
56
  r"""Pipeline routing rules"""
57
57
  id: NotRequired[str]
58
58
  r"""Routes ID"""
59
- groups: NotRequired[Dict[str, GroupsTypedDict]]
59
+ groups: NotRequired[Dict[str, RoutesGroupsTypedDict]]
60
60
  comments: NotRequired[List[CommentTypedDict]]
61
61
  r"""Comments"""
62
62
 
@@ -68,7 +68,7 @@ class Routes(BaseModel):
68
68
  id: Optional[str] = None
69
69
  r"""Routes ID"""
70
70
 
71
- groups: Optional[Dict[str, Groups]] = None
71
+ groups: Optional[Dict[str, RoutesGroups]] = None
72
72
 
73
73
  comments: Optional[List[Comment]] = None
74
74
  r"""Comments"""
@@ -79,7 +79,7 @@ class RoutesInputTypedDict(TypedDict):
79
79
  r"""Pipeline routing rules"""
80
80
  id: NotRequired[str]
81
81
  r"""Routes ID"""
82
- groups: NotRequired[Dict[str, GroupsTypedDict]]
82
+ groups: NotRequired[Dict[str, RoutesGroupsTypedDict]]
83
83
  comments: NotRequired[List[CommentTypedDict]]
84
84
  r"""Comments"""
85
85
 
@@ -91,7 +91,7 @@ class RoutesInput(BaseModel):
91
91
  id: Optional[str] = None
92
92
  r"""Routes ID"""
93
93
 
94
- groups: Optional[Dict[str, Groups]] = None
94
+ groups: Optional[Dict[str, RoutesGroups]] = None
95
95
 
96
96
  comments: Optional[List[Comment]] = None
97
97
  r"""Comments"""
@@ -12,7 +12,7 @@ class UpdateOutputByIDRequestTypedDict(TypedDict):
12
12
  id: str
13
13
  r"""Unique ID to PATCH"""
14
14
  output: OutputTypedDict
15
- r"""Output object to be updated"""
15
+ r"""Destination object to be updated"""
16
16
 
17
17
 
18
18
  class UpdateOutputByIDRequest(BaseModel):
@@ -24,11 +24,11 @@ class UpdateOutputByIDRequest(BaseModel):
24
24
  output: Annotated[
25
25
  Output, FieldMetadata(request=RequestMetadata(media_type="application/json"))
26
26
  ]
27
- r"""Output object to be updated"""
27
+ r"""Destination object to be updated"""
28
28
 
29
29
 
30
30
  class UpdateOutputByIDResponseTypedDict(TypedDict):
31
- r"""a list of Output objects"""
31
+ r"""a list of Destination objects"""
32
32
 
33
33
  count: NotRequired[int]
34
34
  r"""number of items present in the items array"""
@@ -36,7 +36,7 @@ class UpdateOutputByIDResponseTypedDict(TypedDict):
36
36
 
37
37
 
38
38
  class UpdateOutputByIDResponse(BaseModel):
39
- r"""a list of Output objects"""
39
+ r"""a list of Destination objects"""
40
40
 
41
41
  count: Optional[int] = None
42
42
  r"""number of items present in the items array"""
@@ -0,0 +1,47 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .pipeline import Pipeline, PipelineTypedDict
5
+ from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import FieldMetadata, PathParamMetadata, RequestMetadata
7
+ import pydantic
8
+ from typing import List, Optional
9
+ from typing_extensions import Annotated, NotRequired, TypedDict
10
+
11
+
12
+ class UpdatePipelineByIDRequestTypedDict(TypedDict):
13
+ id_param: str
14
+ r"""Unique ID to PATCH"""
15
+ pipeline: PipelineTypedDict
16
+ r"""Pipeline object to be updated"""
17
+
18
+
19
+ class UpdatePipelineByIDRequest(BaseModel):
20
+ id_param: Annotated[
21
+ str,
22
+ pydantic.Field(alias="id"),
23
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
24
+ ]
25
+ r"""Unique ID to PATCH"""
26
+
27
+ pipeline: Annotated[
28
+ Pipeline, FieldMetadata(request=RequestMetadata(media_type="application/json"))
29
+ ]
30
+ r"""Pipeline object to be updated"""
31
+
32
+
33
+ class UpdatePipelineByIDResponseTypedDict(TypedDict):
34
+ r"""a list of Pipeline objects"""
35
+
36
+ count: NotRequired[int]
37
+ r"""number of items present in the items array"""
38
+ items: NotRequired[List[PipelineTypedDict]]
39
+
40
+
41
+ class UpdatePipelineByIDResponse(BaseModel):
42
+ r"""a list of Pipeline objects"""
43
+
44
+ count: Optional[int] = None
45
+ r"""number of items present in the items array"""
46
+
47
+ items: Optional[List[Pipeline]] = None