cribl-control-plane 0.0.35__py3-none-any.whl → 0.0.36__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.
- cribl_control_plane/_version.py +3 -3
- cribl_control_plane/commits.py +4 -4
- cribl_control_plane/models/__init__.py +73 -0
- cribl_control_plane/models/getpacksbyidop.py +37 -0
- cribl_control_plane/models/gitrevertparams.py +3 -3
- cribl_control_plane/models/input.py +19 -16
- cribl_control_plane/models/inputwizwebhook.py +393 -0
- cribl_control_plane/packs.py +174 -0
- {cribl_control_plane-0.0.35.dist-info → cribl_control_plane-0.0.36.dist-info}/METADATA +3 -2
- {cribl_control_plane-0.0.35.dist-info → cribl_control_plane-0.0.36.dist-info}/RECORD +11 -9
- {cribl_control_plane-0.0.35.dist-info → cribl_control_plane-0.0.36.dist-info}/WHEEL +0 -0
cribl_control_plane/_version.py
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
import importlib.metadata
|
|
4
4
|
|
|
5
5
|
__title__: str = "cribl-control-plane"
|
|
6
|
-
__version__: str = "0.0.
|
|
7
|
-
__openapi_doc_version__: str = "4.14.0-alpha.
|
|
6
|
+
__version__: str = "0.0.36"
|
|
7
|
+
__openapi_doc_version__: str = "4.14.0-alpha.1755792230606-47c829c2"
|
|
8
8
|
__gen_version__: str = "2.686.7"
|
|
9
|
-
__user_agent__: str = "speakeasy-sdk/python 0.0.
|
|
9
|
+
__user_agent__: str = "speakeasy-sdk/python 0.0.36 2.686.7 4.14.0-alpha.1755792230606-47c829c2 cribl-control-plane"
|
|
10
10
|
|
|
11
11
|
try:
|
|
12
12
|
if __package__ is not None:
|
cribl_control_plane/commits.py
CHANGED
|
@@ -756,9 +756,9 @@ class Commits(BaseSDK):
|
|
|
756
756
|
self,
|
|
757
757
|
*,
|
|
758
758
|
commit: str,
|
|
759
|
-
message: str,
|
|
760
759
|
group: Optional[str] = None,
|
|
761
760
|
force: Optional[bool] = None,
|
|
761
|
+
message: Optional[str] = None,
|
|
762
762
|
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
|
763
763
|
server_url: Optional[str] = None,
|
|
764
764
|
timeout_ms: Optional[int] = None,
|
|
@@ -769,9 +769,9 @@ class Commits(BaseSDK):
|
|
|
769
769
|
Revert a commit in the local repository.
|
|
770
770
|
|
|
771
771
|
:param commit:
|
|
772
|
-
:param message:
|
|
773
772
|
:param group: Group ID
|
|
774
773
|
:param force:
|
|
774
|
+
:param message:
|
|
775
775
|
:param retries: Override the default retry configuration for this method
|
|
776
776
|
:param server_url: Override the default server URL for this method
|
|
777
777
|
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
|
|
@@ -857,9 +857,9 @@ class Commits(BaseSDK):
|
|
|
857
857
|
self,
|
|
858
858
|
*,
|
|
859
859
|
commit: str,
|
|
860
|
-
message: str,
|
|
861
860
|
group: Optional[str] = None,
|
|
862
861
|
force: Optional[bool] = None,
|
|
862
|
+
message: Optional[str] = None,
|
|
863
863
|
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
|
864
864
|
server_url: Optional[str] = None,
|
|
865
865
|
timeout_ms: Optional[int] = None,
|
|
@@ -870,9 +870,9 @@ class Commits(BaseSDK):
|
|
|
870
870
|
Revert a commit in the local repository.
|
|
871
871
|
|
|
872
872
|
:param commit:
|
|
873
|
-
:param message:
|
|
874
873
|
:param group: Group ID
|
|
875
874
|
:param force:
|
|
875
|
+
:param message:
|
|
876
876
|
:param retries: Override the default retry configuration for this method
|
|
877
877
|
:param server_url: Override the default server URL for this method
|
|
878
878
|
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
|
|
@@ -223,6 +223,12 @@ if TYPE_CHECKING:
|
|
|
223
223
|
GetOutputSamplesByIDResponse,
|
|
224
224
|
GetOutputSamplesByIDResponseTypedDict,
|
|
225
225
|
)
|
|
226
|
+
from .getpacksbyidop import (
|
|
227
|
+
GetPacksByIDRequest,
|
|
228
|
+
GetPacksByIDRequestTypedDict,
|
|
229
|
+
GetPacksByIDResponse,
|
|
230
|
+
GetPacksByIDResponseTypedDict,
|
|
231
|
+
)
|
|
226
232
|
from .getpacksop import (
|
|
227
233
|
GetPacksRequest,
|
|
228
234
|
GetPacksRequestTypedDict,
|
|
@@ -1569,6 +1575,27 @@ if TYPE_CHECKING:
|
|
|
1569
1575
|
InputWizType,
|
|
1570
1576
|
InputWizTypedDict,
|
|
1571
1577
|
)
|
|
1578
|
+
from .inputwizwebhook import (
|
|
1579
|
+
InputWizWebhook,
|
|
1580
|
+
InputWizWebhookAuthTokensExt,
|
|
1581
|
+
InputWizWebhookAuthTokensExtMetadatum,
|
|
1582
|
+
InputWizWebhookAuthTokensExtMetadatumTypedDict,
|
|
1583
|
+
InputWizWebhookAuthTokensExtTypedDict,
|
|
1584
|
+
InputWizWebhookCompression,
|
|
1585
|
+
InputWizWebhookConnection,
|
|
1586
|
+
InputWizWebhookConnectionTypedDict,
|
|
1587
|
+
InputWizWebhookMaximumTLSVersion,
|
|
1588
|
+
InputWizWebhookMetadatum,
|
|
1589
|
+
InputWizWebhookMetadatumTypedDict,
|
|
1590
|
+
InputWizWebhookMinimumTLSVersion,
|
|
1591
|
+
InputWizWebhookMode,
|
|
1592
|
+
InputWizWebhookPq,
|
|
1593
|
+
InputWizWebhookPqTypedDict,
|
|
1594
|
+
InputWizWebhookTLSSettingsServerSide,
|
|
1595
|
+
InputWizWebhookTLSSettingsServerSideTypedDict,
|
|
1596
|
+
InputWizWebhookType,
|
|
1597
|
+
InputWizWebhookTypedDict,
|
|
1598
|
+
)
|
|
1572
1599
|
from .inputzscalerhec import (
|
|
1573
1600
|
InputZscalerHec,
|
|
1574
1601
|
InputZscalerHecAuthToken,
|
|
@@ -3240,6 +3267,10 @@ __all__ = [
|
|
|
3240
3267
|
"GetOutputSamplesByIDRequestTypedDict",
|
|
3241
3268
|
"GetOutputSamplesByIDResponse",
|
|
3242
3269
|
"GetOutputSamplesByIDResponseTypedDict",
|
|
3270
|
+
"GetPacksByIDRequest",
|
|
3271
|
+
"GetPacksByIDRequestTypedDict",
|
|
3272
|
+
"GetPacksByIDResponse",
|
|
3273
|
+
"GetPacksByIDResponseTypedDict",
|
|
3243
3274
|
"GetPacksRequest",
|
|
3244
3275
|
"GetPacksRequestTypedDict",
|
|
3245
3276
|
"GetPacksResponse",
|
|
@@ -4377,6 +4408,25 @@ __all__ = [
|
|
|
4377
4408
|
"InputWizRetryType",
|
|
4378
4409
|
"InputWizType",
|
|
4379
4410
|
"InputWizTypedDict",
|
|
4411
|
+
"InputWizWebhook",
|
|
4412
|
+
"InputWizWebhookAuthTokensExt",
|
|
4413
|
+
"InputWizWebhookAuthTokensExtMetadatum",
|
|
4414
|
+
"InputWizWebhookAuthTokensExtMetadatumTypedDict",
|
|
4415
|
+
"InputWizWebhookAuthTokensExtTypedDict",
|
|
4416
|
+
"InputWizWebhookCompression",
|
|
4417
|
+
"InputWizWebhookConnection",
|
|
4418
|
+
"InputWizWebhookConnectionTypedDict",
|
|
4419
|
+
"InputWizWebhookMaximumTLSVersion",
|
|
4420
|
+
"InputWizWebhookMetadatum",
|
|
4421
|
+
"InputWizWebhookMetadatumTypedDict",
|
|
4422
|
+
"InputWizWebhookMinimumTLSVersion",
|
|
4423
|
+
"InputWizWebhookMode",
|
|
4424
|
+
"InputWizWebhookPq",
|
|
4425
|
+
"InputWizWebhookPqTypedDict",
|
|
4426
|
+
"InputWizWebhookTLSSettingsServerSide",
|
|
4427
|
+
"InputWizWebhookTLSSettingsServerSideTypedDict",
|
|
4428
|
+
"InputWizWebhookType",
|
|
4429
|
+
"InputWizWebhookTypedDict",
|
|
4380
4430
|
"InputZscalerHec",
|
|
4381
4431
|
"InputZscalerHecAuthToken",
|
|
4382
4432
|
"InputZscalerHecAuthTokenMetadatum",
|
|
@@ -5860,6 +5910,10 @@ _dynamic_imports: dict[str, str] = {
|
|
|
5860
5910
|
"GetOutputSamplesByIDRequestTypedDict": ".getoutputsamplesbyidop",
|
|
5861
5911
|
"GetOutputSamplesByIDResponse": ".getoutputsamplesbyidop",
|
|
5862
5912
|
"GetOutputSamplesByIDResponseTypedDict": ".getoutputsamplesbyidop",
|
|
5913
|
+
"GetPacksByIDRequest": ".getpacksbyidop",
|
|
5914
|
+
"GetPacksByIDRequestTypedDict": ".getpacksbyidop",
|
|
5915
|
+
"GetPacksByIDResponse": ".getpacksbyidop",
|
|
5916
|
+
"GetPacksByIDResponseTypedDict": ".getpacksbyidop",
|
|
5863
5917
|
"GetPacksRequest": ".getpacksop",
|
|
5864
5918
|
"GetPacksRequestTypedDict": ".getpacksop",
|
|
5865
5919
|
"GetPacksResponse": ".getpacksop",
|
|
@@ -7076,6 +7130,25 @@ _dynamic_imports: dict[str, str] = {
|
|
|
7076
7130
|
"InputWizRetryType": ".inputwiz",
|
|
7077
7131
|
"InputWizType": ".inputwiz",
|
|
7078
7132
|
"InputWizTypedDict": ".inputwiz",
|
|
7133
|
+
"InputWizWebhook": ".inputwizwebhook",
|
|
7134
|
+
"InputWizWebhookAuthTokensExt": ".inputwizwebhook",
|
|
7135
|
+
"InputWizWebhookAuthTokensExtMetadatum": ".inputwizwebhook",
|
|
7136
|
+
"InputWizWebhookAuthTokensExtMetadatumTypedDict": ".inputwizwebhook",
|
|
7137
|
+
"InputWizWebhookAuthTokensExtTypedDict": ".inputwizwebhook",
|
|
7138
|
+
"InputWizWebhookCompression": ".inputwizwebhook",
|
|
7139
|
+
"InputWizWebhookConnection": ".inputwizwebhook",
|
|
7140
|
+
"InputWizWebhookConnectionTypedDict": ".inputwizwebhook",
|
|
7141
|
+
"InputWizWebhookMaximumTLSVersion": ".inputwizwebhook",
|
|
7142
|
+
"InputWizWebhookMetadatum": ".inputwizwebhook",
|
|
7143
|
+
"InputWizWebhookMetadatumTypedDict": ".inputwizwebhook",
|
|
7144
|
+
"InputWizWebhookMinimumTLSVersion": ".inputwizwebhook",
|
|
7145
|
+
"InputWizWebhookMode": ".inputwizwebhook",
|
|
7146
|
+
"InputWizWebhookPq": ".inputwizwebhook",
|
|
7147
|
+
"InputWizWebhookPqTypedDict": ".inputwizwebhook",
|
|
7148
|
+
"InputWizWebhookTLSSettingsServerSide": ".inputwizwebhook",
|
|
7149
|
+
"InputWizWebhookTLSSettingsServerSideTypedDict": ".inputwizwebhook",
|
|
7150
|
+
"InputWizWebhookType": ".inputwizwebhook",
|
|
7151
|
+
"InputWizWebhookTypedDict": ".inputwizwebhook",
|
|
7079
7152
|
"InputZscalerHec": ".inputzscalerhec",
|
|
7080
7153
|
"InputZscalerHecAuthToken": ".inputzscalerhec",
|
|
7081
7154
|
"InputZscalerHecAuthTokenMetadatum": ".inputzscalerhec",
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .packinfo import PackInfo, PackInfoTypedDict
|
|
5
|
+
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import FieldMetadata, PathParamMetadata
|
|
7
|
+
from typing import List, Optional
|
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class GetPacksByIDRequestTypedDict(TypedDict):
|
|
12
|
+
id: str
|
|
13
|
+
r"""The <code>id</code> of the Pack to get."""
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class GetPacksByIDRequest(BaseModel):
|
|
17
|
+
id: Annotated[
|
|
18
|
+
str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
|
|
19
|
+
]
|
|
20
|
+
r"""The <code>id</code> of the Pack to get."""
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class GetPacksByIDResponseTypedDict(TypedDict):
|
|
24
|
+
r"""a list of PackInfo objects"""
|
|
25
|
+
|
|
26
|
+
count: NotRequired[int]
|
|
27
|
+
r"""number of items present in the items array"""
|
|
28
|
+
items: NotRequired[List[PackInfoTypedDict]]
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class GetPacksByIDResponse(BaseModel):
|
|
32
|
+
r"""a list of PackInfo objects"""
|
|
33
|
+
|
|
34
|
+
count: Optional[int] = None
|
|
35
|
+
r"""number of items present in the items array"""
|
|
36
|
+
|
|
37
|
+
items: Optional[List[PackInfo]] = None
|
|
@@ -8,13 +8,13 @@ from typing_extensions import NotRequired, TypedDict
|
|
|
8
8
|
|
|
9
9
|
class GitRevertParamsTypedDict(TypedDict):
|
|
10
10
|
commit: str
|
|
11
|
-
message: str
|
|
12
11
|
force: NotRequired[bool]
|
|
12
|
+
message: NotRequired[str]
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
class GitRevertParams(BaseModel):
|
|
16
16
|
commit: str
|
|
17
17
|
|
|
18
|
-
message: str
|
|
19
|
-
|
|
20
18
|
force: Optional[bool] = None
|
|
19
|
+
|
|
20
|
+
message: Optional[str] = None
|
|
@@ -64,6 +64,7 @@ from .inputwef import InputWef, InputWefTypedDict
|
|
|
64
64
|
from .inputwindowsmetrics import InputWindowsMetrics, InputWindowsMetricsTypedDict
|
|
65
65
|
from .inputwineventlogs import InputWinEventLogs, InputWinEventLogsTypedDict
|
|
66
66
|
from .inputwiz import InputWiz, InputWizTypedDict
|
|
67
|
+
from .inputwizwebhook import InputWizWebhook, InputWizWebhookTypedDict
|
|
67
68
|
from .inputzscalerhec import InputZscalerHec, InputZscalerHecTypedDict
|
|
68
69
|
from typing import Union
|
|
69
70
|
from typing_extensions import TypeAliasType
|
|
@@ -80,11 +81,11 @@ InputTypedDict = TypeAliasType(
|
|
|
80
81
|
InputCollectionTypedDict,
|
|
81
82
|
InputSystemStateTypedDict,
|
|
82
83
|
InputModelDrivenTelemetryTypedDict,
|
|
83
|
-
InputWindowsMetricsTypedDict,
|
|
84
84
|
InputSystemMetricsTypedDict,
|
|
85
|
+
InputWindowsMetricsTypedDict,
|
|
85
86
|
InputJournalFilesTypedDict,
|
|
86
|
-
InputRawUDPTypedDict,
|
|
87
87
|
InputWinEventLogsTypedDict,
|
|
88
|
+
InputRawUDPTypedDict,
|
|
88
89
|
InputExecTypedDict,
|
|
89
90
|
InputKubeLogsTypedDict,
|
|
90
91
|
InputMetricsTypedDict,
|
|
@@ -93,27 +94,28 @@ InputTypedDict = TypeAliasType(
|
|
|
93
94
|
InputNetflowTypedDict,
|
|
94
95
|
InputTcpjsonTypedDict,
|
|
95
96
|
InputGooglePubsubTypedDict,
|
|
96
|
-
InputTCPTypedDict,
|
|
97
|
-
InputWizTypedDict,
|
|
98
97
|
InputOffice365ServiceTypedDict,
|
|
98
|
+
InputWizTypedDict,
|
|
99
|
+
InputTCPTypedDict,
|
|
99
100
|
InputFirehoseTypedDict,
|
|
100
101
|
InputCriblHTTPTypedDict,
|
|
101
|
-
InputOffice365MgmtTypedDict,
|
|
102
102
|
InputDatadogAgentTypedDict,
|
|
103
|
+
InputOffice365MgmtTypedDict,
|
|
103
104
|
InputFileTypedDict,
|
|
104
105
|
InputSplunkTypedDict,
|
|
105
|
-
InputAppscopeTypedDict,
|
|
106
106
|
InputWefTypedDict,
|
|
107
|
+
InputAppscopeTypedDict,
|
|
107
108
|
InputHTTPRawTypedDict,
|
|
109
|
+
InputWizWebhookTypedDict,
|
|
108
110
|
InputHTTPTypedDict,
|
|
109
111
|
InputCriblLakeHTTPTypedDict,
|
|
110
112
|
InputAzureBlobTypedDict,
|
|
111
113
|
InputSqsTypedDict,
|
|
112
114
|
InputZscalerHecTypedDict,
|
|
113
|
-
InputEventhubTypedDict,
|
|
114
115
|
InputKinesisTypedDict,
|
|
115
|
-
InputKafkaTypedDict,
|
|
116
116
|
InputConfluentCloudTypedDict,
|
|
117
|
+
InputEventhubTypedDict,
|
|
118
|
+
InputKafkaTypedDict,
|
|
117
119
|
InputElasticTypedDict,
|
|
118
120
|
InputOffice365MsgTraceTypedDict,
|
|
119
121
|
InputSplunkHecTypedDict,
|
|
@@ -145,11 +147,11 @@ Input = TypeAliasType(
|
|
|
145
147
|
InputCollection,
|
|
146
148
|
InputSystemState,
|
|
147
149
|
InputModelDrivenTelemetry,
|
|
148
|
-
InputWindowsMetrics,
|
|
149
150
|
InputSystemMetrics,
|
|
151
|
+
InputWindowsMetrics,
|
|
150
152
|
InputJournalFiles,
|
|
151
|
-
InputRawUDP,
|
|
152
153
|
InputWinEventLogs,
|
|
154
|
+
InputRawUDP,
|
|
153
155
|
InputExec,
|
|
154
156
|
InputKubeLogs,
|
|
155
157
|
InputMetrics,
|
|
@@ -158,27 +160,28 @@ Input = TypeAliasType(
|
|
|
158
160
|
InputNetflow,
|
|
159
161
|
InputTcpjson,
|
|
160
162
|
InputGooglePubsub,
|
|
161
|
-
InputTCP,
|
|
162
|
-
InputWiz,
|
|
163
163
|
InputOffice365Service,
|
|
164
|
+
InputWiz,
|
|
165
|
+
InputTCP,
|
|
164
166
|
InputFirehose,
|
|
165
167
|
InputCriblHTTP,
|
|
166
|
-
InputOffice365Mgmt,
|
|
167
168
|
InputDatadogAgent,
|
|
169
|
+
InputOffice365Mgmt,
|
|
168
170
|
InputFile,
|
|
169
171
|
InputSplunk,
|
|
170
|
-
InputAppscope,
|
|
171
172
|
InputWef,
|
|
173
|
+
InputAppscope,
|
|
172
174
|
InputHTTPRaw,
|
|
175
|
+
InputWizWebhook,
|
|
173
176
|
InputHTTP,
|
|
174
177
|
InputCriblLakeHTTP,
|
|
175
178
|
InputAzureBlob,
|
|
176
179
|
InputSqs,
|
|
177
180
|
InputZscalerHec,
|
|
178
|
-
InputEventhub,
|
|
179
181
|
InputKinesis,
|
|
180
|
-
InputKafka,
|
|
181
182
|
InputConfluentCloud,
|
|
183
|
+
InputEventhub,
|
|
184
|
+
InputKafka,
|
|
182
185
|
InputElastic,
|
|
183
186
|
InputOffice365MsgTrace,
|
|
184
187
|
InputSplunkHec,
|
|
@@ -0,0 +1,393 @@
|
|
|
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
|
+
from enum import Enum
|
|
6
|
+
import pydantic
|
|
7
|
+
from typing import Any, List, Optional
|
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class InputWizWebhookType(str, Enum):
|
|
12
|
+
WIZ_WEBHOOK = "wiz_webhook"
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class InputWizWebhookConnectionTypedDict(TypedDict):
|
|
16
|
+
output: str
|
|
17
|
+
pipeline: NotRequired[str]
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class InputWizWebhookConnection(BaseModel):
|
|
21
|
+
output: str
|
|
22
|
+
|
|
23
|
+
pipeline: Optional[str] = None
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class InputWizWebhookMode(str, Enum):
|
|
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."""
|
|
28
|
+
|
|
29
|
+
SMART = "smart"
|
|
30
|
+
ALWAYS = "always"
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
class InputWizWebhookCompression(str, Enum):
|
|
34
|
+
r"""Codec to use to compress the persisted data"""
|
|
35
|
+
|
|
36
|
+
NONE = "none"
|
|
37
|
+
GZIP = "gzip"
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class InputWizWebhookPqTypedDict(TypedDict):
|
|
41
|
+
mode: NotRequired[InputWizWebhookMode]
|
|
42
|
+
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."""
|
|
43
|
+
max_buffer_size: NotRequired[float]
|
|
44
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
45
|
+
commit_frequency: NotRequired[float]
|
|
46
|
+
r"""The number of events to send downstream before committing that Stream has read them"""
|
|
47
|
+
max_file_size: NotRequired[str]
|
|
48
|
+
r"""The maximum size to store in each queue file before closing and optionally compressing. Enter a numeral with units of KB, MB, etc."""
|
|
49
|
+
max_size: NotRequired[str]
|
|
50
|
+
r"""The maximum disk space that the queue can consume (as an average per Worker Process) before queueing stops. Enter a numeral with units of KB, MB, etc."""
|
|
51
|
+
path: NotRequired[str]
|
|
52
|
+
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
53
|
+
compress: NotRequired[InputWizWebhookCompression]
|
|
54
|
+
r"""Codec to use to compress the persisted data"""
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
class InputWizWebhookPq(BaseModel):
|
|
58
|
+
mode: Optional[InputWizWebhookMode] = InputWizWebhookMode.ALWAYS
|
|
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."""
|
|
60
|
+
|
|
61
|
+
max_buffer_size: Annotated[
|
|
62
|
+
Optional[float], pydantic.Field(alias="maxBufferSize")
|
|
63
|
+
] = 1000
|
|
64
|
+
r"""The maximum number of events to hold in memory before writing the events to disk"""
|
|
65
|
+
|
|
66
|
+
commit_frequency: Annotated[
|
|
67
|
+
Optional[float], pydantic.Field(alias="commitFrequency")
|
|
68
|
+
] = 42
|
|
69
|
+
r"""The number of events to send downstream before committing that Stream has read them"""
|
|
70
|
+
|
|
71
|
+
max_file_size: Annotated[Optional[str], pydantic.Field(alias="maxFileSize")] = (
|
|
72
|
+
"1 MB"
|
|
73
|
+
)
|
|
74
|
+
r"""The maximum size to store in each queue file before closing and optionally compressing. Enter a numeral with units of KB, MB, etc."""
|
|
75
|
+
|
|
76
|
+
max_size: Annotated[Optional[str], pydantic.Field(alias="maxSize")] = "5GB"
|
|
77
|
+
r"""The maximum disk space that the queue can consume (as an average per Worker Process) before queueing stops. Enter a numeral with units of KB, MB, etc."""
|
|
78
|
+
|
|
79
|
+
path: Optional[str] = "$CRIBL_HOME/state/queues"
|
|
80
|
+
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
81
|
+
|
|
82
|
+
compress: Optional[InputWizWebhookCompression] = InputWizWebhookCompression.NONE
|
|
83
|
+
r"""Codec to use to compress the persisted data"""
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
class InputWizWebhookMinimumTLSVersion(str, Enum):
|
|
87
|
+
TL_SV1 = "TLSv1"
|
|
88
|
+
TL_SV1_1 = "TLSv1.1"
|
|
89
|
+
TL_SV1_2 = "TLSv1.2"
|
|
90
|
+
TL_SV1_3 = "TLSv1.3"
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
class InputWizWebhookMaximumTLSVersion(str, Enum):
|
|
94
|
+
TL_SV1 = "TLSv1"
|
|
95
|
+
TL_SV1_1 = "TLSv1.1"
|
|
96
|
+
TL_SV1_2 = "TLSv1.2"
|
|
97
|
+
TL_SV1_3 = "TLSv1.3"
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
class InputWizWebhookTLSSettingsServerSideTypedDict(TypedDict):
|
|
101
|
+
disabled: NotRequired[bool]
|
|
102
|
+
certificate_name: NotRequired[str]
|
|
103
|
+
r"""The name of the predefined certificate"""
|
|
104
|
+
priv_key_path: NotRequired[str]
|
|
105
|
+
r"""Path on server containing the private key to use. PEM format. Can reference $ENV_VARS."""
|
|
106
|
+
passphrase: NotRequired[str]
|
|
107
|
+
r"""Passphrase to use to decrypt private key"""
|
|
108
|
+
cert_path: NotRequired[str]
|
|
109
|
+
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
110
|
+
ca_path: NotRequired[str]
|
|
111
|
+
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
112
|
+
request_cert: NotRequired[bool]
|
|
113
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
114
|
+
reject_unauthorized: NotRequired[Any]
|
|
115
|
+
common_name_regex: NotRequired[Any]
|
|
116
|
+
min_version: NotRequired[InputWizWebhookMinimumTLSVersion]
|
|
117
|
+
max_version: NotRequired[InputWizWebhookMaximumTLSVersion]
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
class InputWizWebhookTLSSettingsServerSide(BaseModel):
|
|
121
|
+
disabled: Optional[bool] = True
|
|
122
|
+
|
|
123
|
+
certificate_name: Annotated[
|
|
124
|
+
Optional[str], pydantic.Field(alias="certificateName")
|
|
125
|
+
] = None
|
|
126
|
+
r"""The name of the predefined certificate"""
|
|
127
|
+
|
|
128
|
+
priv_key_path: Annotated[Optional[str], pydantic.Field(alias="privKeyPath")] = None
|
|
129
|
+
r"""Path on server containing the private key to use. PEM format. Can reference $ENV_VARS."""
|
|
130
|
+
|
|
131
|
+
passphrase: Optional[str] = None
|
|
132
|
+
r"""Passphrase to use to decrypt private key"""
|
|
133
|
+
|
|
134
|
+
cert_path: Annotated[Optional[str], pydantic.Field(alias="certPath")] = None
|
|
135
|
+
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
136
|
+
|
|
137
|
+
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
138
|
+
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
139
|
+
|
|
140
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
141
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
142
|
+
|
|
143
|
+
reject_unauthorized: Annotated[
|
|
144
|
+
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
145
|
+
] = None
|
|
146
|
+
|
|
147
|
+
common_name_regex: Annotated[
|
|
148
|
+
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
149
|
+
] = None
|
|
150
|
+
|
|
151
|
+
min_version: Annotated[
|
|
152
|
+
Optional[InputWizWebhookMinimumTLSVersion], pydantic.Field(alias="minVersion")
|
|
153
|
+
] = None
|
|
154
|
+
|
|
155
|
+
max_version: Annotated[
|
|
156
|
+
Optional[InputWizWebhookMaximumTLSVersion], pydantic.Field(alias="maxVersion")
|
|
157
|
+
] = None
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
class InputWizWebhookMetadatumTypedDict(TypedDict):
|
|
161
|
+
name: str
|
|
162
|
+
value: str
|
|
163
|
+
r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
class InputWizWebhookMetadatum(BaseModel):
|
|
167
|
+
name: str
|
|
168
|
+
|
|
169
|
+
value: str
|
|
170
|
+
r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
class InputWizWebhookAuthTokensExtMetadatumTypedDict(TypedDict):
|
|
174
|
+
name: str
|
|
175
|
+
value: str
|
|
176
|
+
r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
class InputWizWebhookAuthTokensExtMetadatum(BaseModel):
|
|
180
|
+
name: str
|
|
181
|
+
|
|
182
|
+
value: str
|
|
183
|
+
r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
class InputWizWebhookAuthTokensExtTypedDict(TypedDict):
|
|
187
|
+
token: str
|
|
188
|
+
r"""Shared secret to be provided by any client (Authorization: <token>)"""
|
|
189
|
+
description: NotRequired[str]
|
|
190
|
+
metadata: NotRequired[List[InputWizWebhookAuthTokensExtMetadatumTypedDict]]
|
|
191
|
+
r"""Fields to add to events referencing this token"""
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
class InputWizWebhookAuthTokensExt(BaseModel):
|
|
195
|
+
token: str
|
|
196
|
+
r"""Shared secret to be provided by any client (Authorization: <token>)"""
|
|
197
|
+
|
|
198
|
+
description: Optional[str] = None
|
|
199
|
+
|
|
200
|
+
metadata: Optional[List[InputWizWebhookAuthTokensExtMetadatum]] = None
|
|
201
|
+
r"""Fields to add to events referencing this token"""
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
class InputWizWebhookTypedDict(TypedDict):
|
|
205
|
+
type: InputWizWebhookType
|
|
206
|
+
port: float
|
|
207
|
+
r"""Port to listen on"""
|
|
208
|
+
id: NotRequired[str]
|
|
209
|
+
r"""Unique ID for this input"""
|
|
210
|
+
disabled: NotRequired[bool]
|
|
211
|
+
pipeline: NotRequired[str]
|
|
212
|
+
r"""Pipeline to process data from this Source before sending it through the Routes"""
|
|
213
|
+
send_to_routes: NotRequired[bool]
|
|
214
|
+
r"""Select whether to send data to Routes, or directly to Destinations."""
|
|
215
|
+
environment: NotRequired[str]
|
|
216
|
+
r"""Optionally, enable this config only on a specified Git branch. If empty, will be enabled everywhere."""
|
|
217
|
+
pq_enabled: NotRequired[bool]
|
|
218
|
+
r"""Use a disk queue to minimize data loss when connected services block. See [Cribl Docs](https://docs.cribl.io/stream/persistent-queues) for PQ defaults (Cribl-managed Cloud Workers) and configuration options (on-prem and hybrid Workers)."""
|
|
219
|
+
streamtags: NotRequired[List[str]]
|
|
220
|
+
r"""Tags for filtering and grouping in @{product}"""
|
|
221
|
+
connections: NotRequired[List[InputWizWebhookConnectionTypedDict]]
|
|
222
|
+
r"""Direct connections to Destinations, and optionally via a Pipeline or a Pack"""
|
|
223
|
+
pq: NotRequired[InputWizWebhookPqTypedDict]
|
|
224
|
+
host: NotRequired[str]
|
|
225
|
+
r"""Address to bind on. Defaults to 0.0.0.0 (all addresses)."""
|
|
226
|
+
auth_tokens: NotRequired[List[str]]
|
|
227
|
+
r"""Shared secrets to be provided by any client (Authorization: <token>). If empty, unauthorized access is permitted."""
|
|
228
|
+
tls: NotRequired[InputWizWebhookTLSSettingsServerSideTypedDict]
|
|
229
|
+
max_active_req: NotRequired[float]
|
|
230
|
+
r"""Maximum number of active requests allowed per Worker Process. Set to 0 for unlimited. Caution: Increasing the limit above the default value, or setting it to unlimited, may degrade performance and reduce throughput."""
|
|
231
|
+
max_requests_per_socket: NotRequired[int]
|
|
232
|
+
r"""Maximum number of requests per socket before @{product} instructs the client to close the connection. Default is 0 (unlimited)."""
|
|
233
|
+
enable_proxy_header: NotRequired[bool]
|
|
234
|
+
r"""Extract the client IP and port from PROXY protocol v1/v2. When enabled, the X-Forwarded-For header is ignored. Disable to use the X-Forwarded-For header for client IP extraction."""
|
|
235
|
+
capture_headers: NotRequired[bool]
|
|
236
|
+
r"""Add request headers to events, in the __headers field"""
|
|
237
|
+
activity_log_sample_rate: NotRequired[float]
|
|
238
|
+
r"""How often request activity is logged at the `info` level. A value of 1 would log every request, 10 every 10th request, etc."""
|
|
239
|
+
request_timeout: NotRequired[float]
|
|
240
|
+
r"""How long to wait for an incoming request to complete before aborting it. Use 0 to disable."""
|
|
241
|
+
socket_timeout: NotRequired[float]
|
|
242
|
+
r"""How long @{product} should wait before assuming that an inactive socket has timed out. To wait forever, set to 0."""
|
|
243
|
+
keep_alive_timeout: NotRequired[float]
|
|
244
|
+
r"""After the last response is sent, @{product} will wait this long for additional data before closing the socket connection. Minimum 1 second, maximum 600 seconds (10 minutes)."""
|
|
245
|
+
enable_health_check: NotRequired[bool]
|
|
246
|
+
r"""Expose the /cribl_health endpoint, which returns 200 OK when this Source is healthy"""
|
|
247
|
+
ip_allowlist_regex: NotRequired[str]
|
|
248
|
+
r"""Messages from matched IP addresses will be processed, unless also matched by the denylist"""
|
|
249
|
+
ip_denylist_regex: NotRequired[str]
|
|
250
|
+
r"""Messages from matched IP addresses will be ignored. This takes precedence over the allowlist."""
|
|
251
|
+
breaker_rulesets: NotRequired[List[str]]
|
|
252
|
+
r"""A list of event-breaking rulesets that will be applied, in order, to the input data stream"""
|
|
253
|
+
stale_channel_flush_ms: NotRequired[float]
|
|
254
|
+
r"""How long (in milliseconds) the Event Breaker will wait for new data to be sent to a specific channel before flushing the data stream out, as is, to the Pipelines"""
|
|
255
|
+
metadata: NotRequired[List[InputWizWebhookMetadatumTypedDict]]
|
|
256
|
+
r"""Fields to add to events from this input"""
|
|
257
|
+
allowed_paths: NotRequired[List[str]]
|
|
258
|
+
r"""List of URI paths accepted by this input. Wildcards are supported (such as /api/v*/hook). Defaults to allow all."""
|
|
259
|
+
allowed_methods: NotRequired[List[str]]
|
|
260
|
+
r"""List of HTTP methods accepted by this input. Wildcards are supported (such as P*, GET). Defaults to allow all."""
|
|
261
|
+
auth_tokens_ext: NotRequired[List[InputWizWebhookAuthTokensExtTypedDict]]
|
|
262
|
+
r"""Shared secrets to be provided by any client (Authorization: <token>). If empty, unauthorized access is permitted."""
|
|
263
|
+
description: NotRequired[str]
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
class InputWizWebhook(BaseModel):
|
|
267
|
+
type: InputWizWebhookType
|
|
268
|
+
|
|
269
|
+
port: float
|
|
270
|
+
r"""Port to listen on"""
|
|
271
|
+
|
|
272
|
+
id: Optional[str] = None
|
|
273
|
+
r"""Unique ID for this input"""
|
|
274
|
+
|
|
275
|
+
disabled: Optional[bool] = False
|
|
276
|
+
|
|
277
|
+
pipeline: Optional[str] = None
|
|
278
|
+
r"""Pipeline to process data from this Source before sending it through the Routes"""
|
|
279
|
+
|
|
280
|
+
send_to_routes: Annotated[Optional[bool], pydantic.Field(alias="sendToRoutes")] = (
|
|
281
|
+
True
|
|
282
|
+
)
|
|
283
|
+
r"""Select whether to send data to Routes, or directly to Destinations."""
|
|
284
|
+
|
|
285
|
+
environment: Optional[str] = None
|
|
286
|
+
r"""Optionally, enable this config only on a specified Git branch. If empty, will be enabled everywhere."""
|
|
287
|
+
|
|
288
|
+
pq_enabled: Annotated[Optional[bool], pydantic.Field(alias="pqEnabled")] = False
|
|
289
|
+
r"""Use a disk queue to minimize data loss when connected services block. See [Cribl Docs](https://docs.cribl.io/stream/persistent-queues) for PQ defaults (Cribl-managed Cloud Workers) and configuration options (on-prem and hybrid Workers)."""
|
|
290
|
+
|
|
291
|
+
streamtags: Optional[List[str]] = None
|
|
292
|
+
r"""Tags for filtering and grouping in @{product}"""
|
|
293
|
+
|
|
294
|
+
connections: Optional[List[InputWizWebhookConnection]] = None
|
|
295
|
+
r"""Direct connections to Destinations, and optionally via a Pipeline or a Pack"""
|
|
296
|
+
|
|
297
|
+
pq: Optional[InputWizWebhookPq] = None
|
|
298
|
+
|
|
299
|
+
host: Optional[str] = "0.0.0.0"
|
|
300
|
+
r"""Address to bind on. Defaults to 0.0.0.0 (all addresses)."""
|
|
301
|
+
|
|
302
|
+
auth_tokens: Annotated[Optional[List[str]], pydantic.Field(alias="authTokens")] = (
|
|
303
|
+
None
|
|
304
|
+
)
|
|
305
|
+
r"""Shared secrets to be provided by any client (Authorization: <token>). If empty, unauthorized access is permitted."""
|
|
306
|
+
|
|
307
|
+
tls: Optional[InputWizWebhookTLSSettingsServerSide] = None
|
|
308
|
+
|
|
309
|
+
max_active_req: Annotated[Optional[float], pydantic.Field(alias="maxActiveReq")] = (
|
|
310
|
+
256
|
|
311
|
+
)
|
|
312
|
+
r"""Maximum number of active requests allowed per Worker Process. Set to 0 for unlimited. Caution: Increasing the limit above the default value, or setting it to unlimited, may degrade performance and reduce throughput."""
|
|
313
|
+
|
|
314
|
+
max_requests_per_socket: Annotated[
|
|
315
|
+
Optional[int], pydantic.Field(alias="maxRequestsPerSocket")
|
|
316
|
+
] = 0
|
|
317
|
+
r"""Maximum number of requests per socket before @{product} instructs the client to close the connection. Default is 0 (unlimited)."""
|
|
318
|
+
|
|
319
|
+
enable_proxy_header: Annotated[
|
|
320
|
+
Optional[bool], pydantic.Field(alias="enableProxyHeader")
|
|
321
|
+
] = False
|
|
322
|
+
r"""Extract the client IP and port from PROXY protocol v1/v2. When enabled, the X-Forwarded-For header is ignored. Disable to use the X-Forwarded-For header for client IP extraction."""
|
|
323
|
+
|
|
324
|
+
capture_headers: Annotated[
|
|
325
|
+
Optional[bool], pydantic.Field(alias="captureHeaders")
|
|
326
|
+
] = False
|
|
327
|
+
r"""Add request headers to events, in the __headers field"""
|
|
328
|
+
|
|
329
|
+
activity_log_sample_rate: Annotated[
|
|
330
|
+
Optional[float], pydantic.Field(alias="activityLogSampleRate")
|
|
331
|
+
] = 100
|
|
332
|
+
r"""How often request activity is logged at the `info` level. A value of 1 would log every request, 10 every 10th request, etc."""
|
|
333
|
+
|
|
334
|
+
request_timeout: Annotated[
|
|
335
|
+
Optional[float], pydantic.Field(alias="requestTimeout")
|
|
336
|
+
] = 0
|
|
337
|
+
r"""How long to wait for an incoming request to complete before aborting it. Use 0 to disable."""
|
|
338
|
+
|
|
339
|
+
socket_timeout: Annotated[
|
|
340
|
+
Optional[float], pydantic.Field(alias="socketTimeout")
|
|
341
|
+
] = 0
|
|
342
|
+
r"""How long @{product} should wait before assuming that an inactive socket has timed out. To wait forever, set to 0."""
|
|
343
|
+
|
|
344
|
+
keep_alive_timeout: Annotated[
|
|
345
|
+
Optional[float], pydantic.Field(alias="keepAliveTimeout")
|
|
346
|
+
] = 5
|
|
347
|
+
r"""After the last response is sent, @{product} will wait this long for additional data before closing the socket connection. Minimum 1 second, maximum 600 seconds (10 minutes)."""
|
|
348
|
+
|
|
349
|
+
enable_health_check: Annotated[
|
|
350
|
+
Optional[bool], pydantic.Field(alias="enableHealthCheck")
|
|
351
|
+
] = False
|
|
352
|
+
r"""Expose the /cribl_health endpoint, which returns 200 OK when this Source is healthy"""
|
|
353
|
+
|
|
354
|
+
ip_allowlist_regex: Annotated[
|
|
355
|
+
Optional[str], pydantic.Field(alias="ipAllowlistRegex")
|
|
356
|
+
] = "/.*/"
|
|
357
|
+
r"""Messages from matched IP addresses will be processed, unless also matched by the denylist"""
|
|
358
|
+
|
|
359
|
+
ip_denylist_regex: Annotated[
|
|
360
|
+
Optional[str], pydantic.Field(alias="ipDenylistRegex")
|
|
361
|
+
] = "/^$/"
|
|
362
|
+
r"""Messages from matched IP addresses will be ignored. This takes precedence over the allowlist."""
|
|
363
|
+
|
|
364
|
+
breaker_rulesets: Annotated[
|
|
365
|
+
Optional[List[str]], pydantic.Field(alias="breakerRulesets")
|
|
366
|
+
] = None
|
|
367
|
+
r"""A list of event-breaking rulesets that will be applied, in order, to the input data stream"""
|
|
368
|
+
|
|
369
|
+
stale_channel_flush_ms: Annotated[
|
|
370
|
+
Optional[float], pydantic.Field(alias="staleChannelFlushMs")
|
|
371
|
+
] = 10000
|
|
372
|
+
r"""How long (in milliseconds) the Event Breaker will wait for new data to be sent to a specific channel before flushing the data stream out, as is, to the Pipelines"""
|
|
373
|
+
|
|
374
|
+
metadata: Optional[List[InputWizWebhookMetadatum]] = None
|
|
375
|
+
r"""Fields to add to events from this input"""
|
|
376
|
+
|
|
377
|
+
allowed_paths: Annotated[
|
|
378
|
+
Optional[List[str]], pydantic.Field(alias="allowedPaths")
|
|
379
|
+
] = None
|
|
380
|
+
r"""List of URI paths accepted by this input. Wildcards are supported (such as /api/v*/hook). Defaults to allow all."""
|
|
381
|
+
|
|
382
|
+
allowed_methods: Annotated[
|
|
383
|
+
Optional[List[str]], pydantic.Field(alias="allowedMethods")
|
|
384
|
+
] = None
|
|
385
|
+
r"""List of HTTP methods accepted by this input. Wildcards are supported (such as P*, GET). Defaults to allow all."""
|
|
386
|
+
|
|
387
|
+
auth_tokens_ext: Annotated[
|
|
388
|
+
Optional[List[InputWizWebhookAuthTokensExt]],
|
|
389
|
+
pydantic.Field(alias="authTokensExt"),
|
|
390
|
+
] = None
|
|
391
|
+
r"""Shared secrets to be provided by any client (Authorization: <token>). If empty, unauthorized access is permitted."""
|
|
392
|
+
|
|
393
|
+
description: Optional[str] = None
|
cribl_control_plane/packs.py
CHANGED
|
@@ -622,6 +622,180 @@ class Packs(BaseSDK):
|
|
|
622
622
|
|
|
623
623
|
raise errors.APIError("Unexpected response received", http_res)
|
|
624
624
|
|
|
625
|
+
def get(
|
|
626
|
+
self,
|
|
627
|
+
*,
|
|
628
|
+
id: str,
|
|
629
|
+
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
|
630
|
+
server_url: Optional[str] = None,
|
|
631
|
+
timeout_ms: Optional[int] = None,
|
|
632
|
+
http_headers: Optional[Mapping[str, str]] = None,
|
|
633
|
+
) -> models.GetPacksByIDResponse:
|
|
634
|
+
r"""Get a Pack
|
|
635
|
+
|
|
636
|
+
Get the specified Pack.
|
|
637
|
+
|
|
638
|
+
:param id: The <code>id</code> of the Pack to get.
|
|
639
|
+
:param retries: Override the default retry configuration for this method
|
|
640
|
+
:param server_url: Override the default server URL for this method
|
|
641
|
+
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
|
|
642
|
+
:param http_headers: Additional headers to set or replace on requests.
|
|
643
|
+
"""
|
|
644
|
+
base_url = None
|
|
645
|
+
url_variables = None
|
|
646
|
+
if timeout_ms is None:
|
|
647
|
+
timeout_ms = self.sdk_configuration.timeout_ms
|
|
648
|
+
|
|
649
|
+
if server_url is not None:
|
|
650
|
+
base_url = server_url
|
|
651
|
+
else:
|
|
652
|
+
base_url = self._get_url(base_url, url_variables)
|
|
653
|
+
|
|
654
|
+
request = models.GetPacksByIDRequest(
|
|
655
|
+
id=id,
|
|
656
|
+
)
|
|
657
|
+
|
|
658
|
+
req = self._build_request(
|
|
659
|
+
method="GET",
|
|
660
|
+
path="/packs/{id}",
|
|
661
|
+
base_url=base_url,
|
|
662
|
+
url_variables=url_variables,
|
|
663
|
+
request=request,
|
|
664
|
+
request_body_required=False,
|
|
665
|
+
request_has_path_params=True,
|
|
666
|
+
request_has_query_params=True,
|
|
667
|
+
user_agent_header="user-agent",
|
|
668
|
+
accept_header_value="application/json",
|
|
669
|
+
http_headers=http_headers,
|
|
670
|
+
security=self.sdk_configuration.security,
|
|
671
|
+
timeout_ms=timeout_ms,
|
|
672
|
+
)
|
|
673
|
+
|
|
674
|
+
if retries == UNSET:
|
|
675
|
+
if self.sdk_configuration.retry_config is not UNSET:
|
|
676
|
+
retries = self.sdk_configuration.retry_config
|
|
677
|
+
|
|
678
|
+
retry_config = None
|
|
679
|
+
if isinstance(retries, utils.RetryConfig):
|
|
680
|
+
retry_config = (retries, ["429", "500", "502", "503", "504"])
|
|
681
|
+
|
|
682
|
+
http_res = self.do_request(
|
|
683
|
+
hook_ctx=HookContext(
|
|
684
|
+
config=self.sdk_configuration,
|
|
685
|
+
base_url=base_url or "",
|
|
686
|
+
operation_id="getPacksById",
|
|
687
|
+
oauth2_scopes=[],
|
|
688
|
+
security_source=get_security_from_env(
|
|
689
|
+
self.sdk_configuration.security, models.Security
|
|
690
|
+
),
|
|
691
|
+
),
|
|
692
|
+
request=req,
|
|
693
|
+
error_status_codes=["401", "4XX", "500", "5XX"],
|
|
694
|
+
retry_config=retry_config,
|
|
695
|
+
)
|
|
696
|
+
|
|
697
|
+
response_data: Any = None
|
|
698
|
+
if utils.match_response(http_res, "200", "application/json"):
|
|
699
|
+
return unmarshal_json_response(models.GetPacksByIDResponse, http_res)
|
|
700
|
+
if utils.match_response(http_res, "500", "application/json"):
|
|
701
|
+
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
702
|
+
raise errors.Error(response_data, http_res)
|
|
703
|
+
if utils.match_response(http_res, ["401", "4XX"], "*"):
|
|
704
|
+
http_res_text = utils.stream_to_text(http_res)
|
|
705
|
+
raise errors.APIError("API error occurred", http_res, http_res_text)
|
|
706
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
707
|
+
http_res_text = utils.stream_to_text(http_res)
|
|
708
|
+
raise errors.APIError("API error occurred", http_res, http_res_text)
|
|
709
|
+
|
|
710
|
+
raise errors.APIError("Unexpected response received", http_res)
|
|
711
|
+
|
|
712
|
+
async def get_async(
|
|
713
|
+
self,
|
|
714
|
+
*,
|
|
715
|
+
id: str,
|
|
716
|
+
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
|
717
|
+
server_url: Optional[str] = None,
|
|
718
|
+
timeout_ms: Optional[int] = None,
|
|
719
|
+
http_headers: Optional[Mapping[str, str]] = None,
|
|
720
|
+
) -> models.GetPacksByIDResponse:
|
|
721
|
+
r"""Get a Pack
|
|
722
|
+
|
|
723
|
+
Get the specified Pack.
|
|
724
|
+
|
|
725
|
+
:param id: The <code>id</code> of the Pack to get.
|
|
726
|
+
:param retries: Override the default retry configuration for this method
|
|
727
|
+
:param server_url: Override the default server URL for this method
|
|
728
|
+
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
|
|
729
|
+
:param http_headers: Additional headers to set or replace on requests.
|
|
730
|
+
"""
|
|
731
|
+
base_url = None
|
|
732
|
+
url_variables = None
|
|
733
|
+
if timeout_ms is None:
|
|
734
|
+
timeout_ms = self.sdk_configuration.timeout_ms
|
|
735
|
+
|
|
736
|
+
if server_url is not None:
|
|
737
|
+
base_url = server_url
|
|
738
|
+
else:
|
|
739
|
+
base_url = self._get_url(base_url, url_variables)
|
|
740
|
+
|
|
741
|
+
request = models.GetPacksByIDRequest(
|
|
742
|
+
id=id,
|
|
743
|
+
)
|
|
744
|
+
|
|
745
|
+
req = self._build_request_async(
|
|
746
|
+
method="GET",
|
|
747
|
+
path="/packs/{id}",
|
|
748
|
+
base_url=base_url,
|
|
749
|
+
url_variables=url_variables,
|
|
750
|
+
request=request,
|
|
751
|
+
request_body_required=False,
|
|
752
|
+
request_has_path_params=True,
|
|
753
|
+
request_has_query_params=True,
|
|
754
|
+
user_agent_header="user-agent",
|
|
755
|
+
accept_header_value="application/json",
|
|
756
|
+
http_headers=http_headers,
|
|
757
|
+
security=self.sdk_configuration.security,
|
|
758
|
+
timeout_ms=timeout_ms,
|
|
759
|
+
)
|
|
760
|
+
|
|
761
|
+
if retries == UNSET:
|
|
762
|
+
if self.sdk_configuration.retry_config is not UNSET:
|
|
763
|
+
retries = self.sdk_configuration.retry_config
|
|
764
|
+
|
|
765
|
+
retry_config = None
|
|
766
|
+
if isinstance(retries, utils.RetryConfig):
|
|
767
|
+
retry_config = (retries, ["429", "500", "502", "503", "504"])
|
|
768
|
+
|
|
769
|
+
http_res = await self.do_request_async(
|
|
770
|
+
hook_ctx=HookContext(
|
|
771
|
+
config=self.sdk_configuration,
|
|
772
|
+
base_url=base_url or "",
|
|
773
|
+
operation_id="getPacksById",
|
|
774
|
+
oauth2_scopes=[],
|
|
775
|
+
security_source=get_security_from_env(
|
|
776
|
+
self.sdk_configuration.security, models.Security
|
|
777
|
+
),
|
|
778
|
+
),
|
|
779
|
+
request=req,
|
|
780
|
+
error_status_codes=["401", "4XX", "500", "5XX"],
|
|
781
|
+
retry_config=retry_config,
|
|
782
|
+
)
|
|
783
|
+
|
|
784
|
+
response_data: Any = None
|
|
785
|
+
if utils.match_response(http_res, "200", "application/json"):
|
|
786
|
+
return unmarshal_json_response(models.GetPacksByIDResponse, http_res)
|
|
787
|
+
if utils.match_response(http_res, "500", "application/json"):
|
|
788
|
+
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
789
|
+
raise errors.Error(response_data, http_res)
|
|
790
|
+
if utils.match_response(http_res, ["401", "4XX"], "*"):
|
|
791
|
+
http_res_text = await utils.stream_to_text_async(http_res)
|
|
792
|
+
raise errors.APIError("API error occurred", http_res, http_res_text)
|
|
793
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
794
|
+
http_res_text = await utils.stream_to_text_async(http_res)
|
|
795
|
+
raise errors.APIError("API error occurred", http_res, http_res_text)
|
|
796
|
+
|
|
797
|
+
raise errors.APIError("Unexpected response received", http_res)
|
|
798
|
+
|
|
625
799
|
def update(
|
|
626
800
|
self,
|
|
627
801
|
*,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: cribl-control-plane
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.36
|
|
4
4
|
Summary: Python Client SDK Generated by Speakeasy.
|
|
5
5
|
Author: Speakeasy
|
|
6
6
|
Requires-Python: >=3.9.2
|
|
@@ -377,6 +377,7 @@ with CriblControlPlane(
|
|
|
377
377
|
* [install](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/packs/README.md#install) - Install a Pack
|
|
378
378
|
* [list](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/packs/README.md#list) - List all Packs
|
|
379
379
|
* [delete](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/packs/README.md#delete) - Uninstall a Pack
|
|
380
|
+
* [get](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/packs/README.md#get) - Get a Pack
|
|
380
381
|
* [update](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/packs/README.md#update) - Upgrade a Pack
|
|
381
382
|
|
|
382
383
|
### [pipelines](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/pipelines/README.md)
|
|
@@ -654,7 +655,7 @@ with CriblControlPlane(
|
|
|
654
655
|
|
|
655
656
|
|
|
656
657
|
**Inherit from [`CriblControlPlaneError`](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/./src/cribl_control_plane/errors/criblcontrolplaneerror.py)**:
|
|
657
|
-
* [`HealthStatusError`](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/./src/cribl_control_plane/errors/healthstatuserror.py): Healthy status. Status code `420`. Applicable to 1 of
|
|
658
|
+
* [`HealthStatusError`](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/./src/cribl_control_plane/errors/healthstatuserror.py): Healthy status. Status code `420`. Applicable to 1 of 62 methods.*
|
|
658
659
|
* [`ResponseValidationError`](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/./src/cribl_control_plane/errors/responsevalidationerror.py): Type mismatch between the response data and the expected Pydantic model. Provides access to the Pydantic validation error via the `cause` attribute.
|
|
659
660
|
|
|
660
661
|
</details>
|
|
@@ -4,12 +4,12 @@ cribl_control_plane/_hooks/clientcredentials.py,sha256=_scvqxVT_8CDEMWblZ02IQ9A1
|
|
|
4
4
|
cribl_control_plane/_hooks/registration.py,sha256=1QZB41w6If7I9dXiOSQx6dhSc6BPWrnI5Q5bMOr4iVA,624
|
|
5
5
|
cribl_control_plane/_hooks/sdkhooks.py,sha256=ggXjME1_Rdv8CVCg1XHqB83eYtbxzKyhXyfQ36Yc1gA,2816
|
|
6
6
|
cribl_control_plane/_hooks/types.py,sha256=Tw_C4zTZm01rW_89VDEUpvQ8KQr1WxN0Gu_-s_fYSPc,2998
|
|
7
|
-
cribl_control_plane/_version.py,sha256=
|
|
7
|
+
cribl_control_plane/_version.py,sha256=ejOHYMBGEWDfiRNhLiItC2Ynw0eYozR5oMezRhMMm6A,542
|
|
8
8
|
cribl_control_plane/acl.py,sha256=LMsIZTDCRTXVt73MC_QoJexElGNsicYsBBHfVGzUsG8,8923
|
|
9
9
|
cribl_control_plane/auth_sdk.py,sha256=FQZpAERAlpw6Xk-mkUdalUDSekftklv_Du4i2TLDilk,496
|
|
10
10
|
cribl_control_plane/basesdk.py,sha256=amvvB5iPT7c-L6NLo2Rhu2f7xWaapsa6OfQ37SICXOw,11954
|
|
11
11
|
cribl_control_plane/branches.py,sha256=Uz2F25RVW5hDr92Dm7yo7I9NdEN1zh9eDF20h4mD7Tg,14217
|
|
12
|
-
cribl_control_plane/commits.py,sha256=
|
|
12
|
+
cribl_control_plane/commits.py,sha256=pfGBeS_uIwUKmd_naYOR6vV7XTO3NvRC82siyGNzyLU,55556
|
|
13
13
|
cribl_control_plane/commits_files.py,sha256=XRqVF2UA_c2Ous3wFOehyUgYE_NiuE-dwzPglF4DEG4,15561
|
|
14
14
|
cribl_control_plane/configs_versions.py,sha256=Ov9FqT4q9aKcCBUs1Qn65CdjnJK1pXXWPTYlHHHj-gk,8336
|
|
15
15
|
cribl_control_plane/destinations.py,sha256=ttEDfTKW-DlNBc_q5-EuqdNFMyh1cx_GI3ipN86pcpY,37389
|
|
@@ -27,7 +27,7 @@ cribl_control_plane/health.py,sha256=mDYmC13IE_M9jTVKKBOr5aeZ5QArUURLT1PyPpvn5Ho
|
|
|
27
27
|
cribl_control_plane/hectokens.py,sha256=0EGgGGrM83m1YmTZwkN5S4xFkHQGnw1IZe3y6uMwmLw,19151
|
|
28
28
|
cribl_control_plane/httpclient.py,sha256=Eu73urOAiZQtdUIyOUnPccxCiBbWEKrXG-JrRG3SLM4,3946
|
|
29
29
|
cribl_control_plane/lakedatasets.py,sha256=7WYWcjXMzliDW1j3TQlgikc_h54IUq4lsysVy_39l38,46578
|
|
30
|
-
cribl_control_plane/models/__init__.py,sha256=
|
|
30
|
+
cribl_control_plane/models/__init__.py,sha256=1Omj4_aWaFDeryizexOL6B6D5APpfPAv0Kghhp_RH0I,357899
|
|
31
31
|
cribl_control_plane/models/addhectokenrequest.py,sha256=mzQLKrMWlwxNheqEs5SM_yrT-gyenfCWgHKhmb5oXFQ,800
|
|
32
32
|
cribl_control_plane/models/appmode.py,sha256=5xRJz9oP5ah4b6dcay4Q1IbQ9irm6k6x2BrTNysIMY4,300
|
|
33
33
|
cribl_control_plane/models/authtoken.py,sha256=uW0aIs8j14CQzFM2ueY5GIWFulna91cigBWQ3oPlDgY,295
|
|
@@ -77,6 +77,7 @@ cribl_control_plane/models/getmasterworkerentryop.py,sha256=dIMOw_dSQo-vP-iuDhaT
|
|
|
77
77
|
cribl_control_plane/models/getoutputbyidop.py,sha256=Y8f9ZvCHlRE1cugt2APdigrcjLQz7R5jpkrLVUcDNcI,1128
|
|
78
78
|
cribl_control_plane/models/getoutputpqbyidop.py,sha256=XYx-GSqqhY30IVvZUc3d87UUOuJ9t3xjuKamK1DUJjQ,1140
|
|
79
79
|
cribl_control_plane/models/getoutputsamplesbyidop.py,sha256=H07FC4EXq5nfssP7d9ikjsXMc3L7lykHC26uh9rPjBI,1295
|
|
80
|
+
cribl_control_plane/models/getpacksbyidop.py,sha256=OvlicPyqRImbhJ6tJwA8WGf1HX0KnsqVFguSh-SEb4s,1114
|
|
80
81
|
cribl_control_plane/models/getpacksop.py,sha256=LztkNqAPv55ipG4A0sMdgUrA5bRhdMLr6VtKLA_rQPs,1561
|
|
81
82
|
cribl_control_plane/models/getpipelinebyidop.py,sha256=ky8YvLZRrUCs4HTiAvMcQ-nfIWb8Ke7NeDJMw1xdEho,1080
|
|
82
83
|
cribl_control_plane/models/getroutesbyidop.py,sha256=9TeXnLc_WkHoAYbykYxlDP-I0AzsrlYi-iA28jhmpZ8,1058
|
|
@@ -95,14 +96,14 @@ cribl_control_plane/models/gitfile.py,sha256=CMk0Xm08WFtUX73TaKBNAyRagZh-DMIY-m3
|
|
|
95
96
|
cribl_control_plane/models/gitfilesresponse.py,sha256=_xLOHOuJLUdy3BYCrkUQN8x5YLfrXcdCis57x2N32jo,670
|
|
96
97
|
cribl_control_plane/models/gitinfo.py,sha256=Xbct3PSJJVYojIDLtzy2mB_wNWsgiBgnsT9ZfjN0A-U,515
|
|
97
98
|
cribl_control_plane/models/gitlogresult.py,sha256=JSTXgsLOce7j1z0mJGALXWeOR7pclWzY0T_8gUJdzNk,830
|
|
98
|
-
cribl_control_plane/models/gitrevertparams.py,sha256=
|
|
99
|
+
cribl_control_plane/models/gitrevertparams.py,sha256=wMVlEcrprmZHUA01vi3CC8fMMDFqURJndv-1LaF2gik,478
|
|
99
100
|
cribl_control_plane/models/gitrevertresult.py,sha256=RQ7-QhPP7zerEEF2bUhVI_IVft7tqYVOZrNLCWeB32c,1056
|
|
100
101
|
cribl_control_plane/models/gitstatusresult.py,sha256=7-pEpOnb4xzQwWo3rPBRN0tbM6UdG4KSIhkiUPyU3to,1166
|
|
101
102
|
cribl_control_plane/models/hbcriblinfo.py,sha256=hA2OxTBrrdu2q5XH5UzfEQUQJ6OKEctujlMjFa4IEts,2262
|
|
102
103
|
cribl_control_plane/models/hbleaderinfo.py,sha256=SU5iM_I4sqxoTOzAQsw-rpOMfXwKl1ymze9nUrw6z6U,503
|
|
103
104
|
cribl_control_plane/models/healthstatus.py,sha256=u4ePDejWSLI7yhfFxKyB5GVkihAG_z9PcHqCA2H9-e0,735
|
|
104
105
|
cribl_control_plane/models/heartbeatmetadata.py,sha256=IlLu0BnjnwBeXQtZSk4YUj9gKiI8n95ipYJ2Og2x1IQ,2255
|
|
105
|
-
cribl_control_plane/models/input.py,sha256=
|
|
106
|
+
cribl_control_plane/models/input.py,sha256=NiVMXM0A09Pg9L-Jow4gqb0YR6j2q0Wlv31fcAC6YGg,7682
|
|
106
107
|
cribl_control_plane/models/inputappscope.py,sha256=112rxjGeZtRPXnUiW6ZdFm3C32vO_BWsRRdH6Ckw3rg,19935
|
|
107
108
|
cribl_control_plane/models/inputazureblob.py,sha256=Uc3rFKDNQfoywHkw9x-3-UxFypWLFBXBglp7ga5UiJA,14822
|
|
108
109
|
cribl_control_plane/models/inputcollection.py,sha256=KzesuvW-qfuPeLygKp1peNx-hrIUeGqsYb2g-Ls8u2A,9267
|
|
@@ -160,6 +161,7 @@ cribl_control_plane/models/inputwef.py,sha256=tqoo8N7erQd-xbJGun5qoYi40Wn7_d-9H7
|
|
|
160
161
|
cribl_control_plane/models/inputwindowsmetrics.py,sha256=c7Izs2mRg6QKR7m2_NoXM3iecCcV_anX5dIRhW27YUU,17026
|
|
161
162
|
cribl_control_plane/models/inputwineventlogs.py,sha256=RzYw6fuROAoT8Gkw8NdXKamUhjVuCk5E8E25LCZh5LI,9947
|
|
162
163
|
cribl_control_plane/models/inputwiz.py,sha256=QidRJ_uRDP0TkYPM-Gi681GEMvHsiNK4k3N_Q9Bag_E,14508
|
|
164
|
+
cribl_control_plane/models/inputwizwebhook.py,sha256=nqq62GRGlNH3nY4DmQjq1sNJ0XSMydBCuh1_Xu2drXA,18569
|
|
163
165
|
cribl_control_plane/models/inputzscalerhec.py,sha256=fWXEs_RTlz8fxDlWuo0hxmZH-DjslyKbkLaxXksrcvc,20140
|
|
164
166
|
cribl_control_plane/models/lakedatasetsearchconfig.py,sha256=R0zz0K1FQ3gxPx44ezINy9y2bEFBGIWyvniF25D7Ydw,591
|
|
165
167
|
cribl_control_plane/models/lakehouseconnectiontype.py,sha256=W8X07YtfXxwYYkwugN9u65vXfL701NHj3cUWIYys7T0,223
|
|
@@ -274,7 +276,7 @@ cribl_control_plane/models/updateroutesbyidop.py,sha256=CoEURdSBZ4-pp1WSncdT_oZC
|
|
|
274
276
|
cribl_control_plane/models/useraccesscontrollist.py,sha256=UNM3mdqFByd9GAovAi26z9y-5H15hrKDzw0M-f-Pn2o,483
|
|
275
277
|
cribl_control_plane/models/workertypes.py,sha256=qphL2wkL55CU8V7xBts2lsMMi6IaA7LhUvKL_9xMod4,218
|
|
276
278
|
cribl_control_plane/nodes.py,sha256=015pTP--RfK2YFrMRgBe8ha32Mp_38JGDYdxkGdjtzY,17429
|
|
277
|
-
cribl_control_plane/packs.py,sha256=
|
|
279
|
+
cribl_control_plane/packs.py,sha256=EaBtQCqZ8TB3A_yoStevrpDL8nxEN_zBOpp4aQHuQMI,40244
|
|
278
280
|
cribl_control_plane/pipelines.py,sha256=gHyI9nwt_3cxBQ7gt6EPUPs9NuRC0iA_PoFRAE4Z-V8,35892
|
|
279
281
|
cribl_control_plane/py.typed,sha256=zrp19r0G21lr2yRiMC0f8MFkQFGj9wMpSbboePMg8KM,59
|
|
280
282
|
cribl_control_plane/routes_sdk.py,sha256=Snb8Dmim7Fm9EsMqbyjuPnXKmqhJ10L_t1bujJUWTyM,31025
|
|
@@ -307,6 +309,6 @@ cribl_control_plane/utils/url.py,sha256=BgGPgcTA6MRK4bF8fjP2dUopN3NzEzxWMXPBVg8N
|
|
|
307
309
|
cribl_control_plane/utils/values.py,sha256=CcaCXEa3xHhkUDROyXZocN8f0bdITftv9Y0P9lTf0YM,3517
|
|
308
310
|
cribl_control_plane/versions.py,sha256=Wdaxc2wZeEeD12wAh7SQ0RGG9KgwKaWQ7bc8qOQ8oAo,920
|
|
309
311
|
cribl_control_plane/versions_configs.py,sha256=5CKcfN4SzuyFgggrx6O8H_h3GhNyKSbfdVhSkVGZKi4,7284
|
|
310
|
-
cribl_control_plane-0.0.
|
|
311
|
-
cribl_control_plane-0.0.
|
|
312
|
-
cribl_control_plane-0.0.
|
|
312
|
+
cribl_control_plane-0.0.36.dist-info/METADATA,sha256=TpvMoCE-SRpgLwCAY_R-du4ARF4W6CfppJeMlVhUEAM,38835
|
|
313
|
+
cribl_control_plane-0.0.36.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
|
|
314
|
+
cribl_control_plane-0.0.36.dist-info/RECORD,,
|
|
File without changes
|