cribl-control-plane 0.4.0a6__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.

Files changed (137) hide show
  1. cribl_control_plane/_version.py +4 -4
  2. cribl_control_plane/acl.py +16 -6
  3. cribl_control_plane/basesdk.py +6 -0
  4. cribl_control_plane/branches.py +28 -8
  5. cribl_control_plane/commits.py +112 -42
  6. cribl_control_plane/commits_files.py +32 -12
  7. cribl_control_plane/configs_versions.py +16 -10
  8. cribl_control_plane/destinations.py +80 -30
  9. cribl_control_plane/destinations_pq.py +32 -12
  10. cribl_control_plane/groups_sdk.py +96 -60
  11. cribl_control_plane/health.py +12 -2
  12. cribl_control_plane/hectokens.py +32 -20
  13. cribl_control_plane/lakedatasets.py +80 -50
  14. cribl_control_plane/models/__init__.py +266 -438
  15. cribl_control_plane/models/configgroup.py +1 -0
  16. cribl_control_plane/models/{getversionbranchop.py → countedbranchinfo.py} +2 -6
  17. cribl_control_plane/models/countedconfiggroup.py +20 -0
  18. cribl_control_plane/models/countedcribllakedataset.py +20 -0
  19. cribl_control_plane/models/counteddistributedsummary.py +20 -0
  20. cribl_control_plane/models/countedgitcommitsummary.py +20 -0
  21. cribl_control_plane/models/countedgitcountresult.py +20 -0
  22. cribl_control_plane/models/{createinputop.py → countedgitdiffresult.py} +5 -9
  23. cribl_control_plane/models/countedgitfilesresponse.py +20 -0
  24. cribl_control_plane/models/{getversioninfoop.py → countedgitinfo.py} +2 -6
  25. cribl_control_plane/models/countedgitlogresult.py +20 -0
  26. cribl_control_plane/models/countedgitrevertresult.py +20 -0
  27. cribl_control_plane/models/countedgitshowresult.py +20 -0
  28. cribl_control_plane/models/countedgitstatusresult.py +20 -0
  29. cribl_control_plane/models/{listinputop.py → countedinput.py} +2 -6
  30. cribl_control_plane/models/countedinputsplunkhec.py +20 -0
  31. cribl_control_plane/models/countedjobinfo.py +20 -0
  32. cribl_control_plane/models/countedmasterworkerentry.py +20 -0
  33. cribl_control_plane/models/countednumber.py +19 -0
  34. cribl_control_plane/models/countedobject.py +19 -0
  35. cribl_control_plane/models/{listoutputop.py → countedoutput.py} +2 -6
  36. cribl_control_plane/models/{createoutputop.py → countedoutputsamplesresponse.py} +5 -9
  37. cribl_control_plane/models/countedoutputtestresponse.py +20 -0
  38. cribl_control_plane/models/countedpackinfo.py +20 -0
  39. cribl_control_plane/models/{createpacksop.py → countedpackinstallinfo.py} +2 -6
  40. cribl_control_plane/models/{listpipelineop.py → countedpipeline.py} +2 -6
  41. cribl_control_plane/models/{listroutesop.py → countedroutes.py} +2 -6
  42. cribl_control_plane/models/{createversionpushop.py → countedstring.py} +2 -6
  43. cribl_control_plane/models/countedteamaccesscontrollist.py +20 -0
  44. cribl_control_plane/models/counteduseraccesscontrollist.py +20 -0
  45. cribl_control_plane/models/createauthloginop.py +18 -0
  46. cribl_control_plane/models/createconfiggroupbyproductop.py +1 -20
  47. cribl_control_plane/models/createcribllakedatasetbylakeidop.py +1 -19
  48. cribl_control_plane/models/createinputhectokenbyidop.py +1 -20
  49. cribl_control_plane/models/createoutputtestbyidop.py +1 -20
  50. cribl_control_plane/models/createroutesappendbyidop.py +2 -20
  51. cribl_control_plane/models/createversioncommitop.py +1 -19
  52. cribl_control_plane/models/createversionrevertop.py +1 -19
  53. cribl_control_plane/models/createversionundoop.py +1 -18
  54. cribl_control_plane/models/criblevent.py +15 -0
  55. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +1 -20
  56. cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +1 -20
  57. cribl_control_plane/models/deleteinputbyidop.py +1 -20
  58. cribl_control_plane/models/deleteoutputbyidop.py +1 -20
  59. cribl_control_plane/models/deleteoutputpqbyidop.py +1 -19
  60. cribl_control_plane/models/deletepacksbyidop.py +1 -20
  61. cribl_control_plane/models/deletepipelinebyidop.py +1 -20
  62. cribl_control_plane/models/difffiles.py +5 -46
  63. cribl_control_plane/models/diffline.py +26 -0
  64. cribl_control_plane/models/difflinecontext.py +28 -0
  65. cribl_control_plane/models/difflinedelete.py +25 -0
  66. cribl_control_plane/models/difflineinsert.py +25 -0
  67. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +1 -19
  68. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +1 -19
  69. cribl_control_plane/models/getconfiggroupbyproductandidop.py +1 -19
  70. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +1 -19
  71. cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +1 -20
  72. cribl_control_plane/models/getcribllakedatasetbylakeidop.py +1 -20
  73. cribl_control_plane/models/getinputbyidop.py +1 -20
  74. cribl_control_plane/models/getmasterworkerentryop.py +1 -18
  75. cribl_control_plane/models/getoutputbyidop.py +1 -20
  76. cribl_control_plane/models/getoutputpqbyidop.py +1 -20
  77. cribl_control_plane/models/getoutputsamplesbyidop.py +1 -20
  78. cribl_control_plane/models/getpacksbyidop.py +1 -20
  79. cribl_control_plane/models/getpacksop.py +1 -19
  80. cribl_control_plane/models/getpipelinebyidop.py +1 -20
  81. cribl_control_plane/models/getroutesbyidop.py +1 -20
  82. cribl_control_plane/models/getsummaryop.py +1 -19
  83. cribl_control_plane/models/getversioncountop.py +1 -19
  84. cribl_control_plane/models/getversiondiffop.py +1 -19
  85. cribl_control_plane/models/getversionfilesop.py +1 -19
  86. cribl_control_plane/models/getversionop.py +1 -19
  87. cribl_control_plane/models/getversionshowop.py +1 -19
  88. cribl_control_plane/models/getversionstatusop.py +1 -19
  89. cribl_control_plane/models/groupcreaterequest.py +1 -0
  90. cribl_control_plane/models/hbcriblinfo.py +3 -4
  91. cribl_control_plane/models/heartbeatmetadata.py +3 -11
  92. cribl_control_plane/models/inputcloudflarehec.py +9 -4
  93. cribl_control_plane/models/inputconfluentcloud.py +4 -2
  94. cribl_control_plane/models/inputcribllakehttp.py +15 -0
  95. cribl_control_plane/models/inputkafka.py +4 -2
  96. cribl_control_plane/models/inputmsk.py +4 -2
  97. cribl_control_plane/models/inputsnmp.py +33 -7
  98. cribl_control_plane/models/inputsplunkhec.py +8 -4
  99. cribl_control_plane/models/inputwef.py +23 -0
  100. cribl_control_plane/models/inputwiz.py +95 -0
  101. cribl_control_plane/models/inputzscalerhec.py +8 -4
  102. cribl_control_plane/models/listconfiggroupbyproductop.py +1 -19
  103. cribl_control_plane/models/listmasterworkerentryop.py +1 -19
  104. cribl_control_plane/models/masterworkerentry.py +3 -11
  105. cribl_control_plane/models/nodeprovidedinfo.py +2 -10
  106. cribl_control_plane/models/outputsplunklb.py +10 -0
  107. cribl_control_plane/models/runnablejobcollection.py +0 -56
  108. cribl_control_plane/models/runnablejobexecutor.py +0 -28
  109. cribl_control_plane/models/runnablejobscheduledsearch.py +0 -28
  110. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +1 -19
  111. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +1 -20
  112. cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +1 -20
  113. cribl_control_plane/models/updateinputbyidop.py +1 -19
  114. cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +1 -20
  115. cribl_control_plane/models/updateoutputbyidop.py +1 -19
  116. cribl_control_plane/models/updatepacksbyidop.py +1 -20
  117. cribl_control_plane/models/updatepipelinebyidop.py +1 -19
  118. cribl_control_plane/models/updateroutesbyidop.py +1 -19
  119. cribl_control_plane/nodes.py +32 -20
  120. cribl_control_plane/packs.py +92 -32
  121. cribl_control_plane/pipelines.py +80 -30
  122. cribl_control_plane/routes_sdk.py +64 -28
  123. cribl_control_plane/samples.py +32 -16
  124. cribl_control_plane/sources.py +80 -30
  125. cribl_control_plane/statuses.py +16 -6
  126. cribl_control_plane/summaries.py +16 -6
  127. cribl_control_plane/teams.py +16 -6
  128. cribl_control_plane/tokens.py +28 -8
  129. cribl_control_plane/utils/forms.py +21 -10
  130. cribl_control_plane/utils/queryparams.py +14 -2
  131. cribl_control_plane/versions_configs.py +16 -6
  132. {cribl_control_plane-0.4.0a6.dist-info → cribl_control_plane-0.4.0b12.dist-info}/METADATA +1 -1
  133. {cribl_control_plane-0.4.0a6.dist-info → cribl_control_plane-0.4.0b12.dist-info}/RECORD +135 -113
  134. cribl_control_plane/models/createpipelineop.py +0 -24
  135. cribl_control_plane/models/lookupversions.py +0 -13
  136. {cribl_control_plane-0.4.0a6.dist-info → cribl_control_plane-0.4.0b12.dist-info}/WHEEL +0 -0
  137. {cribl_control_plane-0.4.0a6.dist-info → cribl_control_plane-0.4.0b12.dist-info}/licenses/LICENSE +0 -0
@@ -18,7 +18,7 @@ class Tokens(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.AuthToken:
21
+ ) -> models.CreateAuthLoginResponse:
22
22
  r"""Log in and fetch an authentication token
23
23
 
24
24
  This endpoint is unavailable on Cribl.Cloud.Instead, follow the instructions at https://docs.cribl.io/stream/api-tutorials/#criblcloud to get an Auth token for Cribl.Cloud.
@@ -60,16 +60,21 @@ class Tokens(BaseSDK):
60
60
  get_serialized_body=lambda: utils.serialize_request_body(
61
61
  request, False, False, "json", models.LoginInfo
62
62
  ),
63
+ allow_empty_value=None,
63
64
  timeout_ms=timeout_ms,
64
65
  )
65
66
 
66
67
  if retries == UNSET:
67
68
  if self.sdk_configuration.retry_config is not UNSET:
68
69
  retries = self.sdk_configuration.retry_config
70
+ else:
71
+ retries = utils.RetryConfig(
72
+ "backoff", utils.BackoffStrategy(500, 60000, 1.5, 3600000), True
73
+ )
69
74
 
70
75
  retry_config = None
71
76
  if isinstance(retries, utils.RetryConfig):
72
- retry_config = (retries, ["429", "500", "502", "503", "504"])
77
+ retry_config = (retries, ["429"])
73
78
 
74
79
  http_res = self.do_request(
75
80
  hook_ctx=HookContext(
@@ -86,11 +91,16 @@ class Tokens(BaseSDK):
86
91
 
87
92
  response_data: Any = None
88
93
  if utils.match_response(http_res, "200", "application/json"):
89
- return unmarshal_json_response(models.AuthToken, http_res)
94
+ return models.CreateAuthLoginResponse(
95
+ result=unmarshal_json_response(models.AuthToken, http_res), headers={}
96
+ )
97
+ if utils.match_response(http_res, "429", "*"):
98
+ http_res_text = utils.stream_to_text(http_res)
99
+ raise errors.APIError("API error occurred", http_res, http_res_text)
90
100
  if utils.match_response(http_res, "500", "application/json"):
91
101
  response_data = unmarshal_json_response(errors.ErrorData, http_res)
92
102
  raise errors.Error(response_data, http_res)
93
- if utils.match_response(http_res, ["401", "429", "4XX"], "*"):
103
+ if utils.match_response(http_res, ["401", "4XX"], "*"):
94
104
  http_res_text = utils.stream_to_text(http_res)
95
105
  raise errors.APIError("API error occurred", http_res, http_res_text)
96
106
  if utils.match_response(http_res, "5XX", "*"):
@@ -108,7 +118,7 @@ class Tokens(BaseSDK):
108
118
  server_url: Optional[str] = None,
109
119
  timeout_ms: Optional[int] = None,
110
120
  http_headers: Optional[Mapping[str, str]] = None,
111
- ) -> models.AuthToken:
121
+ ) -> models.CreateAuthLoginResponse:
112
122
  r"""Log in and fetch an authentication token
113
123
 
114
124
  This endpoint is unavailable on Cribl.Cloud.Instead, follow the instructions at https://docs.cribl.io/stream/api-tutorials/#criblcloud to get an Auth token for Cribl.Cloud.
@@ -150,16 +160,21 @@ class Tokens(BaseSDK):
150
160
  get_serialized_body=lambda: utils.serialize_request_body(
151
161
  request, False, False, "json", models.LoginInfo
152
162
  ),
163
+ allow_empty_value=None,
153
164
  timeout_ms=timeout_ms,
154
165
  )
155
166
 
156
167
  if retries == UNSET:
157
168
  if self.sdk_configuration.retry_config is not UNSET:
158
169
  retries = self.sdk_configuration.retry_config
170
+ else:
171
+ retries = utils.RetryConfig(
172
+ "backoff", utils.BackoffStrategy(500, 60000, 1.5, 3600000), True
173
+ )
159
174
 
160
175
  retry_config = None
161
176
  if isinstance(retries, utils.RetryConfig):
162
- retry_config = (retries, ["429", "500", "502", "503", "504"])
177
+ retry_config = (retries, ["429"])
163
178
 
164
179
  http_res = await self.do_request_async(
165
180
  hook_ctx=HookContext(
@@ -176,11 +191,16 @@ class Tokens(BaseSDK):
176
191
 
177
192
  response_data: Any = None
178
193
  if utils.match_response(http_res, "200", "application/json"):
179
- return unmarshal_json_response(models.AuthToken, http_res)
194
+ return models.CreateAuthLoginResponse(
195
+ result=unmarshal_json_response(models.AuthToken, http_res), headers={}
196
+ )
197
+ if utils.match_response(http_res, "429", "*"):
198
+ http_res_text = await utils.stream_to_text_async(http_res)
199
+ raise errors.APIError("API error occurred", http_res, http_res_text)
180
200
  if utils.match_response(http_res, "500", "application/json"):
181
201
  response_data = unmarshal_json_response(errors.ErrorData, http_res)
182
202
  raise errors.Error(response_data, http_res)
183
- if utils.match_response(http_res, ["401", "429", "4XX"], "*"):
203
+ if utils.match_response(http_res, ["401", "4XX"], "*"):
184
204
  http_res_text = await utils.stream_to_text_async(http_res)
185
205
  raise errors.APIError("API error occurred", http_res, http_res_text)
186
206
  if utils.match_response(http_res, "5XX", "*"):
@@ -142,16 +142,21 @@ def serialize_multipart_form(
142
142
  if field_metadata.file:
143
143
  if isinstance(val, List):
144
144
  # Handle array of files
145
+ array_field_name = f_name + "[]"
145
146
  for file_obj in val:
146
147
  if not _is_set(file_obj):
147
148
  continue
148
-
149
- file_name, content, content_type = _extract_file_properties(file_obj)
149
+
150
+ file_name, content, content_type = _extract_file_properties(
151
+ file_obj
152
+ )
150
153
 
151
154
  if content_type is not None:
152
- files.append((f_name + "[]", (file_name, content, content_type)))
155
+ files.append(
156
+ (array_field_name, (file_name, content, content_type))
157
+ )
153
158
  else:
154
- files.append((f_name + "[]", (file_name, content)))
159
+ files.append((array_field_name, (file_name, content)))
155
160
  else:
156
161
  # Handle single file
157
162
  file_name, content, content_type = _extract_file_properties(val)
@@ -161,11 +166,16 @@ def serialize_multipart_form(
161
166
  else:
162
167
  files.append((f_name, (file_name, content)))
163
168
  elif field_metadata.json:
164
- files.append((f_name, (
165
- None,
166
- marshal_json(val, request_field_types[name]),
167
- "application/json",
168
- )))
169
+ files.append(
170
+ (
171
+ f_name,
172
+ (
173
+ None,
174
+ marshal_json(val, request_field_types[name]),
175
+ "application/json",
176
+ ),
177
+ )
178
+ )
169
179
  else:
170
180
  if isinstance(val, List):
171
181
  values = []
@@ -175,7 +185,8 @@ def serialize_multipart_form(
175
185
  continue
176
186
  values.append(_val_to_string(value))
177
187
 
178
- form[f_name + "[]"] = values
188
+ array_field_name = f_name + "[]"
189
+ form[array_field_name] = values
179
190
  else:
180
191
  form[f_name] = _val_to_string(val)
181
192
  return media_type, form, files
@@ -27,12 +27,13 @@ from .forms import _populate_form
27
27
  def get_query_params(
28
28
  query_params: Any,
29
29
  gbls: Optional[Any] = None,
30
+ allow_empty_value: Optional[List[str]] = None,
30
31
  ) -> Dict[str, List[str]]:
31
32
  params: Dict[str, List[str]] = {}
32
33
 
33
- globals_already_populated = _populate_query_params(query_params, gbls, params, [])
34
+ globals_already_populated = _populate_query_params(query_params, gbls, params, [], allow_empty_value)
34
35
  if _is_set(gbls):
35
- _populate_query_params(gbls, None, params, globals_already_populated)
36
+ _populate_query_params(gbls, None, params, globals_already_populated, allow_empty_value)
36
37
 
37
38
  return params
38
39
 
@@ -42,6 +43,7 @@ def _populate_query_params(
42
43
  gbls: Any,
43
44
  query_param_values: Dict[str, List[str]],
44
45
  skip_fields: List[str],
46
+ allow_empty_value: Optional[List[str]] = None,
45
47
  ) -> List[str]:
46
48
  globals_already_populated: List[str] = []
47
49
 
@@ -69,6 +71,16 @@ def _populate_query_params(
69
71
  globals_already_populated.append(name)
70
72
 
71
73
  f_name = field.alias if field.alias is not None else name
74
+
75
+ allow_empty_set = set(allow_empty_value or [])
76
+ should_include_empty = f_name in allow_empty_set and (
77
+ value is None or value == [] or value == ""
78
+ )
79
+
80
+ if should_include_empty:
81
+ query_param_values[f_name] = [""]
82
+ continue
83
+
72
84
  serialization = metadata.serialization
73
85
  if serialization is not None:
74
86
  serialized_parms = _get_serialized_params(
@@ -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.GetVersionInfoResponse:
20
+ ) -> models.CountedGitInfo:
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.
@@ -49,16 +49,21 @@ class VersionsConfigs(BaseSDK):
49
49
  accept_header_value="application/json",
50
50
  http_headers=http_headers,
51
51
  security=self.sdk_configuration.security,
52
+ allow_empty_value=None,
52
53
  timeout_ms=timeout_ms,
53
54
  )
54
55
 
55
56
  if retries == UNSET:
56
57
  if self.sdk_configuration.retry_config is not UNSET:
57
58
  retries = self.sdk_configuration.retry_config
59
+ else:
60
+ retries = utils.RetryConfig(
61
+ "backoff", utils.BackoffStrategy(500, 60000, 1.5, 3600000), True
62
+ )
58
63
 
59
64
  retry_config = None
60
65
  if isinstance(retries, utils.RetryConfig):
61
- retry_config = (retries, ["429", "500", "502", "503", "504"])
66
+ retry_config = (retries, ["429"])
62
67
 
63
68
  http_res = self.do_request(
64
69
  hook_ctx=HookContext(
@@ -77,7 +82,7 @@ class VersionsConfigs(BaseSDK):
77
82
 
78
83
  response_data: Any = None
79
84
  if utils.match_response(http_res, "200", "application/json"):
80
- return unmarshal_json_response(models.GetVersionInfoResponse, http_res)
85
+ return unmarshal_json_response(models.CountedGitInfo, http_res)
81
86
  if utils.match_response(http_res, "500", "application/json"):
82
87
  response_data = unmarshal_json_response(errors.ErrorData, http_res)
83
88
  raise errors.Error(response_data, http_res)
@@ -97,7 +102,7 @@ class VersionsConfigs(BaseSDK):
97
102
  server_url: Optional[str] = None,
98
103
  timeout_ms: Optional[int] = None,
99
104
  http_headers: Optional[Mapping[str, str]] = None,
100
- ) -> models.GetVersionInfoResponse:
105
+ ) -> models.CountedGitInfo:
101
106
  r"""Get the configuration and status for the Git integration
102
107
 
103
108
  Get the configuration and versioning status for the Git integration for the Cribl configuration.
@@ -129,16 +134,21 @@ class VersionsConfigs(BaseSDK):
129
134
  accept_header_value="application/json",
130
135
  http_headers=http_headers,
131
136
  security=self.sdk_configuration.security,
137
+ allow_empty_value=None,
132
138
  timeout_ms=timeout_ms,
133
139
  )
134
140
 
135
141
  if retries == UNSET:
136
142
  if self.sdk_configuration.retry_config is not UNSET:
137
143
  retries = self.sdk_configuration.retry_config
144
+ else:
145
+ retries = utils.RetryConfig(
146
+ "backoff", utils.BackoffStrategy(500, 60000, 1.5, 3600000), True
147
+ )
138
148
 
139
149
  retry_config = None
140
150
  if isinstance(retries, utils.RetryConfig):
141
- retry_config = (retries, ["429", "500", "502", "503", "504"])
151
+ retry_config = (retries, ["429"])
142
152
 
143
153
  http_res = await self.do_request_async(
144
154
  hook_ctx=HookContext(
@@ -157,7 +167,7 @@ class VersionsConfigs(BaseSDK):
157
167
 
158
168
  response_data: Any = None
159
169
  if utils.match_response(http_res, "200", "application/json"):
160
- return unmarshal_json_response(models.GetVersionInfoResponse, http_res)
170
+ return unmarshal_json_response(models.CountedGitInfo, http_res)
161
171
  if utils.match_response(http_res, "500", "application/json"):
162
172
  response_data = unmarshal_json_response(errors.ErrorData, http_res)
163
173
  raise errors.Error(response_data, http_res)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cribl-control-plane
3
- Version: 0.4.0a6
3
+ Version: 0.4.0b12
4
4
  Summary: Python Client SDK Generated by Speakeasy.
5
5
  License-File: LICENSE
6
6
  Author: Speakeasy