cribl-control-plane 0.2.1rc11__py3-none-any.whl → 0.4.0a6__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 +4 -4
- cribl_control_plane/branches.py +4 -4
- cribl_control_plane/commits.py +28 -28
- cribl_control_plane/commits_files.py +8 -8
- cribl_control_plane/configs_versions.py +8 -4
- cribl_control_plane/destinations.py +20 -20
- cribl_control_plane/destinations_pq.py +8 -8
- cribl_control_plane/groups_sdk.py +48 -24
- cribl_control_plane/hectokens.py +16 -8
- cribl_control_plane/lakedatasets.py +40 -20
- cribl_control_plane/models/__init__.py +568 -214
- cribl_control_plane/models/createconfiggroupbyproductop.py +20 -1
- cribl_control_plane/models/createcribllakedatasetbylakeidop.py +19 -1
- cribl_control_plane/models/createinputhectokenbyidop.py +20 -1
- cribl_control_plane/models/{countedlistgitdiffresult.py → createinputop.py} +9 -5
- cribl_control_plane/models/{countedlistgitshowresult.py → createoutputop.py} +9 -5
- cribl_control_plane/models/createoutputtestbyidop.py +20 -1
- cribl_control_plane/models/{countedlistpackinstallinfo.py → createpacksop.py} +6 -2
- cribl_control_plane/models/createpipelineop.py +24 -0
- cribl_control_plane/models/createroutesappendbyidop.py +20 -2
- cribl_control_plane/models/createversioncommitop.py +19 -1
- cribl_control_plane/models/{countedliststring.py → createversionpushop.py} +6 -2
- cribl_control_plane/models/createversionrevertop.py +19 -1
- cribl_control_plane/models/createversionundoop.py +18 -1
- cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +20 -1
- cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +20 -1
- cribl_control_plane/models/deleteinputbyidop.py +20 -1
- cribl_control_plane/models/deleteoutputbyidop.py +20 -1
- cribl_control_plane/models/deleteoutputpqbyidop.py +19 -1
- cribl_control_plane/models/deletepacksbyidop.py +20 -1
- cribl_control_plane/models/deletepipelinebyidop.py +20 -1
- cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +19 -1
- cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +19 -1
- cribl_control_plane/models/getconfiggroupbyproductandidop.py +19 -1
- cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +19 -1
- cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +20 -1
- cribl_control_plane/models/getcribllakedatasetbylakeidop.py +20 -1
- cribl_control_plane/models/getinputbyidop.py +20 -1
- cribl_control_plane/models/getmasterworkerentryop.py +18 -1
- cribl_control_plane/models/getoutputbyidop.py +20 -1
- cribl_control_plane/models/getoutputpqbyidop.py +20 -1
- cribl_control_plane/models/getoutputsamplesbyidop.py +20 -1
- cribl_control_plane/models/getpacksbyidop.py +20 -1
- cribl_control_plane/models/getpacksop.py +19 -1
- cribl_control_plane/models/getpipelinebyidop.py +20 -1
- cribl_control_plane/models/getroutesbyidop.py +20 -1
- cribl_control_plane/models/getsummaryop.py +19 -1
- cribl_control_plane/models/{countedlistbranchinfo.py → getversionbranchop.py} +6 -2
- cribl_control_plane/models/getversioncountop.py +19 -1
- cribl_control_plane/models/getversiondiffop.py +19 -1
- cribl_control_plane/models/getversionfilesop.py +19 -1
- cribl_control_plane/models/{countedlistgitinfo.py → getversioninfoop.py} +6 -2
- cribl_control_plane/models/getversionop.py +19 -1
- cribl_control_plane/models/getversionshowop.py +19 -1
- cribl_control_plane/models/getversionstatusop.py +19 -1
- cribl_control_plane/models/input.py +18 -15
- cribl_control_plane/models/inputcloudflarehec.py +513 -0
- cribl_control_plane/models/inputfile.py +7 -0
- cribl_control_plane/models/listconfiggroupbyproductop.py +19 -1
- cribl_control_plane/models/{countedlistinput.py → listinputop.py} +6 -2
- cribl_control_plane/models/listmasterworkerentryop.py +19 -1
- cribl_control_plane/models/{countedlistoutput.py → listoutputop.py} +6 -2
- cribl_control_plane/models/{countedlistpipeline.py → listpipelineop.py} +6 -2
- cribl_control_plane/models/{countedlistroutes.py → listroutesop.py} +6 -2
- cribl_control_plane/models/output.py +23 -17
- cribl_control_plane/models/outputazureblob.py +14 -0
- cribl_control_plane/models/outputazuredataexplorer.py +7 -0
- cribl_control_plane/models/outputchronicle.py +5 -0
- cribl_control_plane/models/outputcloudflarer2.py +632 -0
- cribl_control_plane/models/outputcribllake.py +14 -0
- cribl_control_plane/models/outputdatabricks.py +19 -0
- cribl_control_plane/models/outputdls3.py +14 -0
- cribl_control_plane/models/outputexabeam.py +7 -0
- cribl_control_plane/models/outputfilesystem.py +14 -0
- cribl_control_plane/models/outputgooglecloudstorage.py +14 -0
- cribl_control_plane/models/outputmicrosoftfabric.py +540 -0
- cribl_control_plane/models/outputminio.py +19 -4
- cribl_control_plane/models/outputs3.py +14 -0
- cribl_control_plane/models/outputsecuritylake.py +14 -0
- cribl_control_plane/models/outputsyslog.py +7 -0
- cribl_control_plane/models/runnablejobcollection.py +0 -8
- cribl_control_plane/models/runnablejobexecutor.py +0 -4
- cribl_control_plane/models/runnablejobscheduledsearch.py +0 -4
- cribl_control_plane/models/updateconfiggroupbyproductandidop.py +19 -1
- cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +20 -1
- cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +20 -1
- cribl_control_plane/models/updateinputbyidop.py +19 -1
- cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +20 -1
- cribl_control_plane/models/updateoutputbyidop.py +19 -1
- cribl_control_plane/models/updatepacksbyidop.py +20 -1
- cribl_control_plane/models/updatepipelinebyidop.py +19 -1
- cribl_control_plane/models/updateroutesbyidop.py +19 -1
- cribl_control_plane/nodes.py +12 -8
- cribl_control_plane/packs.py +20 -20
- cribl_control_plane/pipelines.py +20 -20
- cribl_control_plane/routes_sdk.py +20 -16
- cribl_control_plane/samples.py +8 -8
- cribl_control_plane/sources.py +20 -20
- cribl_control_plane/statuses.py +4 -4
- cribl_control_plane/summaries.py +4 -8
- cribl_control_plane/teams.py +4 -4
- cribl_control_plane/utils/retries.py +69 -5
- cribl_control_plane/utils/unmarshal_json_response.py +15 -1
- cribl_control_plane/versions_configs.py +4 -4
- {cribl_control_plane-0.2.1rc11.dist-info → cribl_control_plane-0.4.0a6.dist-info}/METADATA +6 -14
- {cribl_control_plane-0.2.1rc11.dist-info → cribl_control_plane-0.4.0a6.dist-info}/RECORD +109 -123
- cribl_control_plane-0.4.0a6.dist-info/licenses/LICENSE +201 -0
- cribl_control_plane/models/countedlistconfiggroup.py +0 -20
- cribl_control_plane/models/countedlistcribllakedataset.py +0 -20
- cribl_control_plane/models/countedlistdistributedsummary.py +0 -20
- cribl_control_plane/models/countedlistgitcommitsummary.py +0 -20
- cribl_control_plane/models/countedlistgitcountresult.py +0 -20
- cribl_control_plane/models/countedlistgitfilesresponse.py +0 -20
- cribl_control_plane/models/countedlistgitlogresult.py +0 -20
- cribl_control_plane/models/countedlistgitrevertresult.py +0 -20
- cribl_control_plane/models/countedlistgitstatusresult.py +0 -20
- cribl_control_plane/models/countedlistinputsplunkhec.py +0 -20
- cribl_control_plane/models/countedlistjobinfo.py +0 -20
- cribl_control_plane/models/countedlistmasterworkerentry.py +0 -20
- cribl_control_plane/models/countedlistnumber.py +0 -19
- cribl_control_plane/models/countedlistobject.py +0 -19
- cribl_control_plane/models/countedlistoutputsamplesresponse.py +0 -20
- cribl_control_plane/models/countedlistoutputtestresponse.py +0 -20
- cribl_control_plane/models/countedlistpackinfo.py +0 -20
- cribl_control_plane/models/countedlistteamaccesscontrollist.py +0 -20
- cribl_control_plane/models/countedlistuseraccesscontrollist.py +0 -20
- {cribl_control_plane-0.2.1rc11.dist-info → cribl_control_plane-0.4.0a6.dist-info}/WHEEL +0 -0
cribl_control_plane/sources.py
CHANGED
|
@@ -33,7 +33,7 @@ class Sources(BaseSDK):
|
|
|
33
33
|
server_url: Optional[str] = None,
|
|
34
34
|
timeout_ms: Optional[int] = None,
|
|
35
35
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
36
|
-
) -> models.
|
|
36
|
+
) -> models.ListInputResponse:
|
|
37
37
|
r"""List all Sources
|
|
38
38
|
|
|
39
39
|
Get a list of all Sources.
|
|
@@ -93,7 +93,7 @@ class Sources(BaseSDK):
|
|
|
93
93
|
|
|
94
94
|
response_data: Any = None
|
|
95
95
|
if utils.match_response(http_res, "200", "application/json"):
|
|
96
|
-
return unmarshal_json_response(models.
|
|
96
|
+
return unmarshal_json_response(models.ListInputResponse, http_res)
|
|
97
97
|
if utils.match_response(http_res, "500", "application/json"):
|
|
98
98
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
99
99
|
raise errors.Error(response_data, http_res)
|
|
@@ -113,7 +113,7 @@ class Sources(BaseSDK):
|
|
|
113
113
|
server_url: Optional[str] = None,
|
|
114
114
|
timeout_ms: Optional[int] = None,
|
|
115
115
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
116
|
-
) -> models.
|
|
116
|
+
) -> models.ListInputResponse:
|
|
117
117
|
r"""List all Sources
|
|
118
118
|
|
|
119
119
|
Get a list of all Sources.
|
|
@@ -173,7 +173,7 @@ class Sources(BaseSDK):
|
|
|
173
173
|
|
|
174
174
|
response_data: Any = None
|
|
175
175
|
if utils.match_response(http_res, "200", "application/json"):
|
|
176
|
-
return unmarshal_json_response(models.
|
|
176
|
+
return unmarshal_json_response(models.ListInputResponse, http_res)
|
|
177
177
|
if utils.match_response(http_res, "500", "application/json"):
|
|
178
178
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
179
179
|
raise errors.Error(response_data, http_res)
|
|
@@ -194,7 +194,7 @@ class Sources(BaseSDK):
|
|
|
194
194
|
server_url: Optional[str] = None,
|
|
195
195
|
timeout_ms: Optional[int] = None,
|
|
196
196
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
197
|
-
) -> models.
|
|
197
|
+
) -> models.CreateInputResponse:
|
|
198
198
|
r"""Create a Source
|
|
199
199
|
|
|
200
200
|
Create a new Source.
|
|
@@ -263,7 +263,7 @@ class Sources(BaseSDK):
|
|
|
263
263
|
|
|
264
264
|
response_data: Any = None
|
|
265
265
|
if utils.match_response(http_res, "200", "application/json"):
|
|
266
|
-
return unmarshal_json_response(models.
|
|
266
|
+
return unmarshal_json_response(models.CreateInputResponse, http_res)
|
|
267
267
|
if utils.match_response(http_res, "500", "application/json"):
|
|
268
268
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
269
269
|
raise errors.Error(response_data, http_res)
|
|
@@ -284,7 +284,7 @@ class Sources(BaseSDK):
|
|
|
284
284
|
server_url: Optional[str] = None,
|
|
285
285
|
timeout_ms: Optional[int] = None,
|
|
286
286
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
287
|
-
) -> models.
|
|
287
|
+
) -> models.CreateInputResponse:
|
|
288
288
|
r"""Create a Source
|
|
289
289
|
|
|
290
290
|
Create a new Source.
|
|
@@ -353,7 +353,7 @@ class Sources(BaseSDK):
|
|
|
353
353
|
|
|
354
354
|
response_data: Any = None
|
|
355
355
|
if utils.match_response(http_res, "200", "application/json"):
|
|
356
|
-
return unmarshal_json_response(models.
|
|
356
|
+
return unmarshal_json_response(models.CreateInputResponse, http_res)
|
|
357
357
|
if utils.match_response(http_res, "500", "application/json"):
|
|
358
358
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
359
359
|
raise errors.Error(response_data, http_res)
|
|
@@ -374,7 +374,7 @@ class Sources(BaseSDK):
|
|
|
374
374
|
server_url: Optional[str] = None,
|
|
375
375
|
timeout_ms: Optional[int] = None,
|
|
376
376
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
377
|
-
) -> models.
|
|
377
|
+
) -> models.GetInputByIDResponse:
|
|
378
378
|
r"""Get a Source
|
|
379
379
|
|
|
380
380
|
Get the specified Source.
|
|
@@ -440,7 +440,7 @@ class Sources(BaseSDK):
|
|
|
440
440
|
|
|
441
441
|
response_data: Any = None
|
|
442
442
|
if utils.match_response(http_res, "200", "application/json"):
|
|
443
|
-
return unmarshal_json_response(models.
|
|
443
|
+
return unmarshal_json_response(models.GetInputByIDResponse, http_res)
|
|
444
444
|
if utils.match_response(http_res, "500", "application/json"):
|
|
445
445
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
446
446
|
raise errors.Error(response_data, http_res)
|
|
@@ -461,7 +461,7 @@ class Sources(BaseSDK):
|
|
|
461
461
|
server_url: Optional[str] = None,
|
|
462
462
|
timeout_ms: Optional[int] = None,
|
|
463
463
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
464
|
-
) -> models.
|
|
464
|
+
) -> models.GetInputByIDResponse:
|
|
465
465
|
r"""Get a Source
|
|
466
466
|
|
|
467
467
|
Get the specified Source.
|
|
@@ -527,7 +527,7 @@ class Sources(BaseSDK):
|
|
|
527
527
|
|
|
528
528
|
response_data: Any = None
|
|
529
529
|
if utils.match_response(http_res, "200", "application/json"):
|
|
530
|
-
return unmarshal_json_response(models.
|
|
530
|
+
return unmarshal_json_response(models.GetInputByIDResponse, http_res)
|
|
531
531
|
if utils.match_response(http_res, "500", "application/json"):
|
|
532
532
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
533
533
|
raise errors.Error(response_data, http_res)
|
|
@@ -549,7 +549,7 @@ class Sources(BaseSDK):
|
|
|
549
549
|
server_url: Optional[str] = None,
|
|
550
550
|
timeout_ms: Optional[int] = None,
|
|
551
551
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
552
|
-
) -> models.
|
|
552
|
+
) -> models.UpdateInputByIDResponse:
|
|
553
553
|
r"""Update a Source
|
|
554
554
|
|
|
555
555
|
Update the specified Source.</br></br>Provide a complete representation of the Source that you want to update in the request body. This endpoint does not support partial updates. Cribl removes any omitted fields when updating the Source.</br></br>Confirm that the configuration in your request body is correct before sending the request. If the configuration is incorrect, the updated Source might not function as expected.
|
|
@@ -620,7 +620,7 @@ class Sources(BaseSDK):
|
|
|
620
620
|
|
|
621
621
|
response_data: Any = None
|
|
622
622
|
if utils.match_response(http_res, "200", "application/json"):
|
|
623
|
-
return unmarshal_json_response(models.
|
|
623
|
+
return unmarshal_json_response(models.UpdateInputByIDResponse, http_res)
|
|
624
624
|
if utils.match_response(http_res, "500", "application/json"):
|
|
625
625
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
626
626
|
raise errors.Error(response_data, http_res)
|
|
@@ -642,7 +642,7 @@ class Sources(BaseSDK):
|
|
|
642
642
|
server_url: Optional[str] = None,
|
|
643
643
|
timeout_ms: Optional[int] = None,
|
|
644
644
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
645
|
-
) -> models.
|
|
645
|
+
) -> models.UpdateInputByIDResponse:
|
|
646
646
|
r"""Update a Source
|
|
647
647
|
|
|
648
648
|
Update the specified Source.</br></br>Provide a complete representation of the Source that you want to update in the request body. This endpoint does not support partial updates. Cribl removes any omitted fields when updating the Source.</br></br>Confirm that the configuration in your request body is correct before sending the request. If the configuration is incorrect, the updated Source might not function as expected.
|
|
@@ -713,7 +713,7 @@ class Sources(BaseSDK):
|
|
|
713
713
|
|
|
714
714
|
response_data: Any = None
|
|
715
715
|
if utils.match_response(http_res, "200", "application/json"):
|
|
716
|
-
return unmarshal_json_response(models.
|
|
716
|
+
return unmarshal_json_response(models.UpdateInputByIDResponse, http_res)
|
|
717
717
|
if utils.match_response(http_res, "500", "application/json"):
|
|
718
718
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
719
719
|
raise errors.Error(response_data, http_res)
|
|
@@ -734,7 +734,7 @@ class Sources(BaseSDK):
|
|
|
734
734
|
server_url: Optional[str] = None,
|
|
735
735
|
timeout_ms: Optional[int] = None,
|
|
736
736
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
737
|
-
) -> models.
|
|
737
|
+
) -> models.DeleteInputByIDResponse:
|
|
738
738
|
r"""Delete a Source
|
|
739
739
|
|
|
740
740
|
Delete the specified Source.
|
|
@@ -800,7 +800,7 @@ class Sources(BaseSDK):
|
|
|
800
800
|
|
|
801
801
|
response_data: Any = None
|
|
802
802
|
if utils.match_response(http_res, "200", "application/json"):
|
|
803
|
-
return unmarshal_json_response(models.
|
|
803
|
+
return unmarshal_json_response(models.DeleteInputByIDResponse, http_res)
|
|
804
804
|
if utils.match_response(http_res, "500", "application/json"):
|
|
805
805
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
806
806
|
raise errors.Error(response_data, http_res)
|
|
@@ -821,7 +821,7 @@ class Sources(BaseSDK):
|
|
|
821
821
|
server_url: Optional[str] = None,
|
|
822
822
|
timeout_ms: Optional[int] = None,
|
|
823
823
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
824
|
-
) -> models.
|
|
824
|
+
) -> models.DeleteInputByIDResponse:
|
|
825
825
|
r"""Delete a Source
|
|
826
826
|
|
|
827
827
|
Delete the specified Source.
|
|
@@ -887,7 +887,7 @@ class Sources(BaseSDK):
|
|
|
887
887
|
|
|
888
888
|
response_data: Any = None
|
|
889
889
|
if utils.match_response(http_res, "200", "application/json"):
|
|
890
|
-
return unmarshal_json_response(models.
|
|
890
|
+
return unmarshal_json_response(models.DeleteInputByIDResponse, http_res)
|
|
891
891
|
if utils.match_response(http_res, "500", "application/json"):
|
|
892
892
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
893
893
|
raise errors.Error(response_data, http_res)
|
cribl_control_plane/statuses.py
CHANGED
|
@@ -18,7 +18,7 @@ class Statuses(BaseSDK):
|
|
|
18
18
|
server_url: Optional[str] = None,
|
|
19
19
|
timeout_ms: Optional[int] = None,
|
|
20
20
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
21
|
-
) -> models.
|
|
21
|
+
) -> models.GetVersionStatusResponse:
|
|
22
22
|
r"""Get the status of the current working tree
|
|
23
23
|
|
|
24
24
|
Get the status of the current working tree of the Git repository used for Cribl configuration. The response includes details about modified, staged, untracked, and conflicted files, as well as branch and remote tracking information.
|
|
@@ -84,7 +84,7 @@ class Statuses(BaseSDK):
|
|
|
84
84
|
|
|
85
85
|
response_data: Any = None
|
|
86
86
|
if utils.match_response(http_res, "200", "application/json"):
|
|
87
|
-
return unmarshal_json_response(models.
|
|
87
|
+
return unmarshal_json_response(models.GetVersionStatusResponse, http_res)
|
|
88
88
|
if utils.match_response(http_res, "500", "application/json"):
|
|
89
89
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
90
90
|
raise errors.Error(response_data, http_res)
|
|
@@ -105,7 +105,7 @@ class Statuses(BaseSDK):
|
|
|
105
105
|
server_url: Optional[str] = None,
|
|
106
106
|
timeout_ms: Optional[int] = None,
|
|
107
107
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
108
|
-
) -> models.
|
|
108
|
+
) -> models.GetVersionStatusResponse:
|
|
109
109
|
r"""Get the status of the current working tree
|
|
110
110
|
|
|
111
111
|
Get the status of the current working tree of the Git repository used for Cribl configuration. The response includes details about modified, staged, untracked, and conflicted files, as well as branch and remote tracking information.
|
|
@@ -171,7 +171,7 @@ class Statuses(BaseSDK):
|
|
|
171
171
|
|
|
172
172
|
response_data: Any = None
|
|
173
173
|
if utils.match_response(http_res, "200", "application/json"):
|
|
174
|
-
return unmarshal_json_response(models.
|
|
174
|
+
return unmarshal_json_response(models.GetVersionStatusResponse, http_res)
|
|
175
175
|
if utils.match_response(http_res, "500", "application/json"):
|
|
176
176
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
177
177
|
raise errors.Error(response_data, http_res)
|
cribl_control_plane/summaries.py
CHANGED
|
@@ -18,7 +18,7 @@ class Summaries(BaseSDK):
|
|
|
18
18
|
server_url: Optional[str] = None,
|
|
19
19
|
timeout_ms: Optional[int] = None,
|
|
20
20
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
21
|
-
) -> models.
|
|
21
|
+
) -> models.GetSummaryResponse:
|
|
22
22
|
r"""Get a summary of the Distributed deployment
|
|
23
23
|
|
|
24
24
|
Get a summary of the Distributed deployment. The response includes counts of Worker Groups, Edge Fleets, Pipelines, Routes, Sources, Destinations, and Worker and Edge Nodes, as well as statistics for the Worker and Edge Nodes.
|
|
@@ -84,9 +84,7 @@ class Summaries(BaseSDK):
|
|
|
84
84
|
|
|
85
85
|
response_data: Any = None
|
|
86
86
|
if utils.match_response(http_res, "200", "application/json"):
|
|
87
|
-
return unmarshal_json_response(
|
|
88
|
-
models.CountedListDistributedSummary, http_res
|
|
89
|
-
)
|
|
87
|
+
return unmarshal_json_response(models.GetSummaryResponse, http_res)
|
|
90
88
|
if utils.match_response(http_res, "500", "application/json"):
|
|
91
89
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
92
90
|
raise errors.Error(response_data, http_res)
|
|
@@ -107,7 +105,7 @@ class Summaries(BaseSDK):
|
|
|
107
105
|
server_url: Optional[str] = None,
|
|
108
106
|
timeout_ms: Optional[int] = None,
|
|
109
107
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
110
|
-
) -> models.
|
|
108
|
+
) -> models.GetSummaryResponse:
|
|
111
109
|
r"""Get a summary of the Distributed deployment
|
|
112
110
|
|
|
113
111
|
Get a summary of the Distributed deployment. The response includes counts of Worker Groups, Edge Fleets, Pipelines, Routes, Sources, Destinations, and Worker and Edge Nodes, as well as statistics for the Worker and Edge Nodes.
|
|
@@ -173,9 +171,7 @@ class Summaries(BaseSDK):
|
|
|
173
171
|
|
|
174
172
|
response_data: Any = None
|
|
175
173
|
if utils.match_response(http_res, "200", "application/json"):
|
|
176
|
-
return unmarshal_json_response(
|
|
177
|
-
models.CountedListDistributedSummary, http_res
|
|
178
|
-
)
|
|
174
|
+
return unmarshal_json_response(models.GetSummaryResponse, http_res)
|
|
179
175
|
if utils.match_response(http_res, "500", "application/json"):
|
|
180
176
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
181
177
|
raise errors.Error(response_data, http_res)
|
cribl_control_plane/teams.py
CHANGED
|
@@ -20,7 +20,7 @@ class Teams(BaseSDK):
|
|
|
20
20
|
server_url: Optional[str] = None,
|
|
21
21
|
timeout_ms: Optional[int] = None,
|
|
22
22
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
23
|
-
) -> models.
|
|
23
|
+
) -> models.GetConfigGroupACLTeamsByProductAndIDResponse:
|
|
24
24
|
r"""Get the Access Control List for teams with permissions on a Worker Group or Edge Fleet for the specified Cribl product
|
|
25
25
|
|
|
26
26
|
Get the Access Control List (ACL) for teams that have permissions on a Worker Group or Edge Fleet for the specified Cribl product.
|
|
@@ -91,7 +91,7 @@ class Teams(BaseSDK):
|
|
|
91
91
|
response_data: Any = None
|
|
92
92
|
if utils.match_response(http_res, "200", "application/json"):
|
|
93
93
|
return unmarshal_json_response(
|
|
94
|
-
models.
|
|
94
|
+
models.GetConfigGroupACLTeamsByProductAndIDResponse, http_res
|
|
95
95
|
)
|
|
96
96
|
if utils.match_response(http_res, "500", "application/json"):
|
|
97
97
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
@@ -115,7 +115,7 @@ class Teams(BaseSDK):
|
|
|
115
115
|
server_url: Optional[str] = None,
|
|
116
116
|
timeout_ms: Optional[int] = None,
|
|
117
117
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
118
|
-
) -> models.
|
|
118
|
+
) -> models.GetConfigGroupACLTeamsByProductAndIDResponse:
|
|
119
119
|
r"""Get the Access Control List for teams with permissions on a Worker Group or Edge Fleet for the specified Cribl product
|
|
120
120
|
|
|
121
121
|
Get the Access Control List (ACL) for teams that have permissions on a Worker Group or Edge Fleet for the specified Cribl product.
|
|
@@ -186,7 +186,7 @@ class Teams(BaseSDK):
|
|
|
186
186
|
response_data: Any = None
|
|
187
187
|
if utils.match_response(http_res, "200", "application/json"):
|
|
188
188
|
return unmarshal_json_response(
|
|
189
|
-
models.
|
|
189
|
+
models.GetConfigGroupACLTeamsByProductAndIDResponse, http_res
|
|
190
190
|
)
|
|
191
191
|
if utils.match_response(http_res, "500", "application/json"):
|
|
192
192
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
import asyncio
|
|
4
4
|
import random
|
|
5
5
|
import time
|
|
6
|
-
from
|
|
6
|
+
from datetime import datetime
|
|
7
|
+
from email.utils import parsedate_to_datetime
|
|
8
|
+
from typing import List, Optional
|
|
7
9
|
|
|
8
10
|
import httpx
|
|
9
11
|
|
|
@@ -51,9 +53,11 @@ class Retries:
|
|
|
51
53
|
|
|
52
54
|
class TemporaryError(Exception):
|
|
53
55
|
response: httpx.Response
|
|
56
|
+
retry_after: Optional[int]
|
|
54
57
|
|
|
55
58
|
def __init__(self, response: httpx.Response):
|
|
56
59
|
self.response = response
|
|
60
|
+
self.retry_after = _parse_retry_after_header(response)
|
|
57
61
|
|
|
58
62
|
|
|
59
63
|
class PermanentError(Exception):
|
|
@@ -63,6 +67,62 @@ class PermanentError(Exception):
|
|
|
63
67
|
self.inner = inner
|
|
64
68
|
|
|
65
69
|
|
|
70
|
+
def _parse_retry_after_header(response: httpx.Response) -> Optional[int]:
|
|
71
|
+
"""Parse Retry-After header from response.
|
|
72
|
+
|
|
73
|
+
Returns:
|
|
74
|
+
Retry interval in milliseconds, or None if header is missing or invalid.
|
|
75
|
+
"""
|
|
76
|
+
retry_after_header = response.headers.get("retry-after")
|
|
77
|
+
if not retry_after_header:
|
|
78
|
+
return None
|
|
79
|
+
|
|
80
|
+
try:
|
|
81
|
+
seconds = float(retry_after_header)
|
|
82
|
+
return round(seconds * 1000)
|
|
83
|
+
except ValueError:
|
|
84
|
+
pass
|
|
85
|
+
|
|
86
|
+
try:
|
|
87
|
+
retry_date = parsedate_to_datetime(retry_after_header)
|
|
88
|
+
delta = (retry_date - datetime.now(retry_date.tzinfo)).total_seconds()
|
|
89
|
+
return round(max(0, delta) * 1000)
|
|
90
|
+
except (ValueError, TypeError):
|
|
91
|
+
pass
|
|
92
|
+
|
|
93
|
+
return None
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
def _get_sleep_interval(
|
|
97
|
+
exception: Exception,
|
|
98
|
+
initial_interval: int,
|
|
99
|
+
max_interval: int,
|
|
100
|
+
exponent: float,
|
|
101
|
+
retries: int,
|
|
102
|
+
) -> float:
|
|
103
|
+
"""Get sleep interval for retry with exponential backoff.
|
|
104
|
+
|
|
105
|
+
Args:
|
|
106
|
+
exception: The exception that triggered the retry.
|
|
107
|
+
initial_interval: Initial retry interval in milliseconds.
|
|
108
|
+
max_interval: Maximum retry interval in milliseconds.
|
|
109
|
+
exponent: Base for exponential backoff calculation.
|
|
110
|
+
retries: Current retry attempt count.
|
|
111
|
+
|
|
112
|
+
Returns:
|
|
113
|
+
Sleep interval in seconds.
|
|
114
|
+
"""
|
|
115
|
+
if (
|
|
116
|
+
isinstance(exception, TemporaryError)
|
|
117
|
+
and exception.retry_after is not None
|
|
118
|
+
and exception.retry_after > 0
|
|
119
|
+
):
|
|
120
|
+
return exception.retry_after / 1000
|
|
121
|
+
|
|
122
|
+
sleep = (initial_interval / 1000) * exponent**retries + random.uniform(0, 1)
|
|
123
|
+
return min(sleep, max_interval / 1000)
|
|
124
|
+
|
|
125
|
+
|
|
66
126
|
def retry(func, retries: Retries):
|
|
67
127
|
if retries.config.strategy == "backoff":
|
|
68
128
|
|
|
@@ -183,8 +243,10 @@ def retry_with_backoff(
|
|
|
183
243
|
return exception.response
|
|
184
244
|
|
|
185
245
|
raise
|
|
186
|
-
|
|
187
|
-
sleep =
|
|
246
|
+
|
|
247
|
+
sleep = _get_sleep_interval(
|
|
248
|
+
exception, initial_interval, max_interval, exponent, retries
|
|
249
|
+
)
|
|
188
250
|
time.sleep(sleep)
|
|
189
251
|
retries += 1
|
|
190
252
|
|
|
@@ -211,7 +273,9 @@ async def retry_with_backoff_async(
|
|
|
211
273
|
return exception.response
|
|
212
274
|
|
|
213
275
|
raise
|
|
214
|
-
|
|
215
|
-
sleep =
|
|
276
|
+
|
|
277
|
+
sleep = _get_sleep_interval(
|
|
278
|
+
exception, initial_interval, max_interval, exponent, retries
|
|
279
|
+
)
|
|
216
280
|
await asyncio.sleep(sleep)
|
|
217
281
|
retries += 1
|
|
@@ -1,12 +1,26 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
|
-
from typing import Any, Optional
|
|
3
|
+
from typing import Any, Optional, Type, TypeVar, overload
|
|
4
4
|
|
|
5
5
|
import httpx
|
|
6
6
|
|
|
7
7
|
from .serializers import unmarshal_json
|
|
8
8
|
from cribl_control_plane import errors
|
|
9
9
|
|
|
10
|
+
T = TypeVar("T")
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
@overload
|
|
14
|
+
def unmarshal_json_response(
|
|
15
|
+
typ: Type[T], http_res: httpx.Response, body: Optional[str] = None
|
|
16
|
+
) -> T: ...
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
@overload
|
|
20
|
+
def unmarshal_json_response(
|
|
21
|
+
typ: Any, http_res: httpx.Response, body: Optional[str] = None
|
|
22
|
+
) -> Any: ...
|
|
23
|
+
|
|
10
24
|
|
|
11
25
|
def unmarshal_json_response(
|
|
12
26
|
typ: Any, http_res: httpx.Response, body: Optional[str] = None
|
|
@@ -17,7 +17,7 @@ class VersionsConfigs(BaseSDK):
|
|
|
17
17
|
server_url: Optional[str] = None,
|
|
18
18
|
timeout_ms: Optional[int] = None,
|
|
19
19
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
20
|
-
) -> models.
|
|
20
|
+
) -> models.GetVersionInfoResponse:
|
|
21
21
|
r"""Get the configuration and status for the Git integration
|
|
22
22
|
|
|
23
23
|
Get the configuration and versioning status for the Git integration for the Cribl configuration.
|
|
@@ -77,7 +77,7 @@ class VersionsConfigs(BaseSDK):
|
|
|
77
77
|
|
|
78
78
|
response_data: Any = None
|
|
79
79
|
if utils.match_response(http_res, "200", "application/json"):
|
|
80
|
-
return unmarshal_json_response(models.
|
|
80
|
+
return unmarshal_json_response(models.GetVersionInfoResponse, http_res)
|
|
81
81
|
if utils.match_response(http_res, "500", "application/json"):
|
|
82
82
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
83
83
|
raise errors.Error(response_data, http_res)
|
|
@@ -97,7 +97,7 @@ class VersionsConfigs(BaseSDK):
|
|
|
97
97
|
server_url: Optional[str] = None,
|
|
98
98
|
timeout_ms: Optional[int] = None,
|
|
99
99
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
100
|
-
) -> models.
|
|
100
|
+
) -> models.GetVersionInfoResponse:
|
|
101
101
|
r"""Get the configuration and status for the Git integration
|
|
102
102
|
|
|
103
103
|
Get the configuration and versioning status for the Git integration for the Cribl configuration.
|
|
@@ -157,7 +157,7 @@ class VersionsConfigs(BaseSDK):
|
|
|
157
157
|
|
|
158
158
|
response_data: Any = None
|
|
159
159
|
if utils.match_response(http_res, "200", "application/json"):
|
|
160
|
-
return unmarshal_json_response(models.
|
|
160
|
+
return unmarshal_json_response(models.GetVersionInfoResponse, http_res)
|
|
161
161
|
if utils.match_response(http_res, "500", "application/json"):
|
|
162
162
|
response_data = unmarshal_json_response(errors.ErrorData, http_res)
|
|
163
163
|
raise errors.Error(response_data, http_res)
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cribl-control-plane
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.4.0a6
|
|
4
4
|
Summary: Python Client SDK Generated by Speakeasy.
|
|
5
|
+
License-File: LICENSE
|
|
5
6
|
Author: Speakeasy
|
|
6
7
|
Requires-Python: >=3.9.2
|
|
7
8
|
Classifier: Programming Language :: Python :: 3
|
|
@@ -17,20 +18,11 @@ Project-URL: Repository, https://github.com/criblio/cribl_control_plane_sdk_pyth
|
|
|
17
18
|
Description-Content-Type: text/markdown
|
|
18
19
|
|
|
19
20
|
# cribl_control_plane_sdk_python
|
|
21
|
+
<!-- Start Summary [summary] -->
|
|
22
|
+
## Summary
|
|
20
23
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
In addition to the usage examples in this repository, the Cribl documentation includes [code examples for common use cases](https://docs.cribl.io/cribl-as-code/code-examples).
|
|
24
|
-
|
|
25
|
-
Complementary API reference documentation is available at https://docs.cribl.io/cribl-as-code/api-reference. Product documentation is available at https://docs.cribl.io.
|
|
26
|
-
|
|
27
|
-
> [!IMPORTANT]
|
|
28
|
-
> **Preview Feature**
|
|
29
|
-
> The Cribl SDKs are Preview features that are still being developed. We do not recommend using them in a production environment, because the features might not be fully tested or optimized for performance, and related documentation could be incomplete.
|
|
30
|
-
>
|
|
31
|
-
> Please continue to submit feedback through normal Cribl support channels, but assistance might be limited while the features remain in Preview.
|
|
32
|
-
|
|
33
|
-
<!-- No Summary [summary] -->
|
|
24
|
+
Cribl API Reference: This API Reference lists available REST endpoints, along with their supported operations for accessing, creating, updating, or deleting resources. See our complementary product documentation at [docs.cribl.io](http://docs.cribl.io).
|
|
25
|
+
<!-- End Summary [summary] -->
|
|
34
26
|
|
|
35
27
|
<!-- Start Table of Contents [toc] -->
|
|
36
28
|
## Table of Contents
|