blaxel 0.2.33__py3-none-any.whl → 0.2.35__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.
Files changed (278) hide show
  1. blaxel/__init__.py +2 -2
  2. blaxel/core/__init__.py +2 -1
  3. blaxel/core/client/api/agents/create_agent.py +64 -19
  4. blaxel/core/client/api/agents/delete_agent.py +44 -15
  5. blaxel/core/client/api/agents/get_agent.py +43 -14
  6. blaxel/core/client/api/agents/list_agents.py +40 -11
  7. blaxel/core/client/api/agents/update_agent.py +60 -19
  8. blaxel/core/client/api/compute/create_sandbox.py +60 -23
  9. blaxel/core/client/api/compute/delete_sandbox.py +40 -19
  10. blaxel/core/client/api/compute/get_sandbox.py +39 -18
  11. blaxel/core/client/api/compute/list_sandboxes.py +40 -19
  12. blaxel/core/client/api/compute/update_sandbox.py +56 -23
  13. blaxel/core/client/api/configurations/get_configuration.py +16 -4
  14. blaxel/core/client/api/customdomains/create_custom_domain.py +12 -0
  15. blaxel/core/client/api/customdomains/list_custom_domains.py +16 -4
  16. blaxel/core/client/api/default/get_template.py +8 -4
  17. blaxel/core/client/api/functions/create_function.py +62 -19
  18. blaxel/core/client/api/functions/delete_function.py +46 -15
  19. blaxel/core/client/api/functions/get_function.py +45 -14
  20. blaxel/core/client/api/functions/list_functions.py +44 -15
  21. blaxel/core/client/api/functions/update_function.py +62 -19
  22. blaxel/core/client/api/images/cleanup_images.py +12 -12
  23. blaxel/core/client/api/images/delete_image.py +12 -8
  24. blaxel/core/client/api/images/delete_image_tag.py +12 -8
  25. blaxel/core/client/api/images/get_image.py +12 -8
  26. blaxel/core/client/api/images/list_images.py +12 -8
  27. blaxel/core/client/api/integrations/create_integration_connection.py +56 -23
  28. blaxel/core/client/api/integrations/delete_integration_connection.py +48 -19
  29. blaxel/core/client/api/integrations/get_integration.py +12 -8
  30. blaxel/core/client/api/integrations/get_integration_connection.py +44 -19
  31. blaxel/core/client/api/integrations/get_integration_connection_model.py +2 -2
  32. blaxel/core/client/api/integrations/list_integration_connections.py +36 -19
  33. blaxel/core/client/api/integrations/update_integration_connection.py +52 -19
  34. blaxel/core/client/api/jobs/create_job.py +20 -12
  35. blaxel/core/client/api/jobs/create_job_execution.py +22 -16
  36. blaxel/core/client/api/jobs/delete_job.py +12 -8
  37. blaxel/core/client/api/jobs/delete_job_execution.py +12 -8
  38. blaxel/core/client/api/jobs/get_job.py +24 -20
  39. blaxel/core/client/api/jobs/get_job_execution.py +8 -4
  40. blaxel/core/client/api/jobs/list_job_executions.py +8 -4
  41. blaxel/core/client/api/jobs/list_jobs.py +12 -8
  42. blaxel/core/client/api/jobs/update_job.py +20 -12
  43. blaxel/core/client/api/locations/list_locations.py +12 -8
  44. blaxel/core/client/api/{default → mcphub}/list_mcp_hub_definitions.py +20 -4
  45. blaxel/core/client/api/models/create_model.py +52 -23
  46. blaxel/core/client/api/models/delete_model.py +40 -19
  47. blaxel/core/client/api/models/get_model.py +40 -19
  48. blaxel/core/client/api/models/list_models.py +40 -19
  49. blaxel/core/client/api/models/update_model.py +52 -23
  50. blaxel/core/client/api/policies/create_policy.py +12 -8
  51. blaxel/core/client/api/policies/delete_policy.py +12 -8
  52. blaxel/core/client/api/policies/get_policy.py +12 -8
  53. blaxel/core/client/api/policies/list_policies.py +12 -8
  54. blaxel/core/client/api/policies/update_policy.py +12 -8
  55. blaxel/core/client/api/public_ipslist/list_public_ips.py +37 -5
  56. blaxel/core/client/api/sandboxhub/__init__.py +0 -0
  57. blaxel/core/client/api/{default → sandboxhub}/list_sandbox_hub_definitions.py +20 -4
  58. blaxel/core/client/api/service_accounts/create_api_key_for_service_account.py +12 -8
  59. blaxel/core/client/api/service_accounts/create_workspace_service_account.py +12 -8
  60. blaxel/core/client/api/service_accounts/delete_api_key_for_service_account.py +6 -4
  61. blaxel/core/client/api/service_accounts/delete_workspace_service_account.py +12 -8
  62. blaxel/core/client/api/service_accounts/get_workspace_service_accounts.py +12 -8
  63. blaxel/core/client/api/service_accounts/list_api_keys_for_service_account.py +12 -8
  64. blaxel/core/client/api/service_accounts/update_workspace_service_account.py +8 -8
  65. blaxel/core/client/api/templates/list_templates.py +12 -8
  66. blaxel/core/client/api/volume_templates/create_volume_template.py +8 -4
  67. blaxel/core/client/api/volume_templates/list_volume_templates.py +8 -4
  68. blaxel/core/client/api/volumes/create_volume.py +56 -23
  69. blaxel/core/client/api/volumes/delete_volume.py +44 -19
  70. blaxel/core/client/api/volumes/get_volume.py +40 -19
  71. blaxel/core/client/api/volumes/list_volumes.py +40 -19
  72. blaxel/core/client/api/workspaces/create_workspace.py +54 -23
  73. blaxel/core/client/api/workspaces/delete_workspace.py +42 -19
  74. blaxel/core/client/api/workspaces/get_workspace.py +42 -19
  75. blaxel/core/client/api/workspaces/invite_workspace_user.py +8 -4
  76. blaxel/core/client/api/workspaces/list_workspace_users.py +12 -8
  77. blaxel/core/client/api/workspaces/list_workspaces.py +36 -19
  78. blaxel/core/client/api/workspaces/update_workspace.py +50 -19
  79. blaxel/core/client/models/__init__.py +76 -146
  80. blaxel/core/client/models/agent.py +43 -47
  81. blaxel/core/client/models/agent_runtime.py +139 -0
  82. blaxel/core/client/models/agent_runtime_generation.py +18 -0
  83. blaxel/core/client/models/agent_spec.py +33 -110
  84. blaxel/core/client/models/api_key.py +5 -4
  85. blaxel/core/client/models/core_event.py +5 -5
  86. blaxel/core/client/models/create_api_key_for_service_account_body.py +2 -1
  87. blaxel/core/client/models/create_job_execution_request.py +1 -1
  88. blaxel/core/client/models/create_job_execution_response.py +13 -9
  89. blaxel/core/client/models/custom_domain.py +19 -36
  90. blaxel/core/client/models/custom_domain_metadata.py +4 -3
  91. blaxel/core/client/models/custom_domain_spec.py +14 -5
  92. blaxel/core/client/models/custom_domain_spec_status.py +19 -0
  93. blaxel/core/client/models/entrypoint.py +39 -13
  94. blaxel/core/client/models/{workspace_labels.py → entrypoint_args_item.py} +6 -6
  95. blaxel/core/client/models/entrypoint_env.py +3 -3
  96. blaxel/core/client/models/{job_metrics_executions_total.py → entrypoint_super_gateway_args_item.py} +6 -6
  97. blaxel/core/client/models/{spec_configuration.py → env.py} +17 -8
  98. blaxel/core/{sandbox/client/models/welcome_response.py → client/models/error.py} +26 -23
  99. blaxel/core/client/models/expiration_policy.py +30 -11
  100. blaxel/core/client/models/expiration_policy_action.py +17 -0
  101. blaxel/core/client/models/expiration_policy_type.py +19 -0
  102. blaxel/core/client/models/flavor.py +13 -5
  103. blaxel/core/client/models/flavor_type.py +18 -0
  104. blaxel/core/client/models/form.py +6 -6
  105. blaxel/core/client/models/function.py +43 -47
  106. blaxel/core/client/models/function_runtime.py +138 -0
  107. blaxel/core/client/models/function_runtime_generation.py +18 -0
  108. blaxel/core/client/models/function_spec.py +27 -73
  109. blaxel/core/client/models/function_spec_transport.py +18 -0
  110. blaxel/core/client/models/image.py +19 -36
  111. blaxel/core/client/models/integration_connection.py +25 -39
  112. blaxel/core/client/models/integration_connection_spec.py +8 -5
  113. blaxel/core/client/models/integration_connection_spec_config.py +1 -1
  114. blaxel/core/client/models/integration_connection_spec_secret.py +1 -1
  115. blaxel/core/client/models/integration_endpoint.py +41 -11
  116. blaxel/core/client/models/integration_endpoint_ignore_models_item.py +45 -0
  117. blaxel/core/client/models/{mcp_definition_entrypoint.py → integration_endpoint_models_item.py} +6 -6
  118. blaxel/core/client/models/job.py +43 -47
  119. blaxel/core/client/models/job_execution.py +30 -37
  120. blaxel/core/client/models/job_execution_metadata.py +3 -3
  121. blaxel/core/client/models/job_execution_spec.py +2 -2
  122. blaxel/core/client/models/job_execution_stats.py +5 -5
  123. blaxel/core/client/models/job_execution_status.py +24 -0
  124. blaxel/core/client/models/job_execution_task.py +12 -4
  125. blaxel/core/client/models/job_execution_task_metadata.py +1 -1
  126. blaxel/core/client/models/job_execution_task_spec.py +2 -2
  127. blaxel/core/client/models/job_execution_task_status.py +23 -0
  128. blaxel/core/client/models/job_runtime.py +172 -0
  129. blaxel/core/client/models/job_runtime_generation.py +18 -0
  130. blaxel/core/client/models/job_spec.py +20 -88
  131. blaxel/core/client/models/location_response.py +5 -5
  132. blaxel/core/client/models/mcp_definition.py +30 -17
  133. blaxel/core/client/models/{job_metrics_tasks_total.py → mcp_definition_categories_item.py} +6 -6
  134. blaxel/core/client/models/metadata.py +23 -17
  135. blaxel/core/client/models/metadata_labels.py +4 -1
  136. blaxel/core/client/models/model.py +43 -47
  137. blaxel/core/client/models/model_runtime.py +99 -0
  138. blaxel/core/client/models/model_runtime_type.py +34 -0
  139. blaxel/core/client/models/model_spec.py +12 -58
  140. blaxel/core/client/models/o_auth.py +23 -6
  141. blaxel/core/client/models/{form_oauth.py → o_auth_scope_item.py} +6 -6
  142. blaxel/core/client/models/pending_invitation_accept.py +2 -1
  143. blaxel/core/client/models/pending_invitation_workspace_details.py +27 -6
  144. blaxel/core/client/models/{metrics_request_total_per_code.py → pending_invitation_workspace_details_emails_item.py} +6 -6
  145. blaxel/core/client/models/policy.py +20 -36
  146. blaxel/core/client/models/policy_location.py +13 -5
  147. blaxel/core/client/models/policy_location_type.py +19 -0
  148. blaxel/core/client/models/policy_max_tokens.py +6 -6
  149. blaxel/core/client/models/policy_resource_type.py +20 -0
  150. blaxel/core/client/models/policy_spec.py +31 -10
  151. blaxel/core/client/models/policy_spec_type.py +19 -0
  152. blaxel/core/client/models/port.py +25 -15
  153. blaxel/core/client/models/port_protocol.py +19 -0
  154. blaxel/core/client/models/preview.py +19 -36
  155. blaxel/core/client/models/preview_metadata.py +12 -10
  156. blaxel/core/client/models/preview_token.py +19 -36
  157. blaxel/core/client/models/preview_token_metadata.py +8 -6
  158. blaxel/core/client/models/repository.py +2 -2
  159. blaxel/core/client/models/revision_configuration.py +3 -3
  160. blaxel/core/client/models/sandbox.py +45 -58
  161. blaxel/core/client/models/sandbox_definition.py +37 -22
  162. blaxel/core/client/models/sandbox_definition_categories_item.py +45 -0
  163. blaxel/core/client/models/sandbox_error.py +148 -0
  164. blaxel/core/client/models/sandbox_error_details.py +45 -0
  165. blaxel/core/client/models/sandbox_lifecycle.py +3 -2
  166. blaxel/core/client/models/sandbox_runtime.py +145 -0
  167. blaxel/core/client/models/sandbox_spec.py +33 -134
  168. blaxel/core/client/models/status.py +25 -0
  169. blaxel/core/client/models/template.py +8 -7
  170. blaxel/core/client/models/template_variable.py +5 -5
  171. blaxel/core/client/models/trigger.py +14 -6
  172. blaxel/core/client/models/trigger_configuration.py +7 -6
  173. blaxel/core/client/models/trigger_type.py +19 -0
  174. blaxel/core/client/models/volume.py +35 -47
  175. blaxel/core/client/models/volume_attachment.py +6 -4
  176. blaxel/core/client/models/volume_spec.py +7 -4
  177. blaxel/core/client/models/volume_state.py +3 -3
  178. blaxel/core/client/models/volume_template.py +19 -33
  179. blaxel/core/client/models/volume_template_state.py +12 -4
  180. blaxel/core/client/models/volume_template_state_status.py +19 -0
  181. blaxel/core/client/models/volume_template_version.py +12 -4
  182. blaxel/core/client/models/volume_template_version_status.py +19 -0
  183. blaxel/core/client/models/workspace.py +35 -25
  184. blaxel/core/client/models/workspace_runtime.py +3 -2
  185. blaxel/core/client/models/workspace_status.py +22 -0
  186. blaxel/core/common/__init__.py +1 -1
  187. blaxel/core/jobs/__init__.py +0 -1
  188. blaxel/core/sandbox/__init__.py +2 -0
  189. blaxel/core/sandbox/client/api/process/post_process.py +8 -4
  190. blaxel/core/sandbox/client/models/__init__.py +0 -2
  191. blaxel/core/sandbox/client/models/process_response.py +16 -0
  192. blaxel/core/sandbox/client/models/process_response_status.py +9 -0
  193. blaxel/core/sandbox/default/__init__.py +2 -0
  194. blaxel/core/sandbox/default/interpreter.py +5 -1
  195. blaxel/core/sandbox/default/preview.py +3 -1
  196. blaxel/core/sandbox/default/sandbox.py +85 -26
  197. blaxel/core/sandbox/sync/process.py +2 -1
  198. blaxel/core/sandbox/sync/sandbox.py +68 -23
  199. blaxel/core/sandbox/types.py +3 -0
  200. blaxel/core/tools/common.py +16 -2
  201. blaxel/core/volume/__init__.py +2 -2
  202. blaxel/core/volume/volume.py +227 -11
  203. blaxel/langgraph/tools.py +34 -2
  204. blaxel/openai/tools.py +33 -1
  205. {blaxel-0.2.33.dist-info → blaxel-0.2.35.dist-info}/METADATA +3 -3
  206. {blaxel-0.2.33.dist-info → blaxel-0.2.35.dist-info}/RECORD +209 -248
  207. blaxel/core/client/models/acl.py +0 -133
  208. blaxel/core/client/models/billable_time_metric.py +0 -89
  209. blaxel/core/client/models/core_spec.py +0 -194
  210. blaxel/core/client/models/core_spec_configurations.py +0 -77
  211. blaxel/core/client/models/histogram_bucket.py +0 -79
  212. blaxel/core/client/models/histogram_stats.py +0 -88
  213. blaxel/core/client/models/integration_model.py +0 -162
  214. blaxel/core/client/models/job_execution_config.py +0 -79
  215. blaxel/core/client/models/job_metrics.py +0 -262
  216. blaxel/core/client/models/jobs_chart_value.py +0 -70
  217. blaxel/core/client/models/jobs_network_chart.py +0 -102
  218. blaxel/core/client/models/jobs_success_failed_chart.py +0 -147
  219. blaxel/core/client/models/jobs_total.py +0 -88
  220. blaxel/core/client/models/last_n_requests_metric.py +0 -97
  221. blaxel/core/client/models/latency_metric.py +0 -148
  222. blaxel/core/client/models/logs_response.py +0 -63
  223. blaxel/core/client/models/logs_response_data.py +0 -99
  224. blaxel/core/client/models/mcp_definition_form.py +0 -45
  225. blaxel/core/client/models/memory_allocation_by_name.py +0 -70
  226. blaxel/core/client/models/memory_allocation_metric.py +0 -61
  227. blaxel/core/client/models/metric.py +0 -79
  228. blaxel/core/client/models/metrics.py +0 -273
  229. blaxel/core/client/models/metrics_models.py +0 -45
  230. blaxel/core/client/models/metrics_rps_per_code.py +0 -45
  231. blaxel/core/client/models/pod_template_spec.py +0 -45
  232. blaxel/core/client/models/request_duration_over_time_metric.py +0 -97
  233. blaxel/core/client/models/request_duration_over_time_metrics.py +0 -84
  234. blaxel/core/client/models/request_total_by_origin_metric.py +0 -129
  235. blaxel/core/client/models/request_total_by_origin_metric_request_total_by_origin.py +0 -45
  236. blaxel/core/client/models/request_total_by_origin_metric_request_total_by_origin_and_code.py +0 -45
  237. blaxel/core/client/models/request_total_metric.py +0 -155
  238. blaxel/core/client/models/request_total_metric_request_total_per_code.py +0 -45
  239. blaxel/core/client/models/request_total_metric_rps_per_code.py +0 -45
  240. blaxel/core/client/models/request_total_response_data.py +0 -97
  241. blaxel/core/client/models/resource.py +0 -99
  242. blaxel/core/client/models/resource_log.py +0 -88
  243. blaxel/core/client/models/resource_log_chart.py +0 -133
  244. blaxel/core/client/models/resource_log_response.py +0 -83
  245. blaxel/core/client/models/resource_metrics.py +0 -618
  246. blaxel/core/client/models/resource_metrics_request_total_per_code.py +0 -45
  247. blaxel/core/client/models/resource_metrics_request_total_per_code_previous.py +0 -45
  248. blaxel/core/client/models/resource_metrics_rps_per_code.py +0 -45
  249. blaxel/core/client/models/resource_metrics_rps_per_code_previous.py +0 -45
  250. blaxel/core/client/models/resource_trace.py +0 -97
  251. blaxel/core/client/models/runtime.py +0 -317
  252. blaxel/core/client/models/runtime_configuration.py +0 -45
  253. blaxel/core/client/models/runtime_startup_probe.py +0 -45
  254. blaxel/core/client/models/sandbox_metrics.py +0 -88
  255. blaxel/core/client/models/serverless_config.py +0 -117
  256. blaxel/core/client/models/serverless_config_configuration.py +0 -45
  257. blaxel/core/client/models/start_sandbox.py +0 -98
  258. blaxel/core/client/models/stop_sandbox.py +0 -98
  259. blaxel/core/client/models/store_agent.py +0 -181
  260. blaxel/core/client/models/store_agent_labels.py +0 -45
  261. blaxel/core/client/models/store_configuration.py +0 -156
  262. blaxel/core/client/models/store_configuration_option.py +0 -79
  263. blaxel/core/client/models/time_to_first_token_over_time_metrics.py +0 -87
  264. blaxel/core/client/models/token_rate_metric.py +0 -106
  265. blaxel/core/client/models/token_rate_metrics.py +0 -124
  266. blaxel/core/client/models/token_total_metric.py +0 -112
  267. blaxel/core/client/models/trace_ids_response.py +0 -45
  268. blaxel/core/client/models/websocket_channel.py +0 -97
  269. blaxel/core/client/models/websocket_message.py +0 -106
  270. blaxel/core/sandbox/client/api/root/delete.py +0 -130
  271. blaxel/core/sandbox/client/api/root/get.py +0 -130
  272. blaxel/core/sandbox/client/api/root/options.py +0 -130
  273. blaxel/core/sandbox/client/api/root/patch.py +0 -130
  274. blaxel/core/sandbox/client/api/root/post.py +0 -130
  275. blaxel/core/sandbox/client/api/root/put.py +0 -130
  276. /blaxel/core/{sandbox/client/api/root → client/api/mcphub}/__init__.py +0 -0
  277. {blaxel-0.2.33.dist-info → blaxel-0.2.35.dist-info}/WHEEL +0 -0
  278. {blaxel-0.2.33.dist-info → blaxel-0.2.35.dist-info}/licenses/LICENSE +0 -0
@@ -1,88 +0,0 @@
1
- from typing import Any, TypeVar, Union
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- from ..types import UNSET, Unset
7
-
8
- T = TypeVar("T", bound="SandboxMetrics")
9
-
10
-
11
- @_attrs_define
12
- class SandboxMetrics:
13
- """Enhanced sandbox metrics with memory, value, and percent data
14
-
15
- Attributes:
16
- memory (Union[Unset, float]): Memory limit in bytes (from query A)
17
- percent (Union[Unset, float]): Memory usage percentage (from formula F1)
18
- timestamp (Union[Unset, str]): Metric timestamp
19
- value (Union[Unset, float]): Memory usage in bytes (from query B)
20
- """
21
-
22
- memory: Union[Unset, float] = UNSET
23
- percent: Union[Unset, float] = UNSET
24
- timestamp: Union[Unset, str] = UNSET
25
- value: Union[Unset, float] = UNSET
26
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
27
-
28
- def to_dict(self) -> dict[str, Any]:
29
- memory = self.memory
30
-
31
- percent = self.percent
32
-
33
- timestamp = self.timestamp
34
-
35
- value = self.value
36
-
37
- field_dict: dict[str, Any] = {}
38
- field_dict.update(self.additional_properties)
39
- field_dict.update({})
40
- if memory is not UNSET:
41
- field_dict["memory"] = memory
42
- if percent is not UNSET:
43
- field_dict["percent"] = percent
44
- if timestamp is not UNSET:
45
- field_dict["timestamp"] = timestamp
46
- if value is not UNSET:
47
- field_dict["value"] = value
48
-
49
- return field_dict
50
-
51
- @classmethod
52
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
53
- if not src_dict:
54
- return None
55
- d = src_dict.copy()
56
- memory = d.pop("memory", UNSET)
57
-
58
- percent = d.pop("percent", UNSET)
59
-
60
- timestamp = d.pop("timestamp", UNSET)
61
-
62
- value = d.pop("value", UNSET)
63
-
64
- sandbox_metrics = cls(
65
- memory=memory,
66
- percent=percent,
67
- timestamp=timestamp,
68
- value=value,
69
- )
70
-
71
- sandbox_metrics.additional_properties = d
72
- return sandbox_metrics
73
-
74
- @property
75
- def additional_keys(self) -> list[str]:
76
- return list(self.additional_properties.keys())
77
-
78
- def __getitem__(self, key: str) -> Any:
79
- return self.additional_properties[key]
80
-
81
- def __setitem__(self, key: str, value: Any) -> None:
82
- self.additional_properties[key] = value
83
-
84
- def __delitem__(self, key: str) -> None:
85
- del self.additional_properties[key]
86
-
87
- def __contains__(self, key: str) -> bool:
88
- return key in self.additional_properties
@@ -1,117 +0,0 @@
1
- from typing import TYPE_CHECKING, Any, TypeVar, Union
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- from ..types import UNSET, Unset
7
-
8
- if TYPE_CHECKING:
9
- from ..models.serverless_config_configuration import ServerlessConfigConfiguration
10
-
11
-
12
- T = TypeVar("T", bound="ServerlessConfig")
13
-
14
-
15
- @_attrs_define
16
- class ServerlessConfig:
17
- """Configuration for a serverless deployment
18
-
19
- Attributes:
20
- configuration (Union[Unset, ServerlessConfigConfiguration]): The configuration for the deployment
21
- max_retries (Union[Unset, int]): The maximum number of retries for the deployment
22
- max_scale (Union[Unset, int]): The minimum number of replicas for the deployment. Can be 0 or 1 (in which case
23
- the deployment is always running in at least one location).
24
- min_scale (Union[Unset, int]): The maximum number of replicas for the deployment.
25
- timeout (Union[Unset, int]): The timeout for the deployment in seconds
26
- """
27
-
28
- configuration: Union[Unset, "ServerlessConfigConfiguration"] = UNSET
29
- max_retries: Union[Unset, int] = UNSET
30
- max_scale: Union[Unset, int] = UNSET
31
- min_scale: Union[Unset, int] = UNSET
32
- timeout: Union[Unset, int] = UNSET
33
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
34
-
35
- def to_dict(self) -> dict[str, Any]:
36
- configuration: Union[Unset, dict[str, Any]] = UNSET
37
- if (
38
- self.configuration
39
- and not isinstance(self.configuration, Unset)
40
- and not isinstance(self.configuration, dict)
41
- ):
42
- configuration = self.configuration.to_dict()
43
- elif self.configuration and isinstance(self.configuration, dict):
44
- configuration = self.configuration
45
-
46
- max_retries = self.max_retries
47
-
48
- max_scale = self.max_scale
49
-
50
- min_scale = self.min_scale
51
-
52
- timeout = self.timeout
53
-
54
- field_dict: dict[str, Any] = {}
55
- field_dict.update(self.additional_properties)
56
- field_dict.update({})
57
- if configuration is not UNSET:
58
- field_dict["configuration"] = configuration
59
- if max_retries is not UNSET:
60
- field_dict["maxRetries"] = max_retries
61
- if max_scale is not UNSET:
62
- field_dict["maxScale"] = max_scale
63
- if min_scale is not UNSET:
64
- field_dict["minScale"] = min_scale
65
- if timeout is not UNSET:
66
- field_dict["timeout"] = timeout
67
-
68
- return field_dict
69
-
70
- @classmethod
71
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
72
- from ..models.serverless_config_configuration import ServerlessConfigConfiguration
73
-
74
- if not src_dict:
75
- return None
76
- d = src_dict.copy()
77
- _configuration = d.pop("configuration", UNSET)
78
- configuration: Union[Unset, ServerlessConfigConfiguration]
79
- if isinstance(_configuration, Unset):
80
- configuration = UNSET
81
- else:
82
- configuration = ServerlessConfigConfiguration.from_dict(_configuration)
83
-
84
- max_retries = d.pop("maxRetries", d.pop("max_retries", UNSET))
85
-
86
- max_scale = d.pop("maxScale", d.pop("max_scale", UNSET))
87
-
88
- min_scale = d.pop("minScale", d.pop("min_scale", UNSET))
89
-
90
- timeout = d.pop("timeout", UNSET)
91
-
92
- serverless_config = cls(
93
- configuration=configuration,
94
- max_retries=max_retries,
95
- max_scale=max_scale,
96
- min_scale=min_scale,
97
- timeout=timeout,
98
- )
99
-
100
- serverless_config.additional_properties = d
101
- return serverless_config
102
-
103
- @property
104
- def additional_keys(self) -> list[str]:
105
- return list(self.additional_properties.keys())
106
-
107
- def __getitem__(self, key: str) -> Any:
108
- return self.additional_properties[key]
109
-
110
- def __setitem__(self, key: str, value: Any) -> None:
111
- self.additional_properties[key] = value
112
-
113
- def __delitem__(self, key: str) -> None:
114
- del self.additional_properties[key]
115
-
116
- def __contains__(self, key: str) -> bool:
117
- return key in self.additional_properties
@@ -1,45 +0,0 @@
1
- from typing import Any, TypeVar
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- T = TypeVar("T", bound="ServerlessConfigConfiguration")
7
-
8
-
9
- @_attrs_define
10
- class ServerlessConfigConfiguration:
11
- """The configuration for the deployment"""
12
-
13
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
14
-
15
- def to_dict(self) -> dict[str, Any]:
16
- field_dict: dict[str, Any] = {}
17
- field_dict.update(self.additional_properties)
18
-
19
- return field_dict
20
-
21
- @classmethod
22
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
23
- if not src_dict:
24
- return None
25
- d = src_dict.copy()
26
- serverless_config_configuration = cls()
27
-
28
- serverless_config_configuration.additional_properties = d
29
- return serverless_config_configuration
30
-
31
- @property
32
- def additional_keys(self) -> list[str]:
33
- return list(self.additional_properties.keys())
34
-
35
- def __getitem__(self, key: str) -> Any:
36
- return self.additional_properties[key]
37
-
38
- def __setitem__(self, key: str, value: Any) -> None:
39
- self.additional_properties[key] = value
40
-
41
- def __delitem__(self, key: str) -> None:
42
- del self.additional_properties[key]
43
-
44
- def __contains__(self, key: str) -> bool:
45
- return key in self.additional_properties
@@ -1,98 +0,0 @@
1
- from typing import TYPE_CHECKING, Any, TypeVar, Union
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- from ..types import UNSET, Unset
7
-
8
- if TYPE_CHECKING:
9
- from ..models.metadata import Metadata
10
-
11
-
12
- T = TypeVar("T", bound="StartSandbox")
13
-
14
-
15
- @_attrs_define
16
- class StartSandbox:
17
- """Response when starting a Sandbox
18
-
19
- Attributes:
20
- message (Union[Unset, str]): Human readable message about the start operation
21
- metadata (Union[Unset, Metadata]): Metadata
22
- status (Union[Unset, str]): Status of the Sandbox start operation
23
- """
24
-
25
- message: Union[Unset, str] = UNSET
26
- metadata: Union[Unset, "Metadata"] = UNSET
27
- status: Union[Unset, str] = UNSET
28
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
29
-
30
- def to_dict(self) -> dict[str, Any]:
31
- message = self.message
32
-
33
- metadata: Union[Unset, dict[str, Any]] = UNSET
34
- if (
35
- self.metadata
36
- and not isinstance(self.metadata, Unset)
37
- and not isinstance(self.metadata, dict)
38
- ):
39
- metadata = self.metadata.to_dict()
40
- elif self.metadata and isinstance(self.metadata, dict):
41
- metadata = self.metadata
42
-
43
- status = self.status
44
-
45
- field_dict: dict[str, Any] = {}
46
- field_dict.update(self.additional_properties)
47
- field_dict.update({})
48
- if message is not UNSET:
49
- field_dict["message"] = message
50
- if metadata is not UNSET:
51
- field_dict["metadata"] = metadata
52
- if status is not UNSET:
53
- field_dict["status"] = status
54
-
55
- return field_dict
56
-
57
- @classmethod
58
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
59
- from ..models.metadata import Metadata
60
-
61
- if not src_dict:
62
- return None
63
- d = src_dict.copy()
64
- message = d.pop("message", UNSET)
65
-
66
- _metadata = d.pop("metadata", UNSET)
67
- metadata: Union[Unset, Metadata]
68
- if isinstance(_metadata, Unset):
69
- metadata = UNSET
70
- else:
71
- metadata = Metadata.from_dict(_metadata)
72
-
73
- status = d.pop("status", UNSET)
74
-
75
- start_sandbox = cls(
76
- message=message,
77
- metadata=metadata,
78
- status=status,
79
- )
80
-
81
- start_sandbox.additional_properties = d
82
- return start_sandbox
83
-
84
- @property
85
- def additional_keys(self) -> list[str]:
86
- return list(self.additional_properties.keys())
87
-
88
- def __getitem__(self, key: str) -> Any:
89
- return self.additional_properties[key]
90
-
91
- def __setitem__(self, key: str, value: Any) -> None:
92
- self.additional_properties[key] = value
93
-
94
- def __delitem__(self, key: str) -> None:
95
- del self.additional_properties[key]
96
-
97
- def __contains__(self, key: str) -> bool:
98
- return key in self.additional_properties
@@ -1,98 +0,0 @@
1
- from typing import TYPE_CHECKING, Any, TypeVar, Union
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- from ..types import UNSET, Unset
7
-
8
- if TYPE_CHECKING:
9
- from ..models.metadata import Metadata
10
-
11
-
12
- T = TypeVar("T", bound="StopSandbox")
13
-
14
-
15
- @_attrs_define
16
- class StopSandbox:
17
- """Response when stopping a Sandbox
18
-
19
- Attributes:
20
- message (Union[Unset, str]): Human readable message about the stop operation
21
- metadata (Union[Unset, Metadata]): Metadata
22
- status (Union[Unset, str]): Status of the Sandbox stop operation
23
- """
24
-
25
- message: Union[Unset, str] = UNSET
26
- metadata: Union[Unset, "Metadata"] = UNSET
27
- status: Union[Unset, str] = UNSET
28
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
29
-
30
- def to_dict(self) -> dict[str, Any]:
31
- message = self.message
32
-
33
- metadata: Union[Unset, dict[str, Any]] = UNSET
34
- if (
35
- self.metadata
36
- and not isinstance(self.metadata, Unset)
37
- and not isinstance(self.metadata, dict)
38
- ):
39
- metadata = self.metadata.to_dict()
40
- elif self.metadata and isinstance(self.metadata, dict):
41
- metadata = self.metadata
42
-
43
- status = self.status
44
-
45
- field_dict: dict[str, Any] = {}
46
- field_dict.update(self.additional_properties)
47
- field_dict.update({})
48
- if message is not UNSET:
49
- field_dict["message"] = message
50
- if metadata is not UNSET:
51
- field_dict["metadata"] = metadata
52
- if status is not UNSET:
53
- field_dict["status"] = status
54
-
55
- return field_dict
56
-
57
- @classmethod
58
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
59
- from ..models.metadata import Metadata
60
-
61
- if not src_dict:
62
- return None
63
- d = src_dict.copy()
64
- message = d.pop("message", UNSET)
65
-
66
- _metadata = d.pop("metadata", UNSET)
67
- metadata: Union[Unset, Metadata]
68
- if isinstance(_metadata, Unset):
69
- metadata = UNSET
70
- else:
71
- metadata = Metadata.from_dict(_metadata)
72
-
73
- status = d.pop("status", UNSET)
74
-
75
- stop_sandbox = cls(
76
- message=message,
77
- metadata=metadata,
78
- status=status,
79
- )
80
-
81
- stop_sandbox.additional_properties = d
82
- return stop_sandbox
83
-
84
- @property
85
- def additional_keys(self) -> list[str]:
86
- return list(self.additional_properties.keys())
87
-
88
- def __getitem__(self, key: str) -> Any:
89
- return self.additional_properties[key]
90
-
91
- def __setitem__(self, key: str, value: Any) -> None:
92
- self.additional_properties[key] = value
93
-
94
- def __delitem__(self, key: str) -> None:
95
- del self.additional_properties[key]
96
-
97
- def __contains__(self, key: str) -> bool:
98
- return key in self.additional_properties
@@ -1,181 +0,0 @@
1
- from typing import TYPE_CHECKING, Any, TypeVar, Union
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- from ..types import UNSET, Unset
7
-
8
- if TYPE_CHECKING:
9
- from ..models.store_agent_labels import StoreAgentLabels
10
- from ..models.store_configuration import StoreConfiguration
11
-
12
-
13
- T = TypeVar("T", bound="StoreAgent")
14
-
15
-
16
- @_attrs_define
17
- class StoreAgent:
18
- """Store agent
19
-
20
- Attributes:
21
- created_at (Union[Unset, str]): The date and time when the resource was created
22
- updated_at (Union[Unset, str]): The date and time when the resource was updated
23
- created_by (Union[Unset, str]): The user or service account who created the resource
24
- updated_by (Union[Unset, str]): The user or service account who updated the resource
25
- configuration (Union[Unset, list['StoreConfiguration']]): Store agent configuration
26
- description (Union[Unset, str]): Store agent description
27
- display_name (Union[Unset, str]): Store agent display name
28
- image (Union[Unset, str]): Store agent image
29
- labels (Union[Unset, StoreAgentLabels]): Store agent labels
30
- name (Union[Unset, str]): Store agent name
31
- prompt (Union[Unset, str]): Store agent prompt, this is to define what the agent does
32
- """
33
-
34
- created_at: Union[Unset, str] = UNSET
35
- updated_at: Union[Unset, str] = UNSET
36
- created_by: Union[Unset, str] = UNSET
37
- updated_by: Union[Unset, str] = UNSET
38
- configuration: Union[Unset, list["StoreConfiguration"]] = UNSET
39
- description: Union[Unset, str] = UNSET
40
- display_name: Union[Unset, str] = UNSET
41
- image: Union[Unset, str] = UNSET
42
- labels: Union[Unset, "StoreAgentLabels"] = UNSET
43
- name: Union[Unset, str] = UNSET
44
- prompt: Union[Unset, str] = UNSET
45
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
46
-
47
- def to_dict(self) -> dict[str, Any]:
48
- created_at = self.created_at
49
-
50
- updated_at = self.updated_at
51
-
52
- created_by = self.created_by
53
-
54
- updated_by = self.updated_by
55
-
56
- configuration: Union[Unset, list[dict[str, Any]]] = UNSET
57
- if not isinstance(self.configuration, Unset):
58
- configuration = []
59
- for configuration_item_data in self.configuration:
60
- if type(configuration_item_data) is dict:
61
- configuration_item = configuration_item_data
62
- else:
63
- configuration_item = configuration_item_data.to_dict()
64
- configuration.append(configuration_item)
65
-
66
- description = self.description
67
-
68
- display_name = self.display_name
69
-
70
- image = self.image
71
-
72
- labels: Union[Unset, dict[str, Any]] = UNSET
73
- if self.labels and not isinstance(self.labels, Unset) and not isinstance(self.labels, dict):
74
- labels = self.labels.to_dict()
75
- elif self.labels and isinstance(self.labels, dict):
76
- labels = self.labels
77
-
78
- name = self.name
79
-
80
- prompt = self.prompt
81
-
82
- field_dict: dict[str, Any] = {}
83
- field_dict.update(self.additional_properties)
84
- field_dict.update({})
85
- if created_at is not UNSET:
86
- field_dict["createdAt"] = created_at
87
- if updated_at is not UNSET:
88
- field_dict["updatedAt"] = updated_at
89
- if created_by is not UNSET:
90
- field_dict["createdBy"] = created_by
91
- if updated_by is not UNSET:
92
- field_dict["updatedBy"] = updated_by
93
- if configuration is not UNSET:
94
- field_dict["configuration"] = configuration
95
- if description is not UNSET:
96
- field_dict["description"] = description
97
- if display_name is not UNSET:
98
- field_dict["displayName"] = display_name
99
- if image is not UNSET:
100
- field_dict["image"] = image
101
- if labels is not UNSET:
102
- field_dict["labels"] = labels
103
- if name is not UNSET:
104
- field_dict["name"] = name
105
- if prompt is not UNSET:
106
- field_dict["prompt"] = prompt
107
-
108
- return field_dict
109
-
110
- @classmethod
111
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
112
- from ..models.store_agent_labels import StoreAgentLabels
113
- from ..models.store_configuration import StoreConfiguration
114
-
115
- if not src_dict:
116
- return None
117
- d = src_dict.copy()
118
- created_at = d.pop("createdAt", d.pop("created_at", UNSET))
119
-
120
- updated_at = d.pop("updatedAt", d.pop("updated_at", UNSET))
121
-
122
- created_by = d.pop("createdBy", d.pop("created_by", UNSET))
123
-
124
- updated_by = d.pop("updatedBy", d.pop("updated_by", UNSET))
125
-
126
- configuration = []
127
- _configuration = d.pop("configuration", UNSET)
128
- for configuration_item_data in _configuration or []:
129
- configuration_item = StoreConfiguration.from_dict(configuration_item_data)
130
-
131
- configuration.append(configuration_item)
132
-
133
- description = d.pop("description", UNSET)
134
-
135
- display_name = d.pop("displayName", d.pop("display_name", UNSET))
136
-
137
- image = d.pop("image", UNSET)
138
-
139
- _labels = d.pop("labels", UNSET)
140
- labels: Union[Unset, StoreAgentLabels]
141
- if isinstance(_labels, Unset):
142
- labels = UNSET
143
- else:
144
- labels = StoreAgentLabels.from_dict(_labels)
145
-
146
- name = d.pop("name", UNSET)
147
-
148
- prompt = d.pop("prompt", UNSET)
149
-
150
- store_agent = cls(
151
- created_at=created_at,
152
- updated_at=updated_at,
153
- created_by=created_by,
154
- updated_by=updated_by,
155
- configuration=configuration,
156
- description=description,
157
- display_name=display_name,
158
- image=image,
159
- labels=labels,
160
- name=name,
161
- prompt=prompt,
162
- )
163
-
164
- store_agent.additional_properties = d
165
- return store_agent
166
-
167
- @property
168
- def additional_keys(self) -> list[str]:
169
- return list(self.additional_properties.keys())
170
-
171
- def __getitem__(self, key: str) -> Any:
172
- return self.additional_properties[key]
173
-
174
- def __setitem__(self, key: str, value: Any) -> None:
175
- self.additional_properties[key] = value
176
-
177
- def __delitem__(self, key: str) -> None:
178
- del self.additional_properties[key]
179
-
180
- def __contains__(self, key: str) -> bool:
181
- return key in self.additional_properties
@@ -1,45 +0,0 @@
1
- from typing import Any, TypeVar
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- T = TypeVar("T", bound="StoreAgentLabels")
7
-
8
-
9
- @_attrs_define
10
- class StoreAgentLabels:
11
- """Store agent labels"""
12
-
13
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
14
-
15
- def to_dict(self) -> dict[str, Any]:
16
- field_dict: dict[str, Any] = {}
17
- field_dict.update(self.additional_properties)
18
-
19
- return field_dict
20
-
21
- @classmethod
22
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
23
- if not src_dict:
24
- return None
25
- d = src_dict.copy()
26
- store_agent_labels = cls()
27
-
28
- store_agent_labels.additional_properties = d
29
- return store_agent_labels
30
-
31
- @property
32
- def additional_keys(self) -> list[str]:
33
- return list(self.additional_properties.keys())
34
-
35
- def __getitem__(self, key: str) -> Any:
36
- return self.additional_properties[key]
37
-
38
- def __setitem__(self, key: str, value: Any) -> None:
39
- self.additional_properties[key] = value
40
-
41
- def __delitem__(self, key: str) -> None:
42
- del self.additional_properties[key]
43
-
44
- def __contains__(self, key: str) -> bool:
45
- return key in self.additional_properties