cribl-control-plane 0.4.0a12__py3-none-any.whl → 0.4.0b12__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 +4 -4
- cribl_control_plane/acl.py +14 -6
- cribl_control_plane/branches.py +24 -8
- cribl_control_plane/commits.py +98 -42
- cribl_control_plane/commits_files.py +28 -12
- cribl_control_plane/configs_versions.py +14 -10
- cribl_control_plane/destinations.py +70 -30
- cribl_control_plane/destinations_pq.py +28 -12
- cribl_control_plane/groups_sdk.py +84 -60
- cribl_control_plane/health.py +10 -2
- cribl_control_plane/hectokens.py +28 -32
- cribl_control_plane/lakedatasets.py +70 -86
- cribl_control_plane/models/__init__.py +266 -438
- cribl_control_plane/models/addhectokenrequest.py +1 -7
- cribl_control_plane/models/configgroup.py +1 -0
- cribl_control_plane/models/{getversionbranchop.py → countedbranchinfo.py} +2 -6
- cribl_control_plane/models/countedconfiggroup.py +20 -0
- cribl_control_plane/models/countedcribllakedataset.py +20 -0
- cribl_control_plane/models/counteddistributedsummary.py +20 -0
- cribl_control_plane/models/countedgitcommitsummary.py +20 -0
- cribl_control_plane/models/countedgitcountresult.py +20 -0
- cribl_control_plane/models/{createinputop.py → countedgitdiffresult.py} +5 -9
- cribl_control_plane/models/countedgitfilesresponse.py +20 -0
- cribl_control_plane/models/{getversioninfoop.py → countedgitinfo.py} +2 -6
- cribl_control_plane/models/countedgitlogresult.py +20 -0
- cribl_control_plane/models/countedgitrevertresult.py +20 -0
- cribl_control_plane/models/countedgitshowresult.py +20 -0
- cribl_control_plane/models/countedgitstatusresult.py +20 -0
- cribl_control_plane/models/{listinputop.py → countedinput.py} +2 -6
- cribl_control_plane/models/countedinputsplunkhec.py +20 -0
- cribl_control_plane/models/countedjobinfo.py +20 -0
- cribl_control_plane/models/countedmasterworkerentry.py +20 -0
- cribl_control_plane/models/countednumber.py +19 -0
- cribl_control_plane/models/countedobject.py +19 -0
- cribl_control_plane/models/{listoutputop.py → countedoutput.py} +2 -6
- cribl_control_plane/models/{createoutputop.py → countedoutputsamplesresponse.py} +5 -9
- cribl_control_plane/models/countedoutputtestresponse.py +20 -0
- cribl_control_plane/models/countedpackinfo.py +20 -0
- cribl_control_plane/models/{createpacksop.py → countedpackinstallinfo.py} +2 -6
- cribl_control_plane/models/{listpipelineop.py → countedpipeline.py} +2 -6
- cribl_control_plane/models/{listroutesop.py → countedroutes.py} +2 -6
- cribl_control_plane/models/{createversionpushop.py → countedstring.py} +2 -6
- cribl_control_plane/models/countedteamaccesscontrollist.py +20 -0
- cribl_control_plane/models/counteduseraccesscontrollist.py +20 -0
- cribl_control_plane/models/createauthloginop.py +18 -0
- cribl_control_plane/models/createconfiggroupbyproductop.py +1 -20
- cribl_control_plane/models/createcribllakedatasetbylakeidop.py +1 -19
- cribl_control_plane/models/createinputhectokenbyidop.py +1 -20
- cribl_control_plane/models/createoutputtestbyidop.py +1 -20
- cribl_control_plane/models/createroutesappendbyidop.py +2 -20
- cribl_control_plane/models/createversioncommitop.py +1 -19
- cribl_control_plane/models/createversionrevertop.py +1 -19
- cribl_control_plane/models/createversionundoop.py +1 -18
- cribl_control_plane/models/criblevent.py +15 -0
- cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +1 -20
- cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +1 -20
- cribl_control_plane/models/deleteinputbyidop.py +1 -20
- cribl_control_plane/models/deleteoutputbyidop.py +1 -20
- cribl_control_plane/models/deleteoutputpqbyidop.py +1 -19
- cribl_control_plane/models/deletepacksbyidop.py +1 -20
- cribl_control_plane/models/deletepipelinebyidop.py +1 -20
- cribl_control_plane/models/difffiles.py +5 -46
- cribl_control_plane/models/diffline.py +26 -0
- cribl_control_plane/models/difflinecontext.py +28 -0
- cribl_control_plane/models/difflinedelete.py +25 -0
- cribl_control_plane/models/difflineinsert.py +25 -0
- cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +1 -19
- cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +1 -19
- cribl_control_plane/models/getconfiggroupbyproductandidop.py +1 -19
- cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +1 -19
- cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +1 -20
- cribl_control_plane/models/getcribllakedatasetbylakeidop.py +2 -79
- cribl_control_plane/models/getinputbyidop.py +1 -20
- cribl_control_plane/models/getmasterworkerentryop.py +1 -18
- cribl_control_plane/models/getoutputbyidop.py +1 -20
- cribl_control_plane/models/getoutputpqbyidop.py +1 -20
- cribl_control_plane/models/getoutputsamplesbyidop.py +1 -20
- cribl_control_plane/models/getpacksbyidop.py +1 -20
- cribl_control_plane/models/getpacksop.py +1 -19
- cribl_control_plane/models/getpipelinebyidop.py +1 -20
- cribl_control_plane/models/getroutesbyidop.py +1 -20
- cribl_control_plane/models/getsummaryop.py +1 -19
- cribl_control_plane/models/getversioncountop.py +1 -19
- cribl_control_plane/models/getversiondiffop.py +1 -19
- cribl_control_plane/models/getversionfilesop.py +1 -19
- cribl_control_plane/models/getversionop.py +1 -19
- cribl_control_plane/models/getversionshowop.py +1 -19
- cribl_control_plane/models/getversionstatusop.py +1 -19
- cribl_control_plane/models/groupcreaterequest.py +1 -0
- cribl_control_plane/models/hbcriblinfo.py +3 -4
- cribl_control_plane/models/heartbeatmetadata.py +3 -11
- cribl_control_plane/models/inputcloudflarehec.py +9 -4
- cribl_control_plane/models/inputconfluentcloud.py +4 -2
- cribl_control_plane/models/inputcribllakehttp.py +15 -0
- cribl_control_plane/models/inputkafka.py +4 -2
- cribl_control_plane/models/inputmsk.py +4 -2
- cribl_control_plane/models/inputsnmp.py +33 -7
- cribl_control_plane/models/inputsplunkhec.py +8 -4
- cribl_control_plane/models/inputwef.py +23 -0
- cribl_control_plane/models/inputwiz.py +95 -0
- cribl_control_plane/models/inputzscalerhec.py +8 -4
- cribl_control_plane/models/listconfiggroupbyproductop.py +1 -19
- cribl_control_plane/models/listmasterworkerentryop.py +1 -19
- cribl_control_plane/models/masterworkerentry.py +3 -11
- cribl_control_plane/models/nodeprovidedinfo.py +2 -10
- cribl_control_plane/models/outputnetflow.py +0 -7
- cribl_control_plane/models/outputsplunklb.py +10 -0
- cribl_control_plane/models/runnablejobcollection.py +0 -56
- cribl_control_plane/models/runnablejobexecutor.py +0 -28
- cribl_control_plane/models/runnablejobscheduledsearch.py +0 -28
- cribl_control_plane/models/updateconfiggroupbyproductandidop.py +1 -19
- cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +1 -20
- cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +1 -20
- cribl_control_plane/models/updatehectokenrequest.py +1 -7
- cribl_control_plane/models/updateinputbyidop.py +1 -19
- cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +1 -20
- cribl_control_plane/models/updateoutputbyidop.py +1 -19
- cribl_control_plane/models/updatepacksbyidop.py +1 -20
- cribl_control_plane/models/updatepipelinebyidop.py +1 -19
- cribl_control_plane/models/updateroutesbyidop.py +1 -19
- cribl_control_plane/nodes.py +28 -20
- cribl_control_plane/packs.py +80 -32
- cribl_control_plane/pipelines.py +70 -30
- cribl_control_plane/routes_sdk.py +56 -28
- cribl_control_plane/samples.py +28 -16
- cribl_control_plane/sources.py +70 -30
- cribl_control_plane/statuses.py +14 -6
- cribl_control_plane/summaries.py +14 -6
- cribl_control_plane/teams.py +14 -6
- cribl_control_plane/tokens.py +26 -8
- cribl_control_plane/versions_configs.py +14 -6
- {cribl_control_plane-0.4.0a12.dist-info → cribl_control_plane-0.4.0b12.dist-info}/METADATA +23 -23
- {cribl_control_plane-0.4.0a12.dist-info → cribl_control_plane-0.4.0b12.dist-info}/RECORD +135 -113
- cribl_control_plane/models/createpipelineop.py +0 -24
- cribl_control_plane/models/lookupversions.py +0 -13
- {cribl_control_plane-0.4.0a12.dist-info → cribl_control_plane-0.4.0b12.dist-info}/WHEEL +0 -0
- {cribl_control_plane-0.4.0a12.dist-info → cribl_control_plane-0.4.0b12.dist-info}/licenses/LICENSE +0 -0
|
@@ -126,23 +126,118 @@ class InputWizPq(BaseModel):
|
|
|
126
126
|
return value
|
|
127
127
|
|
|
128
128
|
|
|
129
|
+
class ManageStateTypedDict(TypedDict):
|
|
130
|
+
pass
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
class ManageState(BaseModel):
|
|
134
|
+
pass
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
class InputWizLogLevel(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
138
|
+
r"""Collector runtime log level"""
|
|
139
|
+
|
|
140
|
+
ERROR = "error"
|
|
141
|
+
WARN = "warn"
|
|
142
|
+
INFO = "info"
|
|
143
|
+
DEBUG = "debug"
|
|
144
|
+
SILLY = "silly"
|
|
145
|
+
|
|
146
|
+
|
|
129
147
|
class InputWizContentConfigTypedDict(TypedDict):
|
|
130
148
|
content_type: str
|
|
131
149
|
r"""The name of the Wiz query"""
|
|
150
|
+
content_query: str
|
|
151
|
+
r"""Template for POST body to send with the Collect request. Reference global variables, or functions using template params: `${C.vars.myVar}`, or `${Date.now()}`, `${param}`."""
|
|
132
152
|
content_description: NotRequired[str]
|
|
133
153
|
enabled: NotRequired[bool]
|
|
154
|
+
state_tracking: NotRequired[bool]
|
|
155
|
+
r"""Track collection progress between consecutive scheduled executions"""
|
|
156
|
+
state_update_expression: NotRequired[str]
|
|
157
|
+
r"""JavaScript expression that defines how to update the state from an event. Use the event's data and the current state to compute the new state. See [Understanding State Expression Fields](https://docs.cribl.io/stream/collectors-rest#state-tracking-expression-fields) for more information."""
|
|
158
|
+
state_merge_expression: NotRequired[str]
|
|
159
|
+
r"""JavaScript expression that defines which state to keep when merging a task's newly reported state with previously saved state. Evaluates `prevState` and `newState` variables, resolving to the state to keep."""
|
|
160
|
+
manage_state: NotRequired[ManageStateTypedDict]
|
|
161
|
+
cron_schedule: NotRequired[str]
|
|
162
|
+
r"""A cron schedule on which to run this job"""
|
|
163
|
+
earliest: NotRequired[str]
|
|
164
|
+
r"""Earliest time, relative to now. Format supported: [+|-]<time_integer><time_unit>@<snap-to_time_unit> (ex: -1hr, -42m, -42m@h)"""
|
|
165
|
+
latest: NotRequired[str]
|
|
166
|
+
r"""Latest time, relative to now. Format supported: [+|-]<time_integer><time_unit>@<snap-to_time_unit> (ex: -1hr, -42m, -42m@h)"""
|
|
167
|
+
job_timeout: NotRequired[str]
|
|
168
|
+
r"""Maximum time the job is allowed to run (examples: 30, 45s, 15m). Units default to seconds if not specified. Enter 0 for unlimited time."""
|
|
169
|
+
log_level: NotRequired[InputWizLogLevel]
|
|
170
|
+
r"""Collector runtime log level"""
|
|
171
|
+
max_pages: NotRequired[float]
|
|
172
|
+
r"""Maximum number of pages to retrieve per collection task. Defaults to 0. Set to 0 to retrieve all pages."""
|
|
134
173
|
|
|
135
174
|
|
|
136
175
|
class InputWizContentConfig(BaseModel):
|
|
137
176
|
content_type: Annotated[str, pydantic.Field(alias="contentType")]
|
|
138
177
|
r"""The name of the Wiz query"""
|
|
139
178
|
|
|
179
|
+
content_query: Annotated[str, pydantic.Field(alias="contentQuery")]
|
|
180
|
+
r"""Template for POST body to send with the Collect request. Reference global variables, or functions using template params: `${C.vars.myVar}`, or `${Date.now()}`, `${param}`."""
|
|
181
|
+
|
|
140
182
|
content_description: Annotated[
|
|
141
183
|
Optional[str], pydantic.Field(alias="contentDescription")
|
|
142
184
|
] = None
|
|
143
185
|
|
|
144
186
|
enabled: Optional[bool] = False
|
|
145
187
|
|
|
188
|
+
state_tracking: Annotated[Optional[bool], pydantic.Field(alias="stateTracking")] = (
|
|
189
|
+
False
|
|
190
|
+
)
|
|
191
|
+
r"""Track collection progress between consecutive scheduled executions"""
|
|
192
|
+
|
|
193
|
+
state_update_expression: Annotated[
|
|
194
|
+
Optional[str], pydantic.Field(alias="stateUpdateExpression")
|
|
195
|
+
] = "__timestampExtracted !== false && {latestTime: (state.latestTime || 0) > _time ? state.latestTime : _time}"
|
|
196
|
+
r"""JavaScript expression that defines how to update the state from an event. Use the event's data and the current state to compute the new state. See [Understanding State Expression Fields](https://docs.cribl.io/stream/collectors-rest#state-tracking-expression-fields) for more information."""
|
|
197
|
+
|
|
198
|
+
state_merge_expression: Annotated[
|
|
199
|
+
Optional[str], pydantic.Field(alias="stateMergeExpression")
|
|
200
|
+
] = "prevState.latestTime > newState.latestTime ? prevState : newState"
|
|
201
|
+
r"""JavaScript expression that defines which state to keep when merging a task's newly reported state with previously saved state. Evaluates `prevState` and `newState` variables, resolving to the state to keep."""
|
|
202
|
+
|
|
203
|
+
manage_state: Annotated[
|
|
204
|
+
Optional[ManageState], pydantic.Field(alias="manageState")
|
|
205
|
+
] = None
|
|
206
|
+
|
|
207
|
+
cron_schedule: Annotated[Optional[str], pydantic.Field(alias="cronSchedule")] = (
|
|
208
|
+
"0 */12 * * *"
|
|
209
|
+
)
|
|
210
|
+
r"""A cron schedule on which to run this job"""
|
|
211
|
+
|
|
212
|
+
earliest: Optional[str] = "-12h@h"
|
|
213
|
+
r"""Earliest time, relative to now. Format supported: [+|-]<time_integer><time_unit>@<snap-to_time_unit> (ex: -1hr, -42m, -42m@h)"""
|
|
214
|
+
|
|
215
|
+
latest: Optional[str] = "now"
|
|
216
|
+
r"""Latest time, relative to now. Format supported: [+|-]<time_integer><time_unit>@<snap-to_time_unit> (ex: -1hr, -42m, -42m@h)"""
|
|
217
|
+
|
|
218
|
+
job_timeout: Annotated[Optional[str], pydantic.Field(alias="jobTimeout")] = "0"
|
|
219
|
+
r"""Maximum time the job is allowed to run (examples: 30, 45s, 15m). Units default to seconds if not specified. Enter 0 for unlimited time."""
|
|
220
|
+
|
|
221
|
+
log_level: Annotated[
|
|
222
|
+
Annotated[
|
|
223
|
+
Optional[InputWizLogLevel], PlainValidator(validate_open_enum(False))
|
|
224
|
+
],
|
|
225
|
+
pydantic.Field(alias="logLevel"),
|
|
226
|
+
] = InputWizLogLevel.INFO
|
|
227
|
+
r"""Collector runtime log level"""
|
|
228
|
+
|
|
229
|
+
max_pages: Annotated[Optional[float], pydantic.Field(alias="maxPages")] = 0
|
|
230
|
+
r"""Maximum number of pages to retrieve per collection task. Defaults to 0. Set to 0 to retrieve all pages."""
|
|
231
|
+
|
|
232
|
+
@field_serializer("log_level")
|
|
233
|
+
def serialize_log_level(self, value):
|
|
234
|
+
if isinstance(value, str):
|
|
235
|
+
try:
|
|
236
|
+
return models.InputWizLogLevel(value)
|
|
237
|
+
except ValueError:
|
|
238
|
+
return value
|
|
239
|
+
return value
|
|
240
|
+
|
|
146
241
|
|
|
147
242
|
class InputWizMetadatumTypedDict(TypedDict):
|
|
148
243
|
name: str
|
|
@@ -147,10 +147,12 @@ class InputZscalerHecAuthTokenMetadatum(BaseModel):
|
|
|
147
147
|
|
|
148
148
|
|
|
149
149
|
class InputZscalerHecAuthTokenTypedDict(TypedDict):
|
|
150
|
-
token:
|
|
150
|
+
token: str
|
|
151
|
+
r"""Shared secret to be provided by any client (Authorization: <token>)"""
|
|
151
152
|
auth_type: NotRequired[InputZscalerHecAuthenticationMethod]
|
|
152
153
|
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
153
|
-
token_secret: NotRequired[
|
|
154
|
+
token_secret: NotRequired[str]
|
|
155
|
+
r"""Select or create a stored text secret"""
|
|
154
156
|
enabled: NotRequired[bool]
|
|
155
157
|
description: NotRequired[str]
|
|
156
158
|
allowed_indexes_at_token: NotRequired[List[str]]
|
|
@@ -160,7 +162,8 @@ class InputZscalerHecAuthTokenTypedDict(TypedDict):
|
|
|
160
162
|
|
|
161
163
|
|
|
162
164
|
class InputZscalerHecAuthToken(BaseModel):
|
|
163
|
-
token:
|
|
165
|
+
token: str
|
|
166
|
+
r"""Shared secret to be provided by any client (Authorization: <token>)"""
|
|
164
167
|
|
|
165
168
|
auth_type: Annotated[
|
|
166
169
|
Annotated[
|
|
@@ -171,7 +174,8 @@ class InputZscalerHecAuthToken(BaseModel):
|
|
|
171
174
|
] = InputZscalerHecAuthenticationMethod.MANUAL
|
|
172
175
|
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
173
176
|
|
|
174
|
-
token_secret: Annotated[Optional[
|
|
177
|
+
token_secret: Annotated[Optional[str], pydantic.Field(alias="tokenSecret")] = None
|
|
178
|
+
r"""Select or create a stored text secret"""
|
|
175
179
|
|
|
176
180
|
enabled: Optional[bool] = True
|
|
177
181
|
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from .configgroup import ConfigGroup, ConfigGroupTypedDict
|
|
5
4
|
from .productscore import ProductsCore
|
|
6
5
|
from cribl_control_plane import models
|
|
7
6
|
from cribl_control_plane.types import BaseModel
|
|
@@ -13,7 +12,7 @@ from cribl_control_plane.utils import (
|
|
|
13
12
|
)
|
|
14
13
|
from pydantic import field_serializer
|
|
15
14
|
from pydantic.functional_validators import PlainValidator
|
|
16
|
-
from typing import
|
|
15
|
+
from typing import Optional
|
|
17
16
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
18
17
|
|
|
19
18
|
|
|
@@ -45,20 +44,3 @@ class ListConfigGroupByProductRequest(BaseModel):
|
|
|
45
44
|
except ValueError:
|
|
46
45
|
return value
|
|
47
46
|
return value
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
class ListConfigGroupByProductResponseTypedDict(TypedDict):
|
|
51
|
-
r"""a list of ConfigGroup objects"""
|
|
52
|
-
|
|
53
|
-
count: NotRequired[int]
|
|
54
|
-
r"""number of items present in the items array"""
|
|
55
|
-
items: NotRequired[List[ConfigGroupTypedDict]]
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
class ListConfigGroupByProductResponse(BaseModel):
|
|
59
|
-
r"""a list of ConfigGroup objects"""
|
|
60
|
-
|
|
61
|
-
count: Optional[int] = None
|
|
62
|
-
r"""number of items present in the items array"""
|
|
63
|
-
|
|
64
|
-
items: Optional[List[ConfigGroup]] = None
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from .masterworkerentry import MasterWorkerEntry, MasterWorkerEntryTypedDict
|
|
5
4
|
from cribl_control_plane.types import BaseModel
|
|
6
5
|
from cribl_control_plane.utils import FieldMetadata, QueryParamMetadata
|
|
7
6
|
import pydantic
|
|
8
|
-
from typing import
|
|
7
|
+
from typing import Optional
|
|
9
8
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
10
9
|
|
|
11
10
|
|
|
@@ -63,20 +62,3 @@ class ListMasterWorkerEntryRequest(BaseModel):
|
|
|
63
62
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
64
63
|
] = None
|
|
65
64
|
r"""Starting point from which to retrieve results for this request. Use with <code>limit</code> to paginate the response into manageable batches."""
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
class ListMasterWorkerEntryResponseTypedDict(TypedDict):
|
|
69
|
-
r"""a list of MasterWorkerEntry objects"""
|
|
70
|
-
|
|
71
|
-
count: NotRequired[int]
|
|
72
|
-
r"""number of items present in the items array"""
|
|
73
|
-
items: NotRequired[List[MasterWorkerEntryTypedDict]]
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
class ListMasterWorkerEntryResponse(BaseModel):
|
|
77
|
-
r"""a list of MasterWorkerEntry objects"""
|
|
78
|
-
|
|
79
|
-
count: Optional[int] = None
|
|
80
|
-
r"""number of items present in the items array"""
|
|
81
|
-
|
|
82
|
-
items: Optional[List[MasterWorkerEntry]] = None
|
|
@@ -11,18 +11,10 @@ from enum import Enum
|
|
|
11
11
|
import pydantic
|
|
12
12
|
from pydantic import field_serializer
|
|
13
13
|
from pydantic.functional_validators import PlainValidator
|
|
14
|
-
from typing import Optional
|
|
14
|
+
from typing import Any, Dict, Optional
|
|
15
15
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
class LastMetricsTypedDict(TypedDict):
|
|
19
|
-
pass
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
class LastMetrics(BaseModel):
|
|
23
|
-
pass
|
|
24
|
-
|
|
25
|
-
|
|
26
18
|
class MasterWorkerEntryType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
27
19
|
INFO = "info"
|
|
28
20
|
REQ = "req"
|
|
@@ -46,7 +38,7 @@ class MasterWorkerEntryTypedDict(TypedDict):
|
|
|
46
38
|
worker_processes: float
|
|
47
39
|
deployable: NotRequired[bool]
|
|
48
40
|
disconnected: NotRequired[bool]
|
|
49
|
-
last_metrics: NotRequired[
|
|
41
|
+
last_metrics: NotRequired[Dict[str, Any]]
|
|
50
42
|
metadata: NotRequired[HeartbeatMetadataTypedDict]
|
|
51
43
|
node_upgrade_status: NotRequired[NodeUpgradeStatusTypedDict]
|
|
52
44
|
status: NotRequired[str]
|
|
@@ -72,7 +64,7 @@ class MasterWorkerEntry(BaseModel):
|
|
|
72
64
|
disconnected: Optional[bool] = None
|
|
73
65
|
|
|
74
66
|
last_metrics: Annotated[
|
|
75
|
-
Optional[
|
|
67
|
+
Optional[Dict[str, Any]], pydantic.Field(alias="lastMetrics")
|
|
76
68
|
] = None
|
|
77
69
|
|
|
78
70
|
metadata: Optional[HeartbeatMetadata] = None
|
|
@@ -10,21 +10,13 @@ from typing import Dict, List, Optional, Union
|
|
|
10
10
|
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
class NodeProvidedInfoTagsTypedDict(TypedDict):
|
|
14
|
-
pass
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
class NodeProvidedInfoTags(BaseModel):
|
|
18
|
-
pass
|
|
19
|
-
|
|
20
|
-
|
|
21
13
|
class NodeProvidedInfoAwsTypedDict(TypedDict):
|
|
22
14
|
enabled: bool
|
|
23
15
|
instance_id: str
|
|
24
16
|
region: str
|
|
25
17
|
type: str
|
|
26
18
|
zone: str
|
|
27
|
-
tags: NotRequired[
|
|
19
|
+
tags: NotRequired[Dict[str, str]]
|
|
28
20
|
|
|
29
21
|
|
|
30
22
|
class NodeProvidedInfoAws(BaseModel):
|
|
@@ -38,7 +30,7 @@ class NodeProvidedInfoAws(BaseModel):
|
|
|
38
30
|
|
|
39
31
|
zone: str
|
|
40
32
|
|
|
41
|
-
tags: Optional[
|
|
33
|
+
tags: Optional[Dict[str, str]] = None
|
|
42
34
|
|
|
43
35
|
|
|
44
36
|
class NodeProvidedInfoHostOsTypedDict(TypedDict):
|
|
@@ -43,8 +43,6 @@ class OutputNetflowTypedDict(TypedDict):
|
|
|
43
43
|
r"""Tags for filtering and grouping in @{product}"""
|
|
44
44
|
dns_resolve_period_sec: NotRequired[float]
|
|
45
45
|
r"""How often to resolve the destination hostname to an IP address. Ignored if all destinations are IP addresses. A value of 0 means every datagram sent will incur a DNS lookup."""
|
|
46
|
-
enable_ip_spoofing: NotRequired[bool]
|
|
47
|
-
r"""Send NetFlow traffic using the original event's Source IP and port. To enable this, you must install the external `udp-sender` helper binary at `/usr/bin/udp-sender` on all Worker Nodes and grant it the `CAP_NET_RAW` capability."""
|
|
48
46
|
description: NotRequired[str]
|
|
49
47
|
|
|
50
48
|
|
|
@@ -76,9 +74,4 @@ class OutputNetflow(BaseModel):
|
|
|
76
74
|
] = 0
|
|
77
75
|
r"""How often to resolve the destination hostname to an IP address. Ignored if all destinations are IP addresses. A value of 0 means every datagram sent will incur a DNS lookup."""
|
|
78
76
|
|
|
79
|
-
enable_ip_spoofing: Annotated[
|
|
80
|
-
Optional[bool], pydantic.Field(alias="enableIpSpoofing")
|
|
81
|
-
] = False
|
|
82
|
-
r"""Send NetFlow traffic using the original event's Source IP and port. To enable this, you must install the external `udp-sender` helper binary at `/usr/bin/udp-sender` on all Worker Nodes and grant it the `CAP_NET_RAW` capability."""
|
|
83
|
-
|
|
84
77
|
description: Optional[str] = None
|
|
@@ -174,6 +174,10 @@ class IndexerDiscoveryConfigsAuthTokenAuthenticationMethod(
|
|
|
174
174
|
class OutputSplunkLbAuthTokenTypedDict(TypedDict):
|
|
175
175
|
auth_type: NotRequired[IndexerDiscoveryConfigsAuthTokenAuthenticationMethod]
|
|
176
176
|
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
177
|
+
auth_token: NotRequired[str]
|
|
178
|
+
r"""Shared secret to be provided by any client (in authToken header field). If empty, unauthorized access is permitted."""
|
|
179
|
+
text_secret: NotRequired[str]
|
|
180
|
+
r"""Select or create a stored text secret"""
|
|
177
181
|
|
|
178
182
|
|
|
179
183
|
class OutputSplunkLbAuthToken(BaseModel):
|
|
@@ -186,6 +190,12 @@ class OutputSplunkLbAuthToken(BaseModel):
|
|
|
186
190
|
] = IndexerDiscoveryConfigsAuthTokenAuthenticationMethod.MANUAL
|
|
187
191
|
r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
|
|
188
192
|
|
|
193
|
+
auth_token: Annotated[Optional[str], pydantic.Field(alias="authToken")] = ""
|
|
194
|
+
r"""Shared secret to be provided by any client (in authToken header field). If empty, unauthorized access is permitted."""
|
|
195
|
+
|
|
196
|
+
text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
|
|
197
|
+
r"""Select or create a stored text secret"""
|
|
198
|
+
|
|
189
199
|
@field_serializer("auth_type")
|
|
190
200
|
def serialize_auth_type(self, value):
|
|
191
201
|
if isinstance(value, str):
|
|
@@ -66,13 +66,6 @@ class RunnableJobCollectionRunSettingsTypedDict(TypedDict):
|
|
|
66
66
|
|
|
67
67
|
|
|
68
68
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
69
|
if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
|
|
77
70
|
"""
|
|
78
71
|
max_task_size: NotRequired[str]
|
|
@@ -80,13 +73,6 @@ class RunnableJobCollectionRunSettingsTypedDict(TypedDict):
|
|
|
80
73
|
|
|
81
74
|
|
|
82
75
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
76
|
you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
|
|
91
77
|
"""
|
|
92
78
|
|
|
@@ -143,13 +129,6 @@ class RunnableJobCollectionRunSettings(BaseModel):
|
|
|
143
129
|
|
|
144
130
|
|
|
145
131
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
132
|
if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
|
|
154
133
|
"""
|
|
155
134
|
|
|
@@ -160,13 +139,6 @@ class RunnableJobCollectionRunSettings(BaseModel):
|
|
|
160
139
|
|
|
161
140
|
|
|
162
141
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
142
|
you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
|
|
171
143
|
"""
|
|
172
144
|
|
|
@@ -441,26 +413,12 @@ class RunnableJobCollectionRunTypedDict(TypedDict):
|
|
|
441
413
|
r"""Limits the bundle size for small tasks. For example,
|
|
442
414
|
|
|
443
415
|
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
416
|
if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
|
|
452
417
|
"""
|
|
453
418
|
max_task_size: NotRequired[str]
|
|
454
419
|
r"""Limits the bundle size for files above the lower task bundle size. For example, if your upper bundle size is 10MB,
|
|
455
420
|
|
|
456
421
|
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
422
|
you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
|
|
465
423
|
"""
|
|
466
424
|
discover_to_routes: NotRequired[bool]
|
|
@@ -523,13 +481,6 @@ class RunnableJobCollectionRun(BaseModel):
|
|
|
523
481
|
r"""Limits the bundle size for small tasks. For example,
|
|
524
482
|
|
|
525
483
|
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
484
|
if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
|
|
534
485
|
"""
|
|
535
486
|
|
|
@@ -539,13 +490,6 @@ class RunnableJobCollectionRun(BaseModel):
|
|
|
539
490
|
r"""Limits the bundle size for files above the lower task bundle size. For example, if your upper bundle size is 10MB,
|
|
540
491
|
|
|
541
492
|
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
493
|
you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
|
|
550
494
|
"""
|
|
551
495
|
|
|
@@ -66,13 +66,6 @@ class RunnableJobExecutorRunSettingsTypedDict(TypedDict):
|
|
|
66
66
|
|
|
67
67
|
|
|
68
68
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
69
|
if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
|
|
77
70
|
"""
|
|
78
71
|
max_task_size: NotRequired[str]
|
|
@@ -80,13 +73,6 @@ class RunnableJobExecutorRunSettingsTypedDict(TypedDict):
|
|
|
80
73
|
|
|
81
74
|
|
|
82
75
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
76
|
you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
|
|
91
77
|
"""
|
|
92
78
|
|
|
@@ -141,13 +127,6 @@ class RunnableJobExecutorRunSettings(BaseModel):
|
|
|
141
127
|
|
|
142
128
|
|
|
143
129
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
130
|
if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
|
|
152
131
|
"""
|
|
153
132
|
|
|
@@ -158,13 +137,6 @@ class RunnableJobExecutorRunSettings(BaseModel):
|
|
|
158
137
|
|
|
159
138
|
|
|
160
139
|
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
140
|
you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
|
|
169
141
|
"""
|
|
170
142
|
|
|
@@ -66,13 +66,6 @@ class RunnableJobScheduledSearchRunSettingsTypedDict(TypedDict):
|
|
|
66
66
|
|
|
67
67
|
|
|
68
68
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
69
|
if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
|
|
77
70
|
"""
|
|
78
71
|
max_task_size: NotRequired[str]
|
|
@@ -80,13 +73,6 @@ class RunnableJobScheduledSearchRunSettingsTypedDict(TypedDict):
|
|
|
80
73
|
|
|
81
74
|
|
|
82
75
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
76
|
you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
|
|
91
77
|
"""
|
|
92
78
|
|
|
@@ -142,13 +128,6 @@ class RunnableJobScheduledSearchRunSettings(BaseModel):
|
|
|
142
128
|
|
|
143
129
|
|
|
144
130
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
131
|
if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
|
|
153
132
|
"""
|
|
154
133
|
|
|
@@ -159,13 +138,6 @@ class RunnableJobScheduledSearchRunSettings(BaseModel):
|
|
|
159
138
|
|
|
160
139
|
|
|
161
140
|
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
141
|
you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
|
|
170
142
|
"""
|
|
171
143
|
|
|
@@ -14,8 +14,7 @@ from cribl_control_plane.utils import (
|
|
|
14
14
|
import pydantic
|
|
15
15
|
from pydantic import field_serializer
|
|
16
16
|
from pydantic.functional_validators import PlainValidator
|
|
17
|
-
from
|
|
18
|
-
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
17
|
+
from typing_extensions import Annotated, TypedDict
|
|
19
18
|
|
|
20
19
|
|
|
21
20
|
class UpdateConfigGroupByProductAndIDRequestTypedDict(TypedDict):
|
|
@@ -55,20 +54,3 @@ class UpdateConfigGroupByProductAndIDRequest(BaseModel):
|
|
|
55
54
|
except ValueError:
|
|
56
55
|
return value
|
|
57
56
|
return value
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
class UpdateConfigGroupByProductAndIDResponseTypedDict(TypedDict):
|
|
61
|
-
r"""a list of ConfigGroup objects"""
|
|
62
|
-
|
|
63
|
-
count: NotRequired[int]
|
|
64
|
-
r"""number of items present in the items array"""
|
|
65
|
-
items: NotRequired[List[ConfigGroupTypedDict]]
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
class UpdateConfigGroupByProductAndIDResponse(BaseModel):
|
|
69
|
-
r"""a list of ConfigGroup objects"""
|
|
70
|
-
|
|
71
|
-
count: Optional[int] = None
|
|
72
|
-
r"""number of items present in the items array"""
|
|
73
|
-
|
|
74
|
-
items: Optional[List[ConfigGroup]] = None
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from .configgroup import ConfigGroup, ConfigGroupTypedDict
|
|
5
4
|
from .deployrequest import DeployRequest, DeployRequestTypedDict
|
|
6
5
|
from .productscore import ProductsCore
|
|
7
6
|
from cribl_control_plane import models
|
|
@@ -14,8 +13,7 @@ from cribl_control_plane.utils import (
|
|
|
14
13
|
)
|
|
15
14
|
from pydantic import field_serializer
|
|
16
15
|
from pydantic.functional_validators import PlainValidator
|
|
17
|
-
from
|
|
18
|
-
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
16
|
+
from typing_extensions import Annotated, TypedDict
|
|
19
17
|
|
|
20
18
|
|
|
21
19
|
class UpdateConfigGroupDeployByProductAndIDRequestTypedDict(TypedDict):
|
|
@@ -53,20 +51,3 @@ class UpdateConfigGroupDeployByProductAndIDRequest(BaseModel):
|
|
|
53
51
|
except ValueError:
|
|
54
52
|
return value
|
|
55
53
|
return value
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
class UpdateConfigGroupDeployByProductAndIDResponseTypedDict(TypedDict):
|
|
59
|
-
r"""a list of ConfigGroup objects"""
|
|
60
|
-
|
|
61
|
-
count: NotRequired[int]
|
|
62
|
-
r"""number of items present in the items array"""
|
|
63
|
-
items: NotRequired[List[ConfigGroupTypedDict]]
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
class UpdateConfigGroupDeployByProductAndIDResponse(BaseModel):
|
|
67
|
-
r"""a list of ConfigGroup objects"""
|
|
68
|
-
|
|
69
|
-
count: Optional[int] = None
|
|
70
|
-
r"""number of items present in the items array"""
|
|
71
|
-
|
|
72
|
-
items: Optional[List[ConfigGroup]] = None
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from .cribllakedataset import CriblLakeDataset, CriblLakeDatasetTypedDict
|
|
5
4
|
from .cribllakedatasetupdate import (
|
|
6
5
|
CriblLakeDatasetUpdate,
|
|
7
6
|
CriblLakeDatasetUpdateTypedDict,
|
|
@@ -9,8 +8,7 @@ from .cribllakedatasetupdate import (
|
|
|
9
8
|
from cribl_control_plane.types import BaseModel
|
|
10
9
|
from cribl_control_plane.utils import FieldMetadata, PathParamMetadata, RequestMetadata
|
|
11
10
|
import pydantic
|
|
12
|
-
from
|
|
13
|
-
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
11
|
+
from typing_extensions import Annotated, TypedDict
|
|
14
12
|
|
|
15
13
|
|
|
16
14
|
class UpdateCriblLakeDatasetByLakeIDAndIDRequestTypedDict(TypedDict):
|
|
@@ -42,20 +40,3 @@ class UpdateCriblLakeDatasetByLakeIDAndIDRequest(BaseModel):
|
|
|
42
40
|
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
43
41
|
]
|
|
44
42
|
r"""CriblLakeDatasetUpdate object"""
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
class UpdateCriblLakeDatasetByLakeIDAndIDResponseTypedDict(TypedDict):
|
|
48
|
-
r"""a list of CriblLakeDataset objects"""
|
|
49
|
-
|
|
50
|
-
count: NotRequired[int]
|
|
51
|
-
r"""number of items present in the items array"""
|
|
52
|
-
items: NotRequired[List[CriblLakeDatasetTypedDict]]
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
class UpdateCriblLakeDatasetByLakeIDAndIDResponse(BaseModel):
|
|
56
|
-
r"""a list of CriblLakeDataset objects"""
|
|
57
|
-
|
|
58
|
-
count: Optional[int] = None
|
|
59
|
-
r"""number of items present in the items array"""
|
|
60
|
-
|
|
61
|
-
items: Optional[List[CriblLakeDataset]] = None
|