blaxel 0.2.26rc119__py3-none-any.whl → 0.2.28__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.
- blaxel/__init__.py +2 -2
- blaxel/core/__init__.py +9 -1
- blaxel/core/client/api/{privateclusters/create_private_cluster.py → images/cleanup_images.py} +31 -25
- blaxel/core/client/models/__init__.py +2 -4
- blaxel/core/client/models/agent.py +1 -0
- blaxel/core/client/models/agent_spec.py +1 -24
- blaxel/core/client/models/billable_time_metric.py +1 -0
- blaxel/core/{sandbox/client/models/find_match.py → client/models/cleanup_images_response_200.py} +19 -19
- blaxel/core/client/models/configuration.py +1 -0
- blaxel/core/client/models/core_event.py +9 -0
- blaxel/core/client/models/core_spec.py +1 -24
- blaxel/core/client/models/core_spec_configurations.py +1 -0
- blaxel/core/client/models/create_job_execution_request.py +1 -0
- blaxel/core/client/models/create_job_execution_response.py +1 -0
- blaxel/core/client/models/custom_domain.py +1 -0
- blaxel/core/client/models/custom_domain_metadata.py +1 -0
- blaxel/core/client/models/custom_domain_spec.py +1 -0
- blaxel/core/client/models/delete_volume_template_version_response_200.py +1 -0
- blaxel/core/client/models/entrypoint.py +1 -0
- blaxel/core/client/models/form.py +1 -0
- blaxel/core/client/models/function.py +1 -0
- blaxel/core/client/models/function_spec.py +1 -24
- blaxel/core/client/models/image.py +1 -0
- blaxel/core/client/models/image_spec.py +1 -0
- blaxel/core/client/models/integration.py +1 -0
- blaxel/core/client/models/integration_connection.py +1 -0
- blaxel/core/client/models/integration_connection_spec.py +1 -0
- blaxel/core/client/models/integration_endpoint.py +1 -0
- blaxel/core/client/models/integration_endpoints.py +2 -0
- blaxel/core/client/models/job.py +1 -0
- blaxel/core/client/models/job_execution.py +1 -0
- blaxel/core/client/models/job_execution_spec.py +1 -0
- blaxel/core/client/models/job_execution_task.py +1 -0
- blaxel/core/client/models/job_metrics.py +1 -0
- blaxel/core/client/models/job_spec.py +1 -24
- blaxel/core/client/models/jobs_network_chart.py +1 -0
- blaxel/core/client/models/jobs_success_failed_chart.py +1 -0
- blaxel/core/client/models/latency_metric.py +1 -0
- blaxel/core/client/models/location_response.py +1 -0
- blaxel/core/client/models/mcp_definition.py +1 -0
- blaxel/core/client/models/metadata.py +1 -0
- blaxel/core/client/models/metrics.py +34 -0
- blaxel/core/client/models/model.py +1 -0
- blaxel/core/client/models/model_spec.py +1 -24
- blaxel/core/client/models/pending_invitation_accept.py +1 -0
- blaxel/core/client/models/pending_invitation_render.py +1 -0
- blaxel/core/client/models/policy.py +1 -0
- blaxel/core/client/models/policy_spec.py +1 -0
- blaxel/core/client/models/preview.py +1 -0
- blaxel/core/client/models/preview_spec.py +1 -0
- blaxel/core/client/models/preview_token.py +1 -0
- blaxel/core/client/models/public_ips.py +1 -0
- blaxel/core/client/models/request_duration_over_time_metrics.py +1 -0
- blaxel/core/client/models/request_total_by_origin_metric.py +1 -0
- blaxel/core/client/models/request_total_metric.py +1 -0
- blaxel/core/client/models/resource_metrics.py +1 -0
- blaxel/core/client/models/revision_configuration.py +9 -0
- blaxel/core/client/models/runtime.py +1 -0
- blaxel/core/client/models/sandbox.py +1 -0
- blaxel/core/client/models/sandbox_definition.py +1 -0
- blaxel/core/client/models/sandbox_lifecycle.py +1 -0
- blaxel/core/client/models/sandbox_spec.py +1 -24
- blaxel/core/client/models/serverless_config.py +1 -0
- blaxel/core/client/models/start_sandbox.py +1 -0
- blaxel/core/client/models/stop_sandbox.py +1 -0
- blaxel/core/client/models/store_agent.py +1 -0
- blaxel/core/client/models/store_configuration.py +1 -0
- blaxel/core/client/models/template.py +1 -0
- blaxel/core/client/models/time_to_first_token_over_time_metrics.py +1 -0
- blaxel/core/client/models/token_rate_metrics.py +1 -0
- blaxel/core/client/models/trigger.py +10 -0
- blaxel/core/client/models/trigger_configuration.py +28 -0
- blaxel/core/client/models/volume.py +1 -0
- blaxel/core/client/models/volume_template.py +1 -0
- blaxel/core/client/models/websocket_channel.py +9 -0
- blaxel/core/client/models/workspace.py +1 -0
- blaxel/core/client/response_interceptor.py +0 -1
- blaxel/core/common/__init__.py +10 -0
- blaxel/core/common/autoload.py +5 -4
- blaxel/core/common/settings.py +29 -0
- blaxel/core/common/webhook.py +187 -0
- blaxel/core/jobs/__init__.py +355 -8
- blaxel/core/sandbox/client/models/__init__.py +0 -16
- blaxel/core/sandbox/default/action.py +10 -27
- blaxel/core/sandbox/default/filesystem.py +52 -187
- blaxel/core/sandbox/default/interpreter.py +55 -62
- blaxel/core/sandbox/default/process.py +46 -66
- blaxel/core/sandbox/sync/filesystem.py +5 -2
- blaxel/googleadk/model.py +0 -1
- blaxel/livekit/model.py +0 -1
- {blaxel-0.2.26rc119.dist-info → blaxel-0.2.28.dist-info}/METADATA +2 -2
- {blaxel-0.2.26rc119.dist-info → blaxel-0.2.28.dist-info}/RECORD +94 -117
- blaxel/core/client/api/privateclusters/__init__.py +0 -0
- blaxel/core/client/api/privateclusters/delete_private_cluster.py +0 -152
- blaxel/core/client/api/privateclusters/get_private_cluster.py +0 -155
- blaxel/core/client/api/privateclusters/get_private_cluster_health.py +0 -97
- blaxel/core/client/api/privateclusters/list_private_clusters.py +0 -136
- blaxel/core/client/api/privateclusters/update_private_cluster.py +0 -152
- blaxel/core/client/api/privateclusters/update_private_cluster_health.py +0 -97
- blaxel/core/client/models/model_private_cluster.py +0 -79
- blaxel/core/client/models/private_cluster.py +0 -183
- blaxel/core/sandbox/client/api/filesystem/delete_filesystem_tree_path.py +0 -188
- blaxel/core/sandbox/client/api/filesystem/get_filesystem_content_search_path.py +0 -265
- blaxel/core/sandbox/client/api/filesystem/get_filesystem_find_path.py +0 -248
- blaxel/core/sandbox/client/api/filesystem/get_filesystem_search_path.py +0 -237
- blaxel/core/sandbox/client/api/filesystem/get_filesystem_tree_path.py +0 -197
- blaxel/core/sandbox/client/api/filesystem/put_filesystem_tree_path.py +0 -223
- blaxel/core/sandbox/client/api/websocket/__init__.py +0 -0
- blaxel/core/sandbox/client/api/websocket/get_ws.py +0 -81
- blaxel/core/sandbox/client/models/content_search_match.py +0 -98
- blaxel/core/sandbox/client/models/content_search_response.py +0 -97
- blaxel/core/sandbox/client/models/find_response.py +0 -88
- blaxel/core/sandbox/client/models/fuzzy_search_match.py +0 -78
- blaxel/core/sandbox/client/models/fuzzy_search_response.py +0 -88
- blaxel/core/sandbox/client/models/tree_request.py +0 -76
- blaxel/core/sandbox/client/models/tree_request_files.py +0 -49
- {blaxel-0.2.26rc119.dist-info → blaxel-0.2.28.dist-info}/WHEEL +0 -0
- {blaxel-0.2.26rc119.dist-info → blaxel-0.2.28.dist-info}/licenses/LICENSE +0 -0
blaxel/__init__.py
CHANGED
|
@@ -4,8 +4,8 @@ from .core.common.autoload import autoload
|
|
|
4
4
|
from .core.common.env import env
|
|
5
5
|
from .core.common.settings import settings
|
|
6
6
|
|
|
7
|
-
__version__ = "0.2.
|
|
8
|
-
__commit__ = "
|
|
7
|
+
__version__ = "0.2.28"
|
|
8
|
+
__commit__ = "a53662270aa3205b3eb563a4e41efc378999d612"
|
|
9
9
|
__sentry_dsn__ = "https://9711de13cd02b285ca4378c01de8dc30@o4508714045276160.ingest.us.sentry.io/4510461121462272"
|
|
10
10
|
__all__ = ["autoload", "settings", "env"]
|
|
11
11
|
|
blaxel/core/__init__.py
CHANGED
|
@@ -4,7 +4,13 @@ from .agents import BlAgent, bl_agent
|
|
|
4
4
|
from .authentication import BlaxelAuth, auth, get_credentials
|
|
5
5
|
from .cache import find_from_cache
|
|
6
6
|
from .client.client import client
|
|
7
|
-
from .common import
|
|
7
|
+
from .common import (
|
|
8
|
+
autoload,
|
|
9
|
+
env,
|
|
10
|
+
settings,
|
|
11
|
+
verify_webhook_from_request,
|
|
12
|
+
verify_webhook_signature,
|
|
13
|
+
)
|
|
8
14
|
from .jobs import BlJobWrapper
|
|
9
15
|
from .mcp import BlaxelMcpServerTransport, websocket_client
|
|
10
16
|
from .models import BLModel, bl_model
|
|
@@ -60,4 +66,6 @@ __all__ = [
|
|
|
60
66
|
"websocket_client",
|
|
61
67
|
"VolumeInstance",
|
|
62
68
|
"VolumeCreateConfiguration",
|
|
69
|
+
"verify_webhook_signature",
|
|
70
|
+
"verify_webhook_from_request",
|
|
63
71
|
]
|
blaxel/core/client/api/{privateclusters/create_private_cluster.py → images/cleanup_images.py}
RENAMED
|
@@ -1,41 +1,35 @@
|
|
|
1
1
|
from http import HTTPStatus
|
|
2
|
-
from typing import Any, Union
|
|
2
|
+
from typing import Any, Union
|
|
3
3
|
|
|
4
4
|
import httpx
|
|
5
5
|
|
|
6
6
|
from ... import errors
|
|
7
7
|
from ...client import Client
|
|
8
|
-
from ...models.
|
|
8
|
+
from ...models.cleanup_images_response_200 import CleanupImagesResponse200
|
|
9
9
|
from ...types import Response
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
def _get_kwargs() -> dict[str, Any]:
|
|
13
13
|
_kwargs: dict[str, Any] = {
|
|
14
|
-
"method": "
|
|
15
|
-
"url": "/
|
|
14
|
+
"method": "delete",
|
|
15
|
+
"url": "/images",
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
return _kwargs
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
def _parse_response(*, client: Client, response: httpx.Response) ->
|
|
21
|
+
def _parse_response(*, client: Client, response: httpx.Response) -> CleanupImagesResponse200 | None:
|
|
22
22
|
if response.status_code == 200:
|
|
23
|
-
response_200 =
|
|
23
|
+
response_200 = CleanupImagesResponse200.from_dict(response.json())
|
|
24
24
|
|
|
25
25
|
return response_200
|
|
26
|
-
if response.status_code == 401:
|
|
27
|
-
response_401 = cast(Any, None)
|
|
28
|
-
return response_401
|
|
29
|
-
if response.status_code == 403:
|
|
30
|
-
response_403 = cast(Any, None)
|
|
31
|
-
return response_403
|
|
32
26
|
if client.raise_on_unexpected_status:
|
|
33
27
|
raise errors.UnexpectedStatus(response.status_code, response.content)
|
|
34
28
|
else:
|
|
35
29
|
return None
|
|
36
30
|
|
|
37
31
|
|
|
38
|
-
def _build_response(*, client: Client, response: httpx.Response) -> Response[
|
|
32
|
+
def _build_response(*, client: Client, response: httpx.Response) -> Response[CleanupImagesResponse200]:
|
|
39
33
|
return Response(
|
|
40
34
|
status_code=HTTPStatus(response.status_code),
|
|
41
35
|
content=response.content,
|
|
@@ -47,15 +41,18 @@ def _build_response(*, client: Client, response: httpx.Response) -> Response[Uni
|
|
|
47
41
|
def sync_detailed(
|
|
48
42
|
*,
|
|
49
43
|
client: Union[Client],
|
|
50
|
-
) -> Response[
|
|
51
|
-
"""
|
|
44
|
+
) -> Response[CleanupImagesResponse200]:
|
|
45
|
+
"""Cleanup unused images
|
|
46
|
+
|
|
47
|
+
Deletes all unused images in the workspace. Only removes images that are not currently being used by
|
|
48
|
+
any agents, functions, sandboxes, or jobs.
|
|
52
49
|
|
|
53
50
|
Raises:
|
|
54
51
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
55
52
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
56
53
|
|
|
57
54
|
Returns:
|
|
58
|
-
Response[
|
|
55
|
+
Response[CleanupImagesResponse200]
|
|
59
56
|
"""
|
|
60
57
|
|
|
61
58
|
kwargs = _get_kwargs()
|
|
@@ -70,15 +67,18 @@ def sync_detailed(
|
|
|
70
67
|
def sync(
|
|
71
68
|
*,
|
|
72
69
|
client: Union[Client],
|
|
73
|
-
) ->
|
|
74
|
-
"""
|
|
70
|
+
) -> CleanupImagesResponse200 | None:
|
|
71
|
+
"""Cleanup unused images
|
|
72
|
+
|
|
73
|
+
Deletes all unused images in the workspace. Only removes images that are not currently being used by
|
|
74
|
+
any agents, functions, sandboxes, or jobs.
|
|
75
75
|
|
|
76
76
|
Raises:
|
|
77
77
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
78
78
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
79
79
|
|
|
80
80
|
Returns:
|
|
81
|
-
|
|
81
|
+
CleanupImagesResponse200
|
|
82
82
|
"""
|
|
83
83
|
|
|
84
84
|
return sync_detailed(
|
|
@@ -89,15 +89,18 @@ def sync(
|
|
|
89
89
|
async def asyncio_detailed(
|
|
90
90
|
*,
|
|
91
91
|
client: Union[Client],
|
|
92
|
-
) -> Response[
|
|
93
|
-
"""
|
|
92
|
+
) -> Response[CleanupImagesResponse200]:
|
|
93
|
+
"""Cleanup unused images
|
|
94
|
+
|
|
95
|
+
Deletes all unused images in the workspace. Only removes images that are not currently being used by
|
|
96
|
+
any agents, functions, sandboxes, or jobs.
|
|
94
97
|
|
|
95
98
|
Raises:
|
|
96
99
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
97
100
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
98
101
|
|
|
99
102
|
Returns:
|
|
100
|
-
Response[
|
|
103
|
+
Response[CleanupImagesResponse200]
|
|
101
104
|
"""
|
|
102
105
|
|
|
103
106
|
kwargs = _get_kwargs()
|
|
@@ -110,15 +113,18 @@ async def asyncio_detailed(
|
|
|
110
113
|
async def asyncio(
|
|
111
114
|
*,
|
|
112
115
|
client: Union[Client],
|
|
113
|
-
) ->
|
|
114
|
-
"""
|
|
116
|
+
) -> CleanupImagesResponse200 | None:
|
|
117
|
+
"""Cleanup unused images
|
|
118
|
+
|
|
119
|
+
Deletes all unused images in the workspace. Only removes images that are not currently being used by
|
|
120
|
+
any agents, functions, sandboxes, or jobs.
|
|
115
121
|
|
|
116
122
|
Raises:
|
|
117
123
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
118
124
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
119
125
|
|
|
120
126
|
Returns:
|
|
121
|
-
|
|
127
|
+
CleanupImagesResponse200
|
|
122
128
|
"""
|
|
123
129
|
|
|
124
130
|
return (
|
|
@@ -6,6 +6,7 @@ from .agent_spec import AgentSpec
|
|
|
6
6
|
from .api_key import ApiKey
|
|
7
7
|
from .billable_time_metric import BillableTimeMetric
|
|
8
8
|
from .check_workspace_availability_body import CheckWorkspaceAvailabilityBody
|
|
9
|
+
from .cleanup_images_response_200 import CleanupImagesResponse200
|
|
9
10
|
from .configuration import Configuration
|
|
10
11
|
from .continent import Continent
|
|
11
12
|
from .core_event import CoreEvent
|
|
@@ -96,7 +97,6 @@ from .metrics_models import MetricsModels
|
|
|
96
97
|
from .metrics_request_total_per_code import MetricsRequestTotalPerCode
|
|
97
98
|
from .metrics_rps_per_code import MetricsRpsPerCode
|
|
98
99
|
from .model import Model
|
|
99
|
-
from .model_private_cluster import ModelPrivateCluster
|
|
100
100
|
from .model_spec import ModelSpec
|
|
101
101
|
from .o_auth import OAuth
|
|
102
102
|
from .owner_fields import OwnerFields
|
|
@@ -120,7 +120,6 @@ from .preview_spec_response_headers import PreviewSpecResponseHeaders
|
|
|
120
120
|
from .preview_token import PreviewToken
|
|
121
121
|
from .preview_token_metadata import PreviewTokenMetadata
|
|
122
122
|
from .preview_token_spec import PreviewTokenSpec
|
|
123
|
-
from .private_cluster import PrivateCluster
|
|
124
123
|
from .private_location import PrivateLocation
|
|
125
124
|
from .public_ip import PublicIp
|
|
126
125
|
from .public_ips import PublicIps
|
|
@@ -206,6 +205,7 @@ __all__ = (
|
|
|
206
205
|
"ApiKey",
|
|
207
206
|
"BillableTimeMetric",
|
|
208
207
|
"CheckWorkspaceAvailabilityBody",
|
|
208
|
+
"CleanupImagesResponse200",
|
|
209
209
|
"Configuration",
|
|
210
210
|
"Continent",
|
|
211
211
|
"CoreEvent",
|
|
@@ -294,7 +294,6 @@ __all__ = (
|
|
|
294
294
|
"MetricsRequestTotalPerCode",
|
|
295
295
|
"MetricsRpsPerCode",
|
|
296
296
|
"Model",
|
|
297
|
-
"ModelPrivateCluster",
|
|
298
297
|
"ModelSpec",
|
|
299
298
|
"OAuth",
|
|
300
299
|
"OwnerFields",
|
|
@@ -318,7 +317,6 @@ __all__ = (
|
|
|
318
317
|
"PreviewToken",
|
|
319
318
|
"PreviewTokenMetadata",
|
|
320
319
|
"PreviewTokenSpec",
|
|
321
|
-
"PrivateCluster",
|
|
322
320
|
"PrivateLocation",
|
|
323
321
|
"PublicIp",
|
|
324
322
|
"PublicIps",
|
|
@@ -8,7 +8,6 @@ from ..types import UNSET, Unset
|
|
|
8
8
|
if TYPE_CHECKING:
|
|
9
9
|
from ..models.core_spec_configurations import CoreSpecConfigurations
|
|
10
10
|
from ..models.flavor import Flavor
|
|
11
|
-
from ..models.model_private_cluster import ModelPrivateCluster
|
|
12
11
|
from ..models.repository import Repository
|
|
13
12
|
from ..models.revision_configuration import RevisionConfiguration
|
|
14
13
|
from ..models.runtime import Runtime
|
|
@@ -28,7 +27,6 @@ class AgentSpec:
|
|
|
28
27
|
flavors (Union[Unset, list['Flavor']]): Types of hardware available for deployments
|
|
29
28
|
integration_connections (Union[Unset, list[str]]):
|
|
30
29
|
policies (Union[Unset, list[str]]):
|
|
31
|
-
private_clusters (Union[Unset, ModelPrivateCluster]): Private cluster where the model deployment is deployed
|
|
32
30
|
revision (Union[Unset, RevisionConfiguration]): Revision configuration
|
|
33
31
|
runtime (Union[Unset, Runtime]): Set of configurations for a deployment
|
|
34
32
|
sandbox (Union[Unset, bool]): Sandbox mode
|
|
@@ -42,7 +40,6 @@ class AgentSpec:
|
|
|
42
40
|
flavors: Union[Unset, list["Flavor"]] = UNSET
|
|
43
41
|
integration_connections: Union[Unset, list[str]] = UNSET
|
|
44
42
|
policies: Union[Unset, list[str]] = UNSET
|
|
45
|
-
private_clusters: Union[Unset, "ModelPrivateCluster"] = UNSET
|
|
46
43
|
revision: Union[Unset, "RevisionConfiguration"] = UNSET
|
|
47
44
|
runtime: Union[Unset, "Runtime"] = UNSET
|
|
48
45
|
sandbox: Union[Unset, bool] = UNSET
|
|
@@ -52,6 +49,7 @@ class AgentSpec:
|
|
|
52
49
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
53
50
|
|
|
54
51
|
def to_dict(self) -> dict[str, Any]:
|
|
52
|
+
|
|
55
53
|
configurations: Union[Unset, dict[str, Any]] = UNSET
|
|
56
54
|
if (
|
|
57
55
|
self.configurations
|
|
@@ -82,16 +80,6 @@ class AgentSpec:
|
|
|
82
80
|
if not isinstance(self.policies, Unset):
|
|
83
81
|
policies = self.policies
|
|
84
82
|
|
|
85
|
-
private_clusters: Union[Unset, dict[str, Any]] = UNSET
|
|
86
|
-
if (
|
|
87
|
-
self.private_clusters
|
|
88
|
-
and not isinstance(self.private_clusters, Unset)
|
|
89
|
-
and not isinstance(self.private_clusters, dict)
|
|
90
|
-
):
|
|
91
|
-
private_clusters = self.private_clusters.to_dict()
|
|
92
|
-
elif self.private_clusters and isinstance(self.private_clusters, dict):
|
|
93
|
-
private_clusters = self.private_clusters
|
|
94
|
-
|
|
95
83
|
revision: Union[Unset, dict[str, Any]] = UNSET
|
|
96
84
|
if self.revision and not isinstance(self.revision, Unset) and not isinstance(self.revision, dict):
|
|
97
85
|
revision = self.revision.to_dict()
|
|
@@ -137,8 +125,6 @@ class AgentSpec:
|
|
|
137
125
|
field_dict["integrationConnections"] = integration_connections
|
|
138
126
|
if policies is not UNSET:
|
|
139
127
|
field_dict["policies"] = policies
|
|
140
|
-
if private_clusters is not UNSET:
|
|
141
|
-
field_dict["privateClusters"] = private_clusters
|
|
142
128
|
if revision is not UNSET:
|
|
143
129
|
field_dict["revision"] = revision
|
|
144
130
|
if runtime is not UNSET:
|
|
@@ -158,7 +144,6 @@ class AgentSpec:
|
|
|
158
144
|
def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T:
|
|
159
145
|
from ..models.core_spec_configurations import CoreSpecConfigurations
|
|
160
146
|
from ..models.flavor import Flavor
|
|
161
|
-
from ..models.model_private_cluster import ModelPrivateCluster
|
|
162
147
|
from ..models.repository import Repository
|
|
163
148
|
from ..models.revision_configuration import RevisionConfiguration
|
|
164
149
|
from ..models.runtime import Runtime
|
|
@@ -187,13 +172,6 @@ class AgentSpec:
|
|
|
187
172
|
|
|
188
173
|
policies = cast(list[str], d.pop("policies", UNSET))
|
|
189
174
|
|
|
190
|
-
_private_clusters = d.pop("privateClusters", UNSET)
|
|
191
|
-
private_clusters: Union[Unset, ModelPrivateCluster]
|
|
192
|
-
if isinstance(_private_clusters, Unset):
|
|
193
|
-
private_clusters = UNSET
|
|
194
|
-
else:
|
|
195
|
-
private_clusters = ModelPrivateCluster.from_dict(_private_clusters)
|
|
196
|
-
|
|
197
175
|
_revision = d.pop("revision", UNSET)
|
|
198
176
|
revision: Union[Unset, RevisionConfiguration]
|
|
199
177
|
if isinstance(_revision, Unset):
|
|
@@ -232,7 +210,6 @@ class AgentSpec:
|
|
|
232
210
|
flavors=flavors,
|
|
233
211
|
integration_connections=integration_connections,
|
|
234
212
|
policies=policies,
|
|
235
|
-
private_clusters=private_clusters,
|
|
236
213
|
revision=revision,
|
|
237
214
|
runtime=runtime,
|
|
238
215
|
sandbox=sandbox,
|
|
@@ -26,6 +26,7 @@ class BillableTimeMetric:
|
|
|
26
26
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
27
27
|
|
|
28
28
|
def to_dict(self) -> dict[str, Any]:
|
|
29
|
+
|
|
29
30
|
billable_time: Union[Unset, list[dict[str, Any]]] = UNSET
|
|
30
31
|
if not isinstance(self.billable_time, Unset):
|
|
31
32
|
billable_time = []
|
blaxel/core/{sandbox/client/models/find_match.py → client/models/cleanup_images_response_200.py}
RENAMED
|
@@ -5,33 +5,33 @@ from attrs import field as _attrs_field
|
|
|
5
5
|
|
|
6
6
|
from ..types import UNSET, Unset
|
|
7
7
|
|
|
8
|
-
T = TypeVar("T", bound="
|
|
8
|
+
T = TypeVar("T", bound="CleanupImagesResponse200")
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
@_attrs_define
|
|
12
|
-
class
|
|
12
|
+
class CleanupImagesResponse200:
|
|
13
13
|
"""
|
|
14
14
|
Attributes:
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
deleted (Union[Unset, int]): Number of images deleted
|
|
16
|
+
message (Union[Unset, str]): Result message
|
|
17
17
|
"""
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
deleted: Union[Unset, int] = UNSET
|
|
20
|
+
message: Union[Unset, str] = UNSET
|
|
21
21
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
22
22
|
|
|
23
23
|
def to_dict(self) -> dict[str, Any]:
|
|
24
|
-
|
|
24
|
+
deleted = self.deleted
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
message = self.message
|
|
27
27
|
|
|
28
28
|
field_dict: dict[str, Any] = {}
|
|
29
29
|
field_dict.update(self.additional_properties)
|
|
30
30
|
field_dict.update({})
|
|
31
|
-
if
|
|
32
|
-
field_dict["
|
|
33
|
-
if
|
|
34
|
-
field_dict["
|
|
31
|
+
if deleted is not UNSET:
|
|
32
|
+
field_dict["deleted"] = deleted
|
|
33
|
+
if message is not UNSET:
|
|
34
|
+
field_dict["message"] = message
|
|
35
35
|
|
|
36
36
|
return field_dict
|
|
37
37
|
|
|
@@ -40,17 +40,17 @@ class FindMatch:
|
|
|
40
40
|
if not src_dict:
|
|
41
41
|
return None
|
|
42
42
|
d = src_dict.copy()
|
|
43
|
-
|
|
43
|
+
deleted = d.pop("deleted", UNSET)
|
|
44
44
|
|
|
45
|
-
|
|
45
|
+
message = d.pop("message", UNSET)
|
|
46
46
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
cleanup_images_response_200 = cls(
|
|
48
|
+
deleted=deleted,
|
|
49
|
+
message=message,
|
|
50
50
|
)
|
|
51
51
|
|
|
52
|
-
|
|
53
|
-
return
|
|
52
|
+
cleanup_images_response_200.additional_properties = d
|
|
53
|
+
return cleanup_images_response_200
|
|
54
54
|
|
|
55
55
|
@property
|
|
56
56
|
def additional_keys(self) -> list[str]:
|
|
@@ -33,6 +33,7 @@ class Configuration:
|
|
|
33
33
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
34
34
|
|
|
35
35
|
def to_dict(self) -> dict[str, Any]:
|
|
36
|
+
|
|
36
37
|
continents: Union[Unset, list[dict[str, Any]]] = UNSET
|
|
37
38
|
if not isinstance(self.continents, Unset):
|
|
38
39
|
continents = []
|
|
@@ -13,6 +13,7 @@ class CoreEvent:
|
|
|
13
13
|
"""Core event
|
|
14
14
|
|
|
15
15
|
Attributes:
|
|
16
|
+
canary_revision (Union[Unset, str]): Canary revisionID link to the event
|
|
16
17
|
message (Union[Unset, str]): Event message
|
|
17
18
|
revision (Union[Unset, str]): RevisionID link to the event
|
|
18
19
|
status (Union[Unset, str]): Event status
|
|
@@ -20,6 +21,7 @@ class CoreEvent:
|
|
|
20
21
|
type_ (Union[Unset, str]): Event type
|
|
21
22
|
"""
|
|
22
23
|
|
|
24
|
+
canary_revision: Union[Unset, str] = UNSET
|
|
23
25
|
message: Union[Unset, str] = UNSET
|
|
24
26
|
revision: Union[Unset, str] = UNSET
|
|
25
27
|
status: Union[Unset, str] = UNSET
|
|
@@ -28,6 +30,8 @@ class CoreEvent:
|
|
|
28
30
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
29
31
|
|
|
30
32
|
def to_dict(self) -> dict[str, Any]:
|
|
33
|
+
canary_revision = self.canary_revision
|
|
34
|
+
|
|
31
35
|
message = self.message
|
|
32
36
|
|
|
33
37
|
revision = self.revision
|
|
@@ -41,6 +45,8 @@ class CoreEvent:
|
|
|
41
45
|
field_dict: dict[str, Any] = {}
|
|
42
46
|
field_dict.update(self.additional_properties)
|
|
43
47
|
field_dict.update({})
|
|
48
|
+
if canary_revision is not UNSET:
|
|
49
|
+
field_dict["canaryRevision"] = canary_revision
|
|
44
50
|
if message is not UNSET:
|
|
45
51
|
field_dict["message"] = message
|
|
46
52
|
if revision is not UNSET:
|
|
@@ -59,6 +65,8 @@ class CoreEvent:
|
|
|
59
65
|
if not src_dict:
|
|
60
66
|
return None
|
|
61
67
|
d = src_dict.copy()
|
|
68
|
+
canary_revision = d.pop("canaryRevision", UNSET)
|
|
69
|
+
|
|
62
70
|
message = d.pop("message", UNSET)
|
|
63
71
|
|
|
64
72
|
revision = d.pop("revision", UNSET)
|
|
@@ -70,6 +78,7 @@ class CoreEvent:
|
|
|
70
78
|
type_ = d.pop("type", UNSET)
|
|
71
79
|
|
|
72
80
|
core_event = cls(
|
|
81
|
+
canary_revision=canary_revision,
|
|
73
82
|
message=message,
|
|
74
83
|
revision=revision,
|
|
75
84
|
status=status,
|
|
@@ -8,7 +8,6 @@ from ..types import UNSET, Unset
|
|
|
8
8
|
if TYPE_CHECKING:
|
|
9
9
|
from ..models.core_spec_configurations import CoreSpecConfigurations
|
|
10
10
|
from ..models.flavor import Flavor
|
|
11
|
-
from ..models.model_private_cluster import ModelPrivateCluster
|
|
12
11
|
from ..models.revision_configuration import RevisionConfiguration
|
|
13
12
|
from ..models.runtime import Runtime
|
|
14
13
|
|
|
@@ -26,7 +25,6 @@ class CoreSpec:
|
|
|
26
25
|
flavors (Union[Unset, list['Flavor']]): Types of hardware available for deployments
|
|
27
26
|
integration_connections (Union[Unset, list[str]]):
|
|
28
27
|
policies (Union[Unset, list[str]]):
|
|
29
|
-
private_clusters (Union[Unset, ModelPrivateCluster]): Private cluster where the model deployment is deployed
|
|
30
28
|
revision (Union[Unset, RevisionConfiguration]): Revision configuration
|
|
31
29
|
runtime (Union[Unset, Runtime]): Set of configurations for a deployment
|
|
32
30
|
sandbox (Union[Unset, bool]): Sandbox mode
|
|
@@ -37,13 +35,13 @@ class CoreSpec:
|
|
|
37
35
|
flavors: Union[Unset, list["Flavor"]] = UNSET
|
|
38
36
|
integration_connections: Union[Unset, list[str]] = UNSET
|
|
39
37
|
policies: Union[Unset, list[str]] = UNSET
|
|
40
|
-
private_clusters: Union[Unset, "ModelPrivateCluster"] = UNSET
|
|
41
38
|
revision: Union[Unset, "RevisionConfiguration"] = UNSET
|
|
42
39
|
runtime: Union[Unset, "Runtime"] = UNSET
|
|
43
40
|
sandbox: Union[Unset, bool] = UNSET
|
|
44
41
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
45
42
|
|
|
46
43
|
def to_dict(self) -> dict[str, Any]:
|
|
44
|
+
|
|
47
45
|
configurations: Union[Unset, dict[str, Any]] = UNSET
|
|
48
46
|
if (
|
|
49
47
|
self.configurations
|
|
@@ -74,16 +72,6 @@ class CoreSpec:
|
|
|
74
72
|
if not isinstance(self.policies, Unset):
|
|
75
73
|
policies = self.policies
|
|
76
74
|
|
|
77
|
-
private_clusters: Union[Unset, dict[str, Any]] = UNSET
|
|
78
|
-
if (
|
|
79
|
-
self.private_clusters
|
|
80
|
-
and not isinstance(self.private_clusters, Unset)
|
|
81
|
-
and not isinstance(self.private_clusters, dict)
|
|
82
|
-
):
|
|
83
|
-
private_clusters = self.private_clusters.to_dict()
|
|
84
|
-
elif self.private_clusters and isinstance(self.private_clusters, dict):
|
|
85
|
-
private_clusters = self.private_clusters
|
|
86
|
-
|
|
87
75
|
revision: Union[Unset, dict[str, Any]] = UNSET
|
|
88
76
|
if self.revision and not isinstance(self.revision, Unset) and not isinstance(self.revision, dict):
|
|
89
77
|
revision = self.revision.to_dict()
|
|
@@ -111,8 +99,6 @@ class CoreSpec:
|
|
|
111
99
|
field_dict["integrationConnections"] = integration_connections
|
|
112
100
|
if policies is not UNSET:
|
|
113
101
|
field_dict["policies"] = policies
|
|
114
|
-
if private_clusters is not UNSET:
|
|
115
|
-
field_dict["privateClusters"] = private_clusters
|
|
116
102
|
if revision is not UNSET:
|
|
117
103
|
field_dict["revision"] = revision
|
|
118
104
|
if runtime is not UNSET:
|
|
@@ -126,7 +112,6 @@ class CoreSpec:
|
|
|
126
112
|
def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T:
|
|
127
113
|
from ..models.core_spec_configurations import CoreSpecConfigurations
|
|
128
114
|
from ..models.flavor import Flavor
|
|
129
|
-
from ..models.model_private_cluster import ModelPrivateCluster
|
|
130
115
|
from ..models.revision_configuration import RevisionConfiguration
|
|
131
116
|
from ..models.runtime import Runtime
|
|
132
117
|
|
|
@@ -153,13 +138,6 @@ class CoreSpec:
|
|
|
153
138
|
|
|
154
139
|
policies = cast(list[str], d.pop("policies", UNSET))
|
|
155
140
|
|
|
156
|
-
_private_clusters = d.pop("privateClusters", UNSET)
|
|
157
|
-
private_clusters: Union[Unset, ModelPrivateCluster]
|
|
158
|
-
if isinstance(_private_clusters, Unset):
|
|
159
|
-
private_clusters = UNSET
|
|
160
|
-
else:
|
|
161
|
-
private_clusters = ModelPrivateCluster.from_dict(_private_clusters)
|
|
162
|
-
|
|
163
141
|
_revision = d.pop("revision", UNSET)
|
|
164
142
|
revision: Union[Unset, RevisionConfiguration]
|
|
165
143
|
if isinstance(_revision, Unset):
|
|
@@ -182,7 +160,6 @@ class CoreSpec:
|
|
|
182
160
|
flavors=flavors,
|
|
183
161
|
integration_connections=integration_connections,
|
|
184
162
|
policies=policies,
|
|
185
|
-
private_clusters=private_clusters,
|
|
186
163
|
revision=revision,
|
|
187
164
|
runtime=runtime,
|
|
188
165
|
sandbox=sandbox,
|
|
@@ -25,6 +25,7 @@ class CoreSpecConfigurations:
|
|
|
25
25
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
26
26
|
|
|
27
27
|
def to_dict(self) -> dict[str, Any]:
|
|
28
|
+
|
|
28
29
|
key: Union[Unset, dict[str, Any]] = UNSET
|
|
29
30
|
if self.key and not isinstance(self.key, Unset) and not isinstance(self.key, dict):
|
|
30
31
|
key = self.key.to_dict()
|
|
@@ -30,6 +30,7 @@ class CustomDomain:
|
|
|
30
30
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
31
31
|
|
|
32
32
|
def to_dict(self) -> dict[str, Any]:
|
|
33
|
+
|
|
33
34
|
metadata: Union[Unset, dict[str, Any]] = UNSET
|
|
34
35
|
if self.metadata and not isinstance(self.metadata, Unset) and not isinstance(self.metadata, dict):
|
|
35
36
|
metadata = self.metadata.to_dict()
|
|
@@ -30,6 +30,7 @@ class Form:
|
|
|
30
30
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
31
31
|
|
|
32
32
|
def to_dict(self) -> dict[str, Any]:
|
|
33
|
+
|
|
33
34
|
config: Union[Unset, dict[str, Any]] = UNSET
|
|
34
35
|
if self.config and not isinstance(self.config, Unset) and not isinstance(self.config, dict):
|
|
35
36
|
config = self.config.to_dict()
|