dstack 0.19.26__py3-none-any.whl → 0.19.27__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 dstack might be problematic. Click here for more details.
- dstack/_internal/cli/commands/init.py +2 -2
- dstack/_internal/cli/services/configurators/run.py +114 -16
- dstack/_internal/cli/services/repos.py +1 -18
- dstack/_internal/core/backends/amddevcloud/__init__.py +1 -0
- dstack/_internal/core/backends/amddevcloud/backend.py +16 -0
- dstack/_internal/core/backends/amddevcloud/compute.py +5 -0
- dstack/_internal/core/backends/amddevcloud/configurator.py +29 -0
- dstack/_internal/core/backends/aws/compute.py +6 -1
- dstack/_internal/core/backends/base/compute.py +33 -5
- dstack/_internal/core/backends/base/offers.py +2 -0
- dstack/_internal/core/backends/configurators.py +15 -0
- dstack/_internal/core/backends/digitalocean/__init__.py +1 -0
- dstack/_internal/core/backends/digitalocean/backend.py +16 -0
- dstack/_internal/core/backends/digitalocean/compute.py +5 -0
- dstack/_internal/core/backends/digitalocean/configurator.py +31 -0
- dstack/_internal/core/backends/digitalocean_base/__init__.py +1 -0
- dstack/_internal/core/backends/digitalocean_base/api_client.py +104 -0
- dstack/_internal/core/backends/digitalocean_base/backend.py +5 -0
- dstack/_internal/core/backends/digitalocean_base/compute.py +173 -0
- dstack/_internal/core/backends/digitalocean_base/configurator.py +57 -0
- dstack/_internal/core/backends/digitalocean_base/models.py +43 -0
- dstack/_internal/core/backends/gcp/compute.py +32 -8
- dstack/_internal/core/backends/hotaisle/api_client.py +25 -33
- dstack/_internal/core/backends/hotaisle/compute.py +1 -6
- dstack/_internal/core/backends/models.py +7 -0
- dstack/_internal/core/backends/nebius/compute.py +0 -7
- dstack/_internal/core/backends/oci/compute.py +4 -5
- dstack/_internal/core/backends/vultr/compute.py +1 -5
- dstack/_internal/core/compatibility/fleets.py +5 -0
- dstack/_internal/core/compatibility/runs.py +8 -1
- dstack/_internal/core/models/backends/base.py +5 -1
- dstack/_internal/core/models/configurations.py +21 -7
- dstack/_internal/core/models/files.py +1 -1
- dstack/_internal/core/models/fleets.py +75 -2
- dstack/_internal/core/models/runs.py +24 -5
- dstack/_internal/core/services/repos.py +85 -80
- dstack/_internal/server/background/tasks/process_fleets.py +109 -13
- dstack/_internal/server/background/tasks/process_instances.py +12 -71
- dstack/_internal/server/background/tasks/process_running_jobs.py +2 -0
- dstack/_internal/server/background/tasks/process_runs.py +2 -0
- dstack/_internal/server/background/tasks/process_submitted_jobs.py +18 -6
- dstack/_internal/server/migrations/versions/2498ab323443_add_fleetmodel_consolidation_attempt_.py +44 -0
- dstack/_internal/server/models.py +5 -2
- dstack/_internal/server/schemas/runner.py +1 -0
- dstack/_internal/server/services/fleets.py +23 -25
- dstack/_internal/server/services/instances.py +3 -3
- dstack/_internal/server/services/jobs/configurators/base.py +46 -6
- dstack/_internal/server/services/jobs/configurators/dev.py +4 -4
- dstack/_internal/server/services/jobs/configurators/extensions/cursor.py +3 -5
- dstack/_internal/server/services/jobs/configurators/extensions/vscode.py +4 -6
- dstack/_internal/server/services/jobs/configurators/service.py +0 -3
- dstack/_internal/server/services/jobs/configurators/task.py +0 -3
- dstack/_internal/server/services/runs.py +16 -0
- dstack/_internal/server/statics/index.html +1 -1
- dstack/_internal/server/statics/{main-d151b300fcac3933213d.js → main-4eecc75fbe64067eb1bc.js} +1146 -899
- dstack/_internal/server/statics/{main-d151b300fcac3933213d.js.map → main-4eecc75fbe64067eb1bc.js.map} +1 -1
- dstack/_internal/server/statics/{main-aec4762350e34d6fbff9.css → main-56191c63d516fd0041c4.css} +1 -1
- dstack/_internal/server/testing/common.py +6 -3
- dstack/_internal/utils/path.py +8 -1
- dstack/_internal/utils/ssh.py +7 -0
- dstack/api/_public/repos.py +41 -6
- dstack/api/_public/runs.py +14 -1
- dstack/version.py +1 -1
- {dstack-0.19.26.dist-info → dstack-0.19.27.dist-info}/METADATA +2 -2
- {dstack-0.19.26.dist-info → dstack-0.19.27.dist-info}/RECORD +68 -53
- {dstack-0.19.26.dist-info → dstack-0.19.27.dist-info}/WHEEL +0 -0
- {dstack-0.19.26.dist-info → dstack-0.19.27.dist-info}/entry_points.txt +0 -0
- {dstack-0.19.26.dist-info → dstack-0.19.27.dist-info}/licenses/LICENSE.md +0 -0
|
@@ -28,6 +28,7 @@ from dstack._internal.core.models.configurations import (
|
|
|
28
28
|
from dstack._internal.core.models.envs import Env
|
|
29
29
|
from dstack._internal.core.models.fleets import (
|
|
30
30
|
FleetConfiguration,
|
|
31
|
+
FleetNodesSpec,
|
|
31
32
|
FleetSpec,
|
|
32
33
|
FleetStatus,
|
|
33
34
|
InstanceGroupPlacement,
|
|
@@ -60,7 +61,7 @@ from dstack._internal.core.models.profiles import (
|
|
|
60
61
|
)
|
|
61
62
|
from dstack._internal.core.models.repos.base import RepoType
|
|
62
63
|
from dstack._internal.core.models.repos.local import LocalRunRepoData
|
|
63
|
-
from dstack._internal.core.models.resources import CPUSpec, Memory,
|
|
64
|
+
from dstack._internal.core.models.resources import CPUSpec, Memory, ResourcesSpec
|
|
64
65
|
from dstack._internal.core.models.runs import (
|
|
65
66
|
JobProvisioningData,
|
|
66
67
|
JobRuntimeData,
|
|
@@ -271,7 +272,7 @@ def get_run_spec(
|
|
|
271
272
|
repo_id=repo_id,
|
|
272
273
|
repo_data=LocalRunRepoData(repo_dir="/"),
|
|
273
274
|
repo_code_hash=None,
|
|
274
|
-
working_dir=
|
|
275
|
+
working_dir=None,
|
|
275
276
|
configuration_path=configuration_path,
|
|
276
277
|
configuration=configuration or DevEnvironmentConfiguration(ide="vscode"),
|
|
277
278
|
profile=profile,
|
|
@@ -284,6 +285,7 @@ async def create_run(
|
|
|
284
285
|
project: ProjectModel,
|
|
285
286
|
repo: RepoModel,
|
|
286
287
|
user: UserModel,
|
|
288
|
+
fleet: Optional[FleetModel] = None,
|
|
287
289
|
run_name: str = "test-run",
|
|
288
290
|
status: RunStatus = RunStatus.SUBMITTED,
|
|
289
291
|
termination_reason: Optional[RunTerminationReason] = None,
|
|
@@ -309,6 +311,7 @@ async def create_run(
|
|
|
309
311
|
project_id=project.id,
|
|
310
312
|
repo_id=repo.id,
|
|
311
313
|
user_id=user.id,
|
|
314
|
+
fleet_id=fleet.id if fleet else None,
|
|
312
315
|
submitted_at=submitted_at,
|
|
313
316
|
run_name=run_name,
|
|
314
317
|
status=status,
|
|
@@ -579,7 +582,7 @@ def get_fleet_spec(conf: Optional[FleetConfiguration] = None) -> FleetSpec:
|
|
|
579
582
|
|
|
580
583
|
def get_fleet_configuration(
|
|
581
584
|
name: str = "test-fleet",
|
|
582
|
-
nodes:
|
|
585
|
+
nodes: FleetNodesSpec = FleetNodesSpec(min=1, target=1, max=1),
|
|
583
586
|
placement: Optional[InstanceGroupPlacement] = None,
|
|
584
587
|
) -> FleetConfiguration:
|
|
585
588
|
return FleetConfiguration(
|
dstack/_internal/utils/path.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import os
|
|
2
2
|
from dataclasses import dataclass
|
|
3
|
-
from pathlib import Path, PurePath
|
|
3
|
+
from pathlib import Path, PurePath, PurePosixPath
|
|
4
4
|
from typing import Union
|
|
5
5
|
|
|
6
6
|
PathLike = Union[str, os.PathLike]
|
|
@@ -48,3 +48,10 @@ def resolve_relative_path(path: PathLike) -> PurePath:
|
|
|
48
48
|
return normalize_path(path)
|
|
49
49
|
except ValueError:
|
|
50
50
|
raise ValueError("Path is outside of the repo")
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
def is_absolute_posix_path(path: PathLike) -> bool:
|
|
54
|
+
# Passing Windows path leads to undefined behavior
|
|
55
|
+
if str(path).startswith("~"):
|
|
56
|
+
return True
|
|
57
|
+
return PurePosixPath(path).is_absolute()
|
dstack/_internal/utils/ssh.py
CHANGED
|
@@ -50,6 +50,13 @@ def make_ssh_command_for_git(identity_file: PathLike) -> str:
|
|
|
50
50
|
)
|
|
51
51
|
|
|
52
52
|
|
|
53
|
+
def make_git_env(*, identity_file: Optional[PathLike] = None) -> dict[str, str]:
|
|
54
|
+
env: dict[str, str] = {"GIT_TERMINAL_PROMPT": "0"}
|
|
55
|
+
if identity_file is not None:
|
|
56
|
+
env["GIT_SSH_COMMAND"] = make_ssh_command_for_git(identity_file)
|
|
57
|
+
return env
|
|
58
|
+
|
|
59
|
+
|
|
53
60
|
def try_ssh_key_passphrase(identity_file: PathLike, passphrase: str = "") -> bool:
|
|
54
61
|
ssh_keygen = find_ssh_util("ssh-keygen")
|
|
55
62
|
if ssh_keygen is None:
|
dstack/api/_public/repos.py
CHANGED
|
@@ -1,15 +1,21 @@
|
|
|
1
1
|
from pathlib import Path
|
|
2
|
-
from typing import Optional, Union
|
|
2
|
+
from typing import Literal, Optional, Union, overload
|
|
3
3
|
|
|
4
4
|
from git import InvalidGitRepositoryError
|
|
5
5
|
|
|
6
6
|
from dstack._internal.core.errors import ConfigurationError, ResourceNotExistsError
|
|
7
|
-
from dstack._internal.core.models.repos import
|
|
7
|
+
from dstack._internal.core.models.repos import (
|
|
8
|
+
LocalRepo,
|
|
9
|
+
RemoteRepo,
|
|
10
|
+
RemoteRepoCreds,
|
|
11
|
+
RepoHead,
|
|
12
|
+
RepoHeadWithCreds,
|
|
13
|
+
)
|
|
8
14
|
from dstack._internal.core.models.repos.base import Repo, RepoType
|
|
9
15
|
from dstack._internal.core.services.configs import ConfigManager
|
|
10
16
|
from dstack._internal.core.services.repos import (
|
|
11
17
|
InvalidRepoCredentialsError,
|
|
12
|
-
|
|
18
|
+
get_repo_creds_and_default_branch,
|
|
13
19
|
load_repo,
|
|
14
20
|
)
|
|
15
21
|
from dstack._internal.utils.crypto import generate_rsa_key_pair
|
|
@@ -34,6 +40,7 @@ class RepoCollection:
|
|
|
34
40
|
repo: Repo,
|
|
35
41
|
git_identity_file: Optional[PathLike] = None,
|
|
36
42
|
oauth_token: Optional[str] = None,
|
|
43
|
+
creds: Optional[RemoteRepoCreds] = None,
|
|
37
44
|
):
|
|
38
45
|
"""
|
|
39
46
|
Initializes the repo and configures its credentials in the project.
|
|
@@ -65,12 +72,13 @@ class RepoCollection:
|
|
|
65
72
|
repo: The repo to initialize.
|
|
66
73
|
git_identity_file: The private SSH key path for accessing the remote repo.
|
|
67
74
|
oauth_token: The GitHub OAuth token to access the remote repo.
|
|
75
|
+
creds: Optional prepared repo credentials. If specified, both `git_identity_file`
|
|
76
|
+
and `oauth_token` are ignored.
|
|
68
77
|
"""
|
|
69
|
-
creds
|
|
70
|
-
if isinstance(repo, RemoteRepo):
|
|
78
|
+
if creds is None and isinstance(repo, RemoteRepo):
|
|
71
79
|
assert repo.repo_url is not None
|
|
72
80
|
try:
|
|
73
|
-
creds =
|
|
81
|
+
creds, _ = get_repo_creds_and_default_branch(
|
|
74
82
|
repo_url=repo.repo_url,
|
|
75
83
|
identity_file=git_identity_file,
|
|
76
84
|
oauth_token=oauth_token,
|
|
@@ -175,6 +183,33 @@ class RepoCollection:
|
|
|
175
183
|
# TODO: add an API method with the same logic returning a bool value?
|
|
176
184
|
return repo_head.repo_creds is not None
|
|
177
185
|
|
|
186
|
+
@overload
|
|
187
|
+
def get(self, repo_id: str, *, with_creds: Literal[False] = False) -> Optional[RepoHead]: ...
|
|
188
|
+
|
|
189
|
+
@overload
|
|
190
|
+
def get(self, repo_id: str, *, with_creds: Literal[True]) -> Optional[RepoHeadWithCreds]: ...
|
|
191
|
+
|
|
192
|
+
def get(
|
|
193
|
+
self, repo_id: str, *, with_creds: bool = False
|
|
194
|
+
) -> Optional[Union[RepoHead, RepoHeadWithCreds]]:
|
|
195
|
+
"""
|
|
196
|
+
Returns the repo by `repo_id`
|
|
197
|
+
|
|
198
|
+
Args:
|
|
199
|
+
repo_id: The repo ID.
|
|
200
|
+
with_creds: include repo credentials in the response.
|
|
201
|
+
|
|
202
|
+
Returns:
|
|
203
|
+
The repo or `None` if the repo is not found.
|
|
204
|
+
"""
|
|
205
|
+
method = self._api_client.repos.get
|
|
206
|
+
if with_creds:
|
|
207
|
+
method = self._api_client.repos.get_with_creds
|
|
208
|
+
try:
|
|
209
|
+
return method(self._project, repo_id)
|
|
210
|
+
except ResourceNotExistsError:
|
|
211
|
+
return None
|
|
212
|
+
|
|
178
213
|
|
|
179
214
|
def get_ssh_keypair(key_path: Optional[PathLike], dstack_key_path: Path) -> str:
|
|
180
215
|
"""Returns a path to the private key"""
|
dstack/api/_public/runs.py
CHANGED
|
@@ -433,6 +433,7 @@ class RunCollection:
|
|
|
433
433
|
repo: Optional[Repo] = None,
|
|
434
434
|
profile: Optional[Profile] = None,
|
|
435
435
|
configuration_path: Optional[str] = None,
|
|
436
|
+
repo_dir: Optional[str] = None,
|
|
436
437
|
) -> RunPlan:
|
|
437
438
|
"""
|
|
438
439
|
Get a run plan.
|
|
@@ -443,11 +444,17 @@ class RunCollection:
|
|
|
443
444
|
repo (Union[LocalRepo, RemoteRepo, VirtualRepo, None]):
|
|
444
445
|
The repo to use for the run. Pass `None` if repo is not needed.
|
|
445
446
|
profile: The profile to use for the run.
|
|
446
|
-
configuration_path: The path to the configuration file. Omit if the configuration
|
|
447
|
+
configuration_path: The path to the configuration file. Omit if the configuration
|
|
448
|
+
is not loaded from a file.
|
|
449
|
+
repo_dir: The path of the cloned repo inside the run container. If not set,
|
|
450
|
+
defaults first to the `repos[0].path` property of the configuration (for remote
|
|
451
|
+
repos only), then to `/workflow`.
|
|
447
452
|
|
|
448
453
|
Returns:
|
|
449
454
|
Run plan.
|
|
450
455
|
"""
|
|
456
|
+
# XXX: not using the LEGACY_REPO_DIR const in the docstring above, as the docs generator,
|
|
457
|
+
# apparently, doesn't support f-strings (f"""...""").
|
|
451
458
|
if repo is None:
|
|
452
459
|
repo = VirtualRepo()
|
|
453
460
|
repo_code_hash = None
|
|
@@ -455,11 +462,17 @@ class RunCollection:
|
|
|
455
462
|
with _prepare_code_file(repo) as (_, repo_code_hash):
|
|
456
463
|
pass
|
|
457
464
|
|
|
465
|
+
if repo_dir is None and configuration.repos:
|
|
466
|
+
repo_dir = configuration.repos[0].path
|
|
467
|
+
|
|
458
468
|
run_spec = RunSpec(
|
|
459
469
|
run_name=configuration.name,
|
|
460
470
|
repo_id=repo.repo_id,
|
|
461
471
|
repo_data=repo.run_repo_data,
|
|
462
472
|
repo_code_hash=repo_code_hash,
|
|
473
|
+
repo_dir=repo_dir,
|
|
474
|
+
# Server doesn't use this field since 0.19.27, but we still send it for compatibility
|
|
475
|
+
# with older servers
|
|
463
476
|
working_dir=configuration.working_dir,
|
|
464
477
|
configuration_path=configuration_path,
|
|
465
478
|
configuration=configuration,
|
dstack/version.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dstack
|
|
3
|
-
Version: 0.19.
|
|
3
|
+
Version: 0.19.27
|
|
4
4
|
Summary: dstack is an open-source orchestration engine for running AI workloads on any cloud or on-premises.
|
|
5
5
|
Project-URL: Homepage, https://dstack.ai
|
|
6
6
|
Project-URL: Source, https://github.com/dstackai/dstack
|
|
@@ -22,7 +22,7 @@ Requires-Dist: cryptography
|
|
|
22
22
|
Requires-Dist: cursor
|
|
23
23
|
Requires-Dist: filelock
|
|
24
24
|
Requires-Dist: gitpython
|
|
25
|
-
Requires-Dist: gpuhunt==0.1.
|
|
25
|
+
Requires-Dist: gpuhunt==0.1.8
|
|
26
26
|
Requires-Dist: ignore-python>=0.2.0
|
|
27
27
|
Requires-Dist: jsonschema
|
|
28
28
|
Requires-Dist: orjson
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
dstack/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
dstack/version.py,sha256=
|
|
2
|
+
dstack/version.py,sha256=JdmtCal_jEhc0A-R9g2AhaeYsnCZ6SBjx91NRhza2Fk,102
|
|
3
3
|
dstack/_internal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
dstack/_internal/compat.py,sha256=bF9U9fTMfL8UVhCouedoUSTYFl7UAOiU0WXrnRoByxw,40
|
|
5
5
|
dstack/_internal/settings.py,sha256=FYtd7tRk17Oc62Kl_3O8NuT5JHb8TKhLThl1TsfjjVs,1390
|
|
@@ -13,7 +13,7 @@ dstack/_internal/cli/commands/config.py,sha256=cpNCVCklQDW4vcdD9ovtJs6bcDIM1dULO
|
|
|
13
13
|
dstack/_internal/cli/commands/delete.py,sha256=D3CwQwOnu5mj0LT6Cs1y09YUT4JnVEWG6_U8MEbMBXs,1478
|
|
14
14
|
dstack/_internal/cli/commands/fleet.py,sha256=tJsYLCZrDJzno9Wfgo6ewWpGLaM7BbZ7qdtZ4FtYakA,4058
|
|
15
15
|
dstack/_internal/cli/commands/gateway.py,sha256=L7bcNrFzzw7w0cjbFszhH_u7dEAiK7Rf-XBDd4Ew6-Q,6135
|
|
16
|
-
dstack/_internal/cli/commands/init.py,sha256=
|
|
16
|
+
dstack/_internal/cli/commands/init.py,sha256=VEBOdhHuPKnKkiIv93vy-B-3sFD_X4JJtm1V1lDf3M0,4244
|
|
17
17
|
dstack/_internal/cli/commands/logs.py,sha256=IOiRIvC9vpNORMQSOGzVbcXfrWfTq7LAPPSD7E_iK9U,1558
|
|
18
18
|
dstack/_internal/cli/commands/metrics.py,sha256=T-kXQgARIfWj01ROwiw5te5HeeE2trsPHWetQqhL_qA,5892
|
|
19
19
|
dstack/_internal/cli/commands/offer.py,sha256=3TKsFug2RSKmh7A2aX3DH7-E22lPXnZayEwdjWRj-tk,6245
|
|
@@ -28,12 +28,12 @@ dstack/_internal/cli/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5N
|
|
|
28
28
|
dstack/_internal/cli/services/args.py,sha256=82rnGiYZfqMBIQh76bTXyvyXc85N_WDTTFppZJf8lic,755
|
|
29
29
|
dstack/_internal/cli/services/completion.py,sha256=gjR3i4SIm2AQHvSilOd3la5sWBxJ2GA6wwHGXVWu6z4,3188
|
|
30
30
|
dstack/_internal/cli/services/profile.py,sha256=TiNMP_0Xbx9cD22zc8dTHHNIsZeIpavWL41UlT_tGgE,5850
|
|
31
|
-
dstack/_internal/cli/services/repos.py,sha256=
|
|
31
|
+
dstack/_internal/cli/services/repos.py,sha256=wvb3nHI9yJ0fb-dWf2yihl6zdG1ZRVpKiC0CUz9qL7Y,2100
|
|
32
32
|
dstack/_internal/cli/services/configurators/__init__.py,sha256=AwbKV85_XH0V8IS8v2Zpgl8vnvVCLMLbMuPyvsZv3mQ,2971
|
|
33
33
|
dstack/_internal/cli/services/configurators/base.py,sha256=MuNQ6CxLK57WLG2h2qQ80W8FWm9GGAhv1__5ZdWcZWE,3337
|
|
34
34
|
dstack/_internal/cli/services/configurators/fleet.py,sha256=tdw4y92IyyPCwBoYP3mkTx8AqkS39mzmwWwn_HWPC1w,18924
|
|
35
35
|
dstack/_internal/cli/services/configurators/gateway.py,sha256=Epxg5naso0BnjQ-rqxQunRCfIRncQ40ZUHpQaMt-Q8s,8870
|
|
36
|
-
dstack/_internal/cli/services/configurators/run.py,sha256=
|
|
36
|
+
dstack/_internal/cli/services/configurators/run.py,sha256=ZFblrpJ6h-q1e7VM62ylT22fYUT4z-waXxgzGJ8qk5E,38865
|
|
37
37
|
dstack/_internal/cli/services/configurators/volume.py,sha256=toN1QZJI47BNlkoLE39lXYNhlMaw7Mo53vkRs1LhWlo,8461
|
|
38
38
|
dstack/_internal/cli/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
39
|
dstack/_internal/cli/utils/common.py,sha256=xgq2Rdx6wGS1NLx8FlmkjKrGaNYD428oeBB4VMjvJ5c,3447
|
|
@@ -49,13 +49,17 @@ dstack/_internal/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
|
|
|
49
49
|
dstack/_internal/core/consts.py,sha256=c1Yd5UY6Qx7KeuYgloXWncWhMsYj6TqwlElda7NtB98,254
|
|
50
50
|
dstack/_internal/core/errors.py,sha256=VTEmJ6C0zWL3fUL8ObRjB4rNL7_NxwEuWf0hZs6orWo,3377
|
|
51
51
|
dstack/_internal/core/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
52
|
-
dstack/_internal/core/backends/configurators.py,sha256=
|
|
52
|
+
dstack/_internal/core/backends/configurators.py,sha256=Fy1FpiS_2aV8IWT1nkCb2CUI7fDVVRK-O2YFcHSpkTo,4573
|
|
53
53
|
dstack/_internal/core/backends/features.py,sha256=cswqwmZYD8g041V_m-ovHbJRkB2_vni1DiGJpKD8M_g,2764
|
|
54
|
-
dstack/_internal/core/backends/models.py,sha256=
|
|
54
|
+
dstack/_internal/core/backends/models.py,sha256=Msj99dfzw3r6G_tG_SUTcSD-m6fK89fbJm5HTr4Xh1s,4862
|
|
55
|
+
dstack/_internal/core/backends/amddevcloud/__init__.py,sha256=IMhALdujfNvUdMJklEJ_vMWsjApR1iJWsYT30SNMa4s,72
|
|
56
|
+
dstack/_internal/core/backends/amddevcloud/backend.py,sha256=aUIOxKzXDDvmPEverL52Nj6zpel2zSZwZo0hTBrb6Pc,724
|
|
57
|
+
dstack/_internal/core/backends/amddevcloud/compute.py,sha256=Jda6I2NyvPpaiwFVc8uOiuffqxTI0e3nccjrtvta1cM,155
|
|
58
|
+
dstack/_internal/core/backends/amddevcloud/configurator.py,sha256=WF4e-Yh2jMuTKQ5efc4aeFliUW1laUuRy-2jbd7QZlI,1326
|
|
55
59
|
dstack/_internal/core/backends/aws/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
56
60
|
dstack/_internal/core/backends/aws/auth.py,sha256=BAe3HAedoAO42Fbv7YhpODKWlyil8M0PuRJsL-_u_kw,978
|
|
57
61
|
dstack/_internal/core/backends/aws/backend.py,sha256=pjROH-S9pgrSMm-Eox_ocL7cTU6mIMRxvURq7Vi-2J8,876
|
|
58
|
-
dstack/_internal/core/backends/aws/compute.py,sha256=
|
|
62
|
+
dstack/_internal/core/backends/aws/compute.py,sha256=Ztodgn_EkDcnVtJkPBduYmDXV8_gsANW9wJW3l2hd4E,44546
|
|
59
63
|
dstack/_internal/core/backends/aws/configurator.py,sha256=X4CS-DnvsbdYCEVo6HBKLmH0YQ-zh5RucOjyhEcRca8,7634
|
|
60
64
|
dstack/_internal/core/backends/aws/models.py,sha256=EUCHXHmZnshe3rwI9UtjilwcUMu1Z7MO4Y4-nlZ_IcA,4404
|
|
61
65
|
dstack/_internal/core/backends/aws/resources.py,sha256=ccvdQd2H1DuUupdzMtqf86nkrenYPBJb1k3VgHu5Gp4,23610
|
|
@@ -69,10 +73,10 @@ dstack/_internal/core/backends/azure/resources.py,sha256=cJWS2Yjxdg-XtjpdBxfVDZa
|
|
|
69
73
|
dstack/_internal/core/backends/azure/utils.py,sha256=taHMJq6UHRzUXLUcO2P5VCKy3wJaye2bG-6QdkEPNdY,1741
|
|
70
74
|
dstack/_internal/core/backends/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
71
75
|
dstack/_internal/core/backends/base/backend.py,sha256=hdFMHED1RMV9GVfLSU0yGhGE-cXlbLvt1coDA885PMM,505
|
|
72
|
-
dstack/_internal/core/backends/base/compute.py,sha256=
|
|
76
|
+
dstack/_internal/core/backends/base/compute.py,sha256=3x--AsQYD63n_KtNJa1TkdRdTw8t3thaZKhfnL0hq9g,30581
|
|
73
77
|
dstack/_internal/core/backends/base/configurator.py,sha256=TKG5iJlOXxVT2agE_ruMW8JGt2dtwXY7ghmJN8bEWlw,4299
|
|
74
78
|
dstack/_internal/core/backends/base/models.py,sha256=Ij0osOl-T-ABsKLoVg2eY81DMkwdWkevAnjXj2QnLXI,532
|
|
75
|
-
dstack/_internal/core/backends/base/offers.py,sha256=
|
|
79
|
+
dstack/_internal/core/backends/base/offers.py,sha256=IlK1X7Rz3piKeUJNsIjyqrj68k4PlWsC-5e76i9NjYg,6305
|
|
76
80
|
dstack/_internal/core/backends/cloudrift/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
77
81
|
dstack/_internal/core/backends/cloudrift/api_client.py,sha256=mI3_ttwujfSunTiTIelnc1XaLBlfxsKsacrlyB12f8c,8178
|
|
78
82
|
dstack/_internal/core/backends/cloudrift/backend.py,sha256=Jz3nIQsa3TnMISVXK6EU43O0B7FgIMxwwaEBmd_s5BY,596
|
|
@@ -90,21 +94,31 @@ dstack/_internal/core/backends/datacrunch/backend.py,sha256=-wanJJ_K_wOXezxTSRgs
|
|
|
90
94
|
dstack/_internal/core/backends/datacrunch/compute.py,sha256=i06kApZD9-cRRE4ZEDfvqcFM2944tOMseyPC-Vx2vBc,9159
|
|
91
95
|
dstack/_internal/core/backends/datacrunch/configurator.py,sha256=9eG3p9LIp5M45T7WH60q8YwH9cNlzz5l_DSRcugO45I,2564
|
|
92
96
|
dstack/_internal/core/backends/datacrunch/models.py,sha256=QeadH8qmcK3oDY9DfQKmX65fDGQo6FABLQAe9wQsHr8,1194
|
|
97
|
+
dstack/_internal/core/backends/digitalocean/__init__.py,sha256=BPjTlv6iNDgu2mcsaIh0FEi9T8iwCEEIVbJQYJAa0gY,34
|
|
98
|
+
dstack/_internal/core/backends/digitalocean/backend.py,sha256=__Sl61IaseFEfpkPbiBOFr6nal74SP3qM7ghYQtgNdw,731
|
|
99
|
+
dstack/_internal/core/backends/digitalocean/compute.py,sha256=ki2QLdsLCj9Vv9m8jPCdNr1s23pH8VTnfsF5l9ZC3Ug,127
|
|
100
|
+
dstack/_internal/core/backends/digitalocean/configurator.py,sha256=_4Tiei4ejehHdmsZgP7Z4G4OHbiaH3wyrrZz4q8Y6os,1337
|
|
101
|
+
dstack/_internal/core/backends/digitalocean_base/__init__.py,sha256=-7saeWMuPLmclPKi3VT-H5lwALbO9AABcaL248npyBc,84
|
|
102
|
+
dstack/_internal/core/backends/digitalocean_base/api_client.py,sha256=-QBAOs-Qj1E_4q3uM7oKPxsN86c-quwiZNqqYbTcs8I,3834
|
|
103
|
+
dstack/_internal/core/backends/digitalocean_base/backend.py,sha256=1xjjveUldj98sg8ELKAbf48a1KDm9DLh8-ymMvhWKXk,115
|
|
104
|
+
dstack/_internal/core/backends/digitalocean_base/compute.py,sha256=gD1AszHcAE-EUxMN3gu9IqevAzFXscvZ9UAt0qB68J0,6970
|
|
105
|
+
dstack/_internal/core/backends/digitalocean_base/configurator.py,sha256=piXOi4jtUprESLkHE_hSeo1ndxe-3pI5aYDPicNbyAQ,2141
|
|
106
|
+
dstack/_internal/core/backends/digitalocean_base/models.py,sha256=oyVnr_xaneudGeogfCr0BLZ22kzubUmGaNE5V8FI-6U,1334
|
|
93
107
|
dstack/_internal/core/backends/dstack/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
94
108
|
dstack/_internal/core/backends/dstack/models.py,sha256=Jbe0Syez43N5i97TlIc8l-5VnUkakP5W1t_9gqhFNtc,812
|
|
95
109
|
dstack/_internal/core/backends/gcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
96
110
|
dstack/_internal/core/backends/gcp/auth.py,sha256=VWCn34hapaZ3E0OHCoiAVL97o3s64RF9w85CZ6xdtmk,2235
|
|
97
111
|
dstack/_internal/core/backends/gcp/backend.py,sha256=OvTv1c7j4LTPCIEtkwD3-q6Eo1QET8xlM8CzbY0hLmI,572
|
|
98
|
-
dstack/_internal/core/backends/gcp/compute.py,sha256=
|
|
112
|
+
dstack/_internal/core/backends/gcp/compute.py,sha256=arHF6BcMDpGNdA1OadfeKoEYJ6kliX_kV0rz4vSVJwA,43030
|
|
99
113
|
dstack/_internal/core/backends/gcp/configurator.py,sha256=eVPr6pD4g66ej5qxhFd94lb_R11CIBA-py9PQS9EOGE,6865
|
|
100
114
|
dstack/_internal/core/backends/gcp/models.py,sha256=biLA3rlFcoPatAZpKycuIl-8PdnNSAFiDCJjov65_zo,4612
|
|
101
115
|
dstack/_internal/core/backends/gcp/resources.py,sha256=2jpg24NH4Ov4J4Of1F3DPkwEWkRxEi-x4ZTx8XSNGIQ,16926
|
|
102
116
|
dstack/_internal/core/backends/gcp/features/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
103
117
|
dstack/_internal/core/backends/gcp/features/tcpx.py,sha256=8bDR5kwF5qke5EWNdBscdbZQnC7oVXKSls3WPcoXgZI,2902
|
|
104
118
|
dstack/_internal/core/backends/hotaisle/__init__.py,sha256=CYMaS1jd9Km0Y6Jvg4ePjYOtfqL9swGsRo5kcXGFrFQ,30
|
|
105
|
-
dstack/_internal/core/backends/hotaisle/api_client.py,sha256=
|
|
119
|
+
dstack/_internal/core/backends/hotaisle/api_client.py,sha256=Fd1TOg4_orwQyJtoZ657zJweLeBhzj_9ObfL538S5uI,3640
|
|
106
120
|
dstack/_internal/core/backends/hotaisle/backend.py,sha256=o0cqLIKGcrXhvksHHGvjCpLShoQxT2IKdJy9sm0H9gE,586
|
|
107
|
-
dstack/_internal/core/backends/hotaisle/compute.py,sha256=
|
|
121
|
+
dstack/_internal/core/backends/hotaisle/compute.py,sha256=vZnaw3CuO8wMlrZvXrDfyGnzqNAuGH-K9GEL3lV5pUo,7511
|
|
108
122
|
dstack/_internal/core/backends/hotaisle/configurator.py,sha256=EJwdKFfC0ab0pe4lzeV65b80Ok21rR0OfupOmuqCp6c,2287
|
|
109
123
|
dstack/_internal/core/backends/hotaisle/models.py,sha256=CmJ20SbpKzFldX7rrR0CpVytSJSN2YWKQ3Ixnta_A1M,1334
|
|
110
124
|
dstack/_internal/core/backends/kubernetes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -124,7 +138,7 @@ dstack/_internal/core/backends/local/backend.py,sha256=KJuNXUXrg60NhLywnExD1EXH2
|
|
|
124
138
|
dstack/_internal/core/backends/local/compute.py,sha256=-FUD8Ii5VTBtygAV1U3k1j10MFdK1whGvrSeRwTk29Y,3788
|
|
125
139
|
dstack/_internal/core/backends/nebius/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
126
140
|
dstack/_internal/core/backends/nebius/backend.py,sha256=2XqZIbSR8VzlfOnuVklXlDxNmwAkQj7txQN8VXF1j2E,566
|
|
127
|
-
dstack/_internal/core/backends/nebius/compute.py,sha256=
|
|
141
|
+
dstack/_internal/core/backends/nebius/compute.py,sha256=UcYIfaqp0-keMuGhARcL82bQK_VXEMigsveW_LbD6Ds,14645
|
|
128
142
|
dstack/_internal/core/backends/nebius/configurator.py,sha256=PilZ5M0xj-koYz9PPew9L29rrHoF2JrW2bxgCqt27u4,3213
|
|
129
143
|
dstack/_internal/core/backends/nebius/fabrics.py,sha256=-X-nSPV2pUin2PAYDHGm-j14KPboIFRpLi93PKHUXTM,1616
|
|
130
144
|
dstack/_internal/core/backends/nebius/models.py,sha256=UudYX32p-ZY-GWR83VEtY5dpZBaWhKXQIfn2nrBCq-4,4245
|
|
@@ -132,7 +146,7 @@ dstack/_internal/core/backends/nebius/resources.py,sha256=ttgwdqokvXF8BH_IDPFZxW
|
|
|
132
146
|
dstack/_internal/core/backends/oci/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
133
147
|
dstack/_internal/core/backends/oci/auth.py,sha256=8Cr18y_LOsyRP-16yfFpT70Cofpm0clB3KawS_7aRl4,717
|
|
134
148
|
dstack/_internal/core/backends/oci/backend.py,sha256=yXjVCt7n6BVLH0byYFbNFf-P9J0FwlNfxsYbKGMdoI4,536
|
|
135
|
-
dstack/_internal/core/backends/oci/compute.py,sha256
|
|
149
|
+
dstack/_internal/core/backends/oci/compute.py,sha256=-1UyAcsJ7PG980zKGZBg9dYVi_hZrvNWxRh-YGjKas4,7398
|
|
136
150
|
dstack/_internal/core/backends/oci/configurator.py,sha256=_mi093BzV8Xdfw81wkiqoY5d5x4CCCtni7J01CZeDCQ,5768
|
|
137
151
|
dstack/_internal/core/backends/oci/exceptions.py,sha256=GxlUf7itcAQgY3m-U2ul_ZXzfUOcEcPEmisWFaoWSkA,288
|
|
138
152
|
dstack/_internal/core/backends/oci/models.py,sha256=fDlY7-A0WDQeiwJzwrQl6D5ENOc-677Bz8LXyvBvF0c,2969
|
|
@@ -164,23 +178,23 @@ dstack/_internal/core/backends/vastai/models.py,sha256=2xpFE-ouYUBienxZXam2Mo4dy
|
|
|
164
178
|
dstack/_internal/core/backends/vultr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
165
179
|
dstack/_internal/core/backends/vultr/api_client.py,sha256=isHbdBQr2hFRYTcnTsGxSlWIKYrpC1X_gjSZjGxUupE,4363
|
|
166
180
|
dstack/_internal/core/backends/vultr/backend.py,sha256=WkPmbUxm3Ysv3_wJjuktQqvvN_L_TX5g37CflGQWQFo,556
|
|
167
|
-
dstack/_internal/core/backends/vultr/compute.py,sha256
|
|
181
|
+
dstack/_internal/core/backends/vultr/compute.py,sha256=9qfya_TKMvvWyWm2OElQjMIFwANaFcEkyc_gHj5XNVA,5845
|
|
168
182
|
dstack/_internal/core/backends/vultr/configurator.py,sha256=JMJ9itCGIRb4MJ8fjS6syd7xrO7wUra2OVoqLTrGRo4,2373
|
|
169
183
|
dstack/_internal/core/backends/vultr/models.py,sha256=TkqK_lW6w5k_7wsoFiKDb6NXuTrHL6ypVm59FoyaSFY,928
|
|
170
184
|
dstack/_internal/core/compatibility/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
171
|
-
dstack/_internal/core/compatibility/fleets.py,sha256=
|
|
185
|
+
dstack/_internal/core/compatibility/fleets.py,sha256=jg42A7OmprqATKKt6JpLL1qOQSZhUJ29V6oKP0KouD0,3200
|
|
172
186
|
dstack/_internal/core/compatibility/gateways.py,sha256=4h_lfpN9KJFyLTFexq-wlu74Rwpk0anV67v38aJ-SnI,1463
|
|
173
187
|
dstack/_internal/core/compatibility/gpus.py,sha256=myWVUjaK2S1QuYgRZyMtD8-DPKQTjadSbsnECtfoHHs,575
|
|
174
188
|
dstack/_internal/core/compatibility/logs.py,sha256=keXt3OFKR0CjD_XMsetzRu8yQGCz7CWBwycuP267L_Q,629
|
|
175
|
-
dstack/_internal/core/compatibility/runs.py,sha256=
|
|
189
|
+
dstack/_internal/core/compatibility/runs.py,sha256=I-9CW-sx01HQXk5jS5_VT4f2tceZpkRodmh3zJS5au0,8772
|
|
176
190
|
dstack/_internal/core/compatibility/volumes.py,sha256=ofjpVusuc-pq285bGrIh8PAqu0QlAd6NQgU3gfJQIc0,1546
|
|
177
191
|
dstack/_internal/core/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
178
192
|
dstack/_internal/core/models/common.py,sha256=TbshwjP_G0Z-JRPCnZ-a5bgwAcOsNfb1_JNMyhOEa4U,3873
|
|
179
193
|
dstack/_internal/core/models/config.py,sha256=VYfgyWG2kfGhJxkC48vZDCbHahIEnO05mDDagJ5kA6s,787
|
|
180
|
-
dstack/_internal/core/models/configurations.py,sha256=
|
|
194
|
+
dstack/_internal/core/models/configurations.py,sha256=7i8Ub5djXWZzsszVUzQZqL7pYWorw4tKkgx-9YArZiQ,30782
|
|
181
195
|
dstack/_internal/core/models/envs.py,sha256=yq84YRFBILOy4x3XnGcTgYpbZ69eFTCQPgBCr9Ndov4,4969
|
|
182
|
-
dstack/_internal/core/models/files.py,sha256=
|
|
183
|
-
dstack/_internal/core/models/fleets.py,sha256=
|
|
196
|
+
dstack/_internal/core/models/files.py,sha256=CI1AQN07ACot_6RVkG7qLml07Ro0co2hGsAfcTamn3Y,1977
|
|
197
|
+
dstack/_internal/core/models/fleets.py,sha256=Df0Ns3MuJoonD8D9fVncUhlmImnoBex96TYxvfe2GVk,14948
|
|
184
198
|
dstack/_internal/core/models/gateways.py,sha256=_O8EWwHWLdgNoWY4P4u71KM-uEr5DDp42LXfyv1qMDI,4054
|
|
185
199
|
dstack/_internal/core/models/health.py,sha256=Q0Z5pYbW-rD5wLn3-EDre2Q7X6tX7DFaglKz5SDv18U,570
|
|
186
200
|
dstack/_internal/core/models/instances.py,sha256=cILMmY-NaHz3Hnl5pm0BQyAq4LXDe7fYHqLENa0dOGI,6895
|
|
@@ -190,7 +204,7 @@ dstack/_internal/core/models/placement.py,sha256=WJVq5ENJykyRarQzL2EeYQag_9_jV7V
|
|
|
190
204
|
dstack/_internal/core/models/profiles.py,sha256=62LMs6_eGxTs5lNLt5bEAq9RsEwKOKwKWu5fMs5qLnM,13957
|
|
191
205
|
dstack/_internal/core/models/projects.py,sha256=HmmlrvUSSEjfGfX7X5tmGJ-CbKeyGK6shHD5OghDNks,671
|
|
192
206
|
dstack/_internal/core/models/resources.py,sha256=ISQeTuzuHSXA5KUgoMCNE9nSoHvfxu3HmjETNPrqCtM,14588
|
|
193
|
-
dstack/_internal/core/models/runs.py,sha256=
|
|
207
|
+
dstack/_internal/core/models/runs.py,sha256=sLvlNXO1qDU79JHOeYS_6T-req6V_QOjEfcW_zutT68,22557
|
|
194
208
|
dstack/_internal/core/models/secrets.py,sha256=5T4B4eCeZmVQ8t22qYYlm4NUyX7VloiXCJuyDfE92QA,413
|
|
195
209
|
dstack/_internal/core/models/server.py,sha256=Hkc1v2s3KOiwslsWVmhUOAzcSeREoG-HD1SzSX9WUGg,152
|
|
196
210
|
dstack/_internal/core/models/services.py,sha256=2Hpi7j0Q1shaf_0wd0C0044AJAmuYi-D3qx3PH849oI,3076
|
|
@@ -198,7 +212,7 @@ dstack/_internal/core/models/unix.py,sha256=KxnSQELnkAjjuUgYcQKVkf-UAbYREBD8WCWD
|
|
|
198
212
|
dstack/_internal/core/models/users.py,sha256=o_rd0GAmd6jufypVUs9P12NRri3rgAPDt-KxnqNNsGw,703
|
|
199
213
|
dstack/_internal/core/models/volumes.py,sha256=PeEHM71aG8SMgMaCM8NyvIBKiufHYyb7CzIRGNgK_HY,7289
|
|
200
214
|
dstack/_internal/core/models/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
201
|
-
dstack/_internal/core/models/backends/base.py,sha256=
|
|
215
|
+
dstack/_internal/core/models/backends/base.py,sha256=OVy1zqYVX9C_XZpo2g3SHfKAXOpDzUf6ktxZb34TdLM,1400
|
|
202
216
|
dstack/_internal/core/models/repos/__init__.py,sha256=7Qo1QgJ852LklUuM-mlCNFodp_XrQ4iqV7uRPiX_qm0,885
|
|
203
217
|
dstack/_internal/core/models/repos/base.py,sha256=nErlSR3AbG9fwDE5vuJK5DIrP8JB3fG8a7mXqosJ9gY,846
|
|
204
218
|
dstack/_internal/core/models/repos/local.py,sha256=zKnEOyN7hSDQ7EKn8q9aJ3uikiTTtGdGEN_3896HTTc,2913
|
|
@@ -209,7 +223,7 @@ dstack/_internal/core/services/api_client.py,sha256=HTQ0fcZciUh-nmfV09hUt__Z4N2z
|
|
|
209
223
|
dstack/_internal/core/services/diff.py,sha256=xtJzlSLIw9pnECpMQTy-a2zcfnSd4Q9qi_Y0W00D65A,2073
|
|
210
224
|
dstack/_internal/core/services/logs.py,sha256=7_eJdH4MD-3rVb4A6rIJfjj_p4jzUOCmjRVlPD-UDsg,2166
|
|
211
225
|
dstack/_internal/core/services/profiles.py,sha256=ZFY6VILW6urm6l3u6xpORJ2z48eGJ2jcmRgjVrxr2tw,1612
|
|
212
|
-
dstack/_internal/core/services/repos.py,sha256=
|
|
226
|
+
dstack/_internal/core/services/repos.py,sha256=Cq-t9RvdmEKjQIgQA6giQirqopdrPT-WzUoCoKLt0ws,6251
|
|
213
227
|
dstack/_internal/core/services/configs/__init__.py,sha256=jMAHvZphEgZJldEiQhkaNSW8lVrVAxuYbu9RtLysUGU,5645
|
|
214
228
|
dstack/_internal/core/services/ssh/__init__.py,sha256=UhgC3Lv3CPSGqSPEQZIKOfLKUlCFnaB0uqPQhfKCFt0,878
|
|
215
229
|
dstack/_internal/core/services/ssh/attach.py,sha256=6YZ_HaimKrjdLzcDLksGi0_9rlVyLeBgPmmWHC7dYxo,9096
|
|
@@ -274,22 +288,22 @@ dstack/_internal/server/app.py,sha256=-qkKsnSTtFIFrSXh7POISuJmEgitwmuRLAAJz0DPQh
|
|
|
274
288
|
dstack/_internal/server/db.py,sha256=NY0-K_7ok2OYLtPMeZ4EHlHK5N2a77uj4aJCVgWO2qE,3245
|
|
275
289
|
dstack/_internal/server/deps.py,sha256=31e8SU_ogPJWHIDLkgl7cuC_5V91xbJoLyAj17VanfM,670
|
|
276
290
|
dstack/_internal/server/main.py,sha256=kztKhCYNoHSDyJJQScWfZXE0naNleJOCQULW6dd8SGw,109
|
|
277
|
-
dstack/_internal/server/models.py,sha256=
|
|
291
|
+
dstack/_internal/server/models.py,sha256=f5RUOEebaGpZMfZPfhTi6cr5LkY2CeOIr9ezXYbDCXs,34146
|
|
278
292
|
dstack/_internal/server/settings.py,sha256=0gW2TDzRgkpKXrXoljhCT2iOfpjegNzVUAxd6fZjg-k,5784
|
|
279
293
|
dstack/_internal/server/background/__init__.py,sha256=QftEjgQZffu83sY-F0WL65vRp28FbBEtezfowQYcTv4,5606
|
|
280
294
|
dstack/_internal/server/background/tasks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
281
295
|
dstack/_internal/server/background/tasks/common.py,sha256=N7xSXbf2MoBWgbJ1e3AEzYBTf1Gn-pDXYND8Zr_YCJQ,970
|
|
282
|
-
dstack/_internal/server/background/tasks/process_fleets.py,sha256=
|
|
296
|
+
dstack/_internal/server/background/tasks/process_fleets.py,sha256=bMJtsNPzSpl6n-XP0b5krQbZ6rU6UqmYtFhA4RkOny8,8234
|
|
283
297
|
dstack/_internal/server/background/tasks/process_gateways.py,sha256=FH9RY3Tfmtw_UctCdYZDIRb2rgtmHdxTg6Oc4IBiDBA,8356
|
|
284
298
|
dstack/_internal/server/background/tasks/process_idle_volumes.py,sha256=mqnl8wvWaKTYvJMbgFJbOP-bZMRQG2vrhUnaNcyBldE,5223
|
|
285
|
-
dstack/_internal/server/background/tasks/process_instances.py,sha256=
|
|
299
|
+
dstack/_internal/server/background/tasks/process_instances.py,sha256=ddBR_r7VwOuDb4zlp9QSQWgoK4XvOi4IGh0dBZkxtUY,44004
|
|
286
300
|
dstack/_internal/server/background/tasks/process_metrics.py,sha256=yKXe9J7m3oleK0C-oGJaYNkcPT8kqkz0nw-A7xqYbjE,6390
|
|
287
301
|
dstack/_internal/server/background/tasks/process_placement_groups.py,sha256=lgYIzjHG9EITK31yG6uQjlIcSwW5jsP9ZOBBZqW_eNs,4263
|
|
288
302
|
dstack/_internal/server/background/tasks/process_probes.py,sha256=dmug-_rmYiVLLF-imto-Ju1gPtENvHvCjHyilqgYuJw,6457
|
|
289
303
|
dstack/_internal/server/background/tasks/process_prometheus_metrics.py,sha256=_UZm37FVV4rhdd0So7HtcKbIgrSdAr5Vx-Uen_xizec,5459
|
|
290
|
-
dstack/_internal/server/background/tasks/process_running_jobs.py,sha256=
|
|
291
|
-
dstack/_internal/server/background/tasks/process_runs.py,sha256=
|
|
292
|
-
dstack/_internal/server/background/tasks/process_submitted_jobs.py,sha256=
|
|
304
|
+
dstack/_internal/server/background/tasks/process_running_jobs.py,sha256=ulDrWgwnhosbK0Mtt0yNS4E38QSKXSh6ermNt-3jUTs,44965
|
|
305
|
+
dstack/_internal/server/background/tasks/process_runs.py,sha256=Cx7Z1B7pZVlvCl-OsIaAiIMFG_aZDdn3nlZeha6k2x4,25041
|
|
306
|
+
dstack/_internal/server/background/tasks/process_submitted_jobs.py,sha256=23q8Il4xw1gAEc2KK6kB195opLlB-umKEDTJrpjAKbg,38109
|
|
293
307
|
dstack/_internal/server/background/tasks/process_terminating_jobs.py,sha256=S7ZSDVMX-N0XMaMgwFa1QG_RAi48BP432s9AqHw4PMM,4066
|
|
294
308
|
dstack/_internal/server/background/tasks/process_volumes.py,sha256=_fMmkwLYsyX-kpW9pDrZVJvFTZEOPp0gpjyKBMW-zw0,5204
|
|
295
309
|
dstack/_internal/server/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -305,6 +319,7 @@ dstack/_internal/server/migrations/versions/1e3fb39ef74b_add_remote_connection_d
|
|
|
305
319
|
dstack/_internal/server/migrations/versions/1e76fb0dde87_add_jobmodel_inactivity_secs.py,sha256=4-H_mGGSD6tI7H0HQ-pBs5wixMKdDro6KtLdH_QId28,831
|
|
306
320
|
dstack/_internal/server/migrations/versions/20166748b60c_add_jobmodel_disconnected_at.py,sha256=Vj7VPo67pAy6gHztSrbp9HmzAz0ckROeV6HxDfvRwOw,3085
|
|
307
321
|
dstack/_internal/server/migrations/versions/23e01c56279a_make_blob_nullable.py,sha256=O5ZrwAXs1ubPrChyItCbuEeAPrlRF_ys1nVw4knAO5g,845
|
|
322
|
+
dstack/_internal/server/migrations/versions/2498ab323443_add_fleetmodel_consolidation_attempt_.py,sha256=rPnfB2xRGNUnH3HhaE4_OD0Lx2r6GF-ZooGs6Lci1ac,1237
|
|
308
323
|
dstack/_internal/server/migrations/versions/252d3743b641_.py,sha256=z3mMF3YCEg6ueoj746cDNBNlQSimmBOcVLNupOv2UuU,1246
|
|
309
324
|
dstack/_internal/server/migrations/versions/25479f540245_add_probes.py,sha256=rlHb0kzrEpHxvYx3SwO4cxLZ5-VYj5NMGY8gLU9BMV8,1475
|
|
310
325
|
dstack/_internal/server/migrations/versions/27d3e55759fa_add_pools.py,sha256=yKEQ1OdPZSaO8YxRd986mJjNc9CjeO6SqY5SmL6aGfE,5433
|
|
@@ -403,7 +418,7 @@ dstack/_internal/server/schemas/instances.py,sha256=PQZ34rtCn2AVaoCuTcHOjENSbzVu
|
|
|
403
418
|
dstack/_internal/server/schemas/logs.py,sha256=I4KaPgXiaYLWtovBchUiqK0wk-b7py-yTHKzhPH8tYc,453
|
|
404
419
|
dstack/_internal/server/schemas/projects.py,sha256=sXm9KMecLYaLemE4rPr8MzvlkHvpwzawmL5GNB87wuY,804
|
|
405
420
|
dstack/_internal/server/schemas/repos.py,sha256=Sit0Tqol79VOMGGp8ncZXLLsZ4INcF-pAA_jwRchYqA,666
|
|
406
|
-
dstack/_internal/server/schemas/runner.py,sha256=
|
|
421
|
+
dstack/_internal/server/schemas/runner.py,sha256=RNPVScuqjveEcIWoANtx4i_f6v9r6W0aRnYoWnnsQxY,5654
|
|
407
422
|
dstack/_internal/server/schemas/runs.py,sha256=CjTWIyokU8eVGR0yCSIMaOrFG91Xt1mCZep3iFB05Qo,1781
|
|
408
423
|
dstack/_internal/server/schemas/secrets.py,sha256=pnvvtPWdv-kBnKTDJsynBksX1vREK1fSUMCYD42gyRI,281
|
|
409
424
|
dstack/_internal/server/schemas/users.py,sha256=FuDqwRVe3mOmv497vOZKjI0a_d4Wt2g4ZiCJcyfHEKA,495
|
|
@@ -416,9 +431,9 @@ dstack/_internal/server/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRk
|
|
|
416
431
|
dstack/_internal/server/services/config.py,sha256=yo8njslwfS7_blhbPPhOtzCMyg8N_mmFSw5aPvirSzw,10691
|
|
417
432
|
dstack/_internal/server/services/docker.py,sha256=z4apNSdxJrv1ZQ_Mxj-56mzNA39qNZ_uILCdvboGGcg,5400
|
|
418
433
|
dstack/_internal/server/services/files.py,sha256=LJYFRtIJwB-QL-FhIu1408oqVVfa2lPZZlaTuZMo6pw,2847
|
|
419
|
-
dstack/_internal/server/services/fleets.py,sha256=
|
|
434
|
+
dstack/_internal/server/services/fleets.py,sha256=B_LXk_inn0rIOwC6SejQuBgT8_C_e9QdCNN5pXH7Sx0,37095
|
|
420
435
|
dstack/_internal/server/services/gpus.py,sha256=_CGqUsizWf_Bq-_JYcRkLg_yg4iKpsp-1_1m5MedBr0,14758
|
|
421
|
-
dstack/_internal/server/services/instances.py,sha256
|
|
436
|
+
dstack/_internal/server/services/instances.py,sha256=-3m2WOg0R5W2X0IcMivT5C6Qha6RXcXyqmHOQLTvt-o,24160
|
|
422
437
|
dstack/_internal/server/services/locking.py,sha256=k00cS2SYUVekUIorsi6l5ofL-Q-Bnc5BnRZ1FAB6dDk,5239
|
|
423
438
|
dstack/_internal/server/services/logging.py,sha256=IPyRg2c3gls_6KEJxus3hfFG8pgI4LqHM5b9F4VTI9g,816
|
|
424
439
|
dstack/_internal/server/services/metrics.py,sha256=jKLy1jSCVR_crqVu_CmsOMbvMkucWBandI0SS1LDeRQ,6896
|
|
@@ -430,7 +445,7 @@ dstack/_internal/server/services/probes.py,sha256=pdgtkOvBuvneUo4Gysg8_afibTf1wu
|
|
|
430
445
|
dstack/_internal/server/services/projects.py,sha256=qvbzEpvi52mOGfsLsLTgWGzg8VDNlaIXAvr_Lwx20AA,23334
|
|
431
446
|
dstack/_internal/server/services/repos.py,sha256=ECl1cbpdzhTv1P3Y9IQmoWyHHF8iXFyL4s2drfwRDvg,9352
|
|
432
447
|
dstack/_internal/server/services/resources.py,sha256=VRFOih_cMJdc0c2m9nSGsX8vWAJQV3M6N87aqS_JXfw,699
|
|
433
|
-
dstack/_internal/server/services/runs.py,sha256
|
|
448
|
+
dstack/_internal/server/services/runs.py,sha256=-RoBSmcau8n_8rvEH-yuORL7R9OaoO92VkLFFZOwcAk,47686
|
|
434
449
|
dstack/_internal/server/services/secrets.py,sha256=M7RS4X1-DIL0f7m6BBb3PhsrAbxwKUD3_pZEWRfR3sM,5567
|
|
435
450
|
dstack/_internal/server/services/ssh.py,sha256=DT7U_8ON8o30-53WlJwjd5kVrKyt4KPgKeN63NW3P8U,2883
|
|
436
451
|
dstack/_internal/server/services/users.py,sha256=L-COF4RjtwYSfnkGQefrSiEU0haTv0o1P2OuUdvMK8E,7378
|
|
@@ -448,14 +463,14 @@ dstack/_internal/server/services/gateways/connection.py,sha256=31qellW-zc-l8cxb8
|
|
|
448
463
|
dstack/_internal/server/services/gateways/pool.py,sha256=0LclTl1tyx-doS78LeaAKjr-SMp98zuwh5f9s06JSd0,1914
|
|
449
464
|
dstack/_internal/server/services/jobs/__init__.py,sha256=qB5Y2DdpQkShfBUDIqHWJis_oA75e6jfHy7KgjwvLL0,28351
|
|
450
465
|
dstack/_internal/server/services/jobs/configurators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
451
|
-
dstack/_internal/server/services/jobs/configurators/base.py,sha256=
|
|
452
|
-
dstack/_internal/server/services/jobs/configurators/dev.py,sha256=
|
|
453
|
-
dstack/_internal/server/services/jobs/configurators/service.py,sha256=
|
|
454
|
-
dstack/_internal/server/services/jobs/configurators/task.py,sha256=
|
|
466
|
+
dstack/_internal/server/services/jobs/configurators/base.py,sha256=b-VI8bo5-glLR3ycio7OEC6ILTy6sap-bCH7N6Oq06w,15996
|
|
467
|
+
dstack/_internal/server/services/jobs/configurators/dev.py,sha256=6dEbuRYr83XAmgie63uyq6jE0Er2Vd1kTZKPy8kpvY4,2635
|
|
468
|
+
dstack/_internal/server/services/jobs/configurators/service.py,sha256=Kbv9GycRX2FA09M5LcUCUzywTzYzjpLLDomwWT6IOG8,866
|
|
469
|
+
dstack/_internal/server/services/jobs/configurators/task.py,sha256=K2Z1QzWmgs3uvBQOD6H-YkAlmqObeH1ImfwZSnNEAUE,1486
|
|
455
470
|
dstack/_internal/server/services/jobs/configurators/extensions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
456
471
|
dstack/_internal/server/services/jobs/configurators/extensions/base.py,sha256=xJbHxaaSJ1zjn8zuuApP1Xt2uBaedPhhc-IY0NtDDJQ,418
|
|
457
|
-
dstack/_internal/server/services/jobs/configurators/extensions/cursor.py,sha256
|
|
458
|
-
dstack/_internal/server/services/jobs/configurators/extensions/vscode.py,sha256=
|
|
472
|
+
dstack/_internal/server/services/jobs/configurators/extensions/cursor.py,sha256=Bh_C6kGM3ulQL8MFpN1_DFlRmnlqxKjxOM6bB1n0KGQ,1645
|
|
473
|
+
dstack/_internal/server/services/jobs/configurators/extensions/vscode.py,sha256=LUg-NXOH1UuQqAkRH2kltPH0UONsqd5K2zjx4ktVI-A,1622
|
|
459
474
|
dstack/_internal/server/services/logs/__init__.py,sha256=KwkZeMeoeM8H1PHb9P46bhUaDDgEqITIjEb68L5Mna8,3599
|
|
460
475
|
dstack/_internal/server/services/logs/aws.py,sha256=4NeoCshC6kkRENqf0r5rL6qXQhmvpBzksZOcv1_stUI,16927
|
|
461
476
|
dstack/_internal/server/services/logs/base.py,sha256=7eCB6SPF9iWviv4vZ_34SvfM_Bvi9DeVj1t7TxmrXKs,1273
|
|
@@ -509,11 +524,11 @@ dstack/_internal/server/statics/e467d7d60aae81ab198b.svg,sha256=_XHc9mfQZgGkcy4h
|
|
|
509
524
|
dstack/_internal/server/statics/eb9b344b73818fe2b71a.png,sha256=2H14eOCQRyZhFGJ1Kn2LH1j70kTF1Qop4vH-tiKqyPI,85
|
|
510
525
|
dstack/_internal/server/statics/f517dd626eb964120de0.png,sha256=4QQuNa8SqmcZ67HK6739OHCyjnAJseU1bkcn454KRQs,159
|
|
511
526
|
dstack/_internal/server/statics/f958aecddee5d8e3222c.png,sha256=8CoZkVNgRfOAe62X1dU-AZDvwh_nESKaQblEmaX2Xrs,87
|
|
512
|
-
dstack/_internal/server/statics/index.html,sha256=
|
|
527
|
+
dstack/_internal/server/statics/index.html,sha256=xzc8VT4KW7rPfpjT9H7PQgTz61-i4HRlSHqE5GpIjkE,11071
|
|
513
528
|
dstack/_internal/server/statics/logo-notext.svg,sha256=Oth7XfcAeDJcaPdzNtDaqYuLU7mCB0JqNtxeyWb6Z3c,11231
|
|
514
|
-
dstack/_internal/server/statics/main-
|
|
515
|
-
dstack/_internal/server/statics/main-
|
|
516
|
-
dstack/_internal/server/statics/main-
|
|
529
|
+
dstack/_internal/server/statics/main-4eecc75fbe64067eb1bc.js,sha256=_GkzNFsW9RgiB_Xo0aBp0W7x2-VPamJYdCsZD26sDnY,6433171
|
|
530
|
+
dstack/_internal/server/statics/main-4eecc75fbe64067eb1bc.js.map,sha256=y1zPoACRaF1vXEOoi-EUB45pVefXO0CeF2G5k675FRo,8534455
|
|
531
|
+
dstack/_internal/server/statics/main-56191c63d516fd0041c4.css,sha256=c_4kpUqgyUa7WR2UbLUqrT1qBjj5xNJ0cdKSylL6Msg,1367438
|
|
517
532
|
dstack/_internal/server/statics/manifest.json,sha256=430w2BoWVmYYVr14lDvUxx-ROPt3VjigzeMqfLeiSCM,340
|
|
518
533
|
dstack/_internal/server/statics/robots.txt,sha256=kNJLw79pisHhc3OVAimMzKcq3x9WT6sF9IS4xI0crdI,67
|
|
519
534
|
dstack/_internal/server/statics/assets/android-chrome-144x144.png,sha256=tB3V-95O-VVEoawN5V1XFoMQRSK0I6gthraV8bATGaw,23414
|
|
@@ -592,7 +607,7 @@ dstack/_internal/server/statics/static/media/logo.f602feeb138844eda97c8cb6414614
|
|
|
592
607
|
dstack/_internal/server/statics/static/media/okta.12f178e6873a1100965f2a4dbd18fcec.svg,sha256=KqFI05gQM135zC1plF1WBRF2F7CyKL7km97WKsZjAHI,319
|
|
593
608
|
dstack/_internal/server/statics/static/media/theme.3994c817bb7dda191c1c9640dee0bf42.svg,sha256=ZxFFBVZWuRLqmWH4zhwGLNtKjOzHj-5MGJRunFAtu1I,561
|
|
594
609
|
dstack/_internal/server/testing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
595
|
-
dstack/_internal/server/testing/common.py,sha256=
|
|
610
|
+
dstack/_internal/server/testing/common.py,sha256=kEFIwHtPt65oxEjj90MmPcao0gqn25npnmd9ajImB30,35948
|
|
596
611
|
dstack/_internal/server/testing/conf.py,sha256=-zhujfFjTHNfQDOK-hBck32By11c_kC0OeinB3esQGg,1902
|
|
597
612
|
dstack/_internal/server/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
598
613
|
dstack/_internal/server/utils/common.py,sha256=PbjXtqYy1taKXpyG5ys8cIrz9MXqc9dBAsR_9D1brrk,1414
|
|
@@ -616,17 +631,17 @@ dstack/_internal/utils/json_utils.py,sha256=RkSSvP4sPgRDa_0cZ1DykH_QvszcDjGMZmv3
|
|
|
616
631
|
dstack/_internal/utils/logging.py,sha256=j37rgL-fQh2_E3ec_RqDy6Ora-Aa79ZVV-BAgZJViME,97
|
|
617
632
|
dstack/_internal/utils/nested_list.py,sha256=ba4fmMuaz807Bf6KRve-9_8zm4dxlNMQiFbcvr3RjBg,1243
|
|
618
633
|
dstack/_internal/utils/network.py,sha256=vvIQulBapL6Zw50jsit7sNNbGJVKTzooqWhkVWqaAzQ,1488
|
|
619
|
-
dstack/_internal/utils/path.py,sha256=
|
|
634
|
+
dstack/_internal/utils/path.py,sha256=FSKOBLDZdT64KJ-lqpRMoo6YzqR2jwCgdEmcodFQz-E,1342
|
|
620
635
|
dstack/_internal/utils/random_names.py,sha256=lVyzAmXhaSf2bAuvRFQ_ihLy42in1ydN4gJYsMw4GG8,3537
|
|
621
|
-
dstack/_internal/utils/ssh.py,sha256=
|
|
636
|
+
dstack/_internal/utils/ssh.py,sha256=FxOA85-NTYEGhnW_PL3-uVYGZbVZfyvcA8uvD7BcN2Q,12131
|
|
622
637
|
dstack/_internal/utils/tags.py,sha256=Gx4aZM85E_UUCGuFZbCEFxHB5DNgrtJP15_1tFFEd1c,1292
|
|
623
638
|
dstack/_internal/utils/typing.py,sha256=tHrhtkr3G6jkk-_FZyobdjLYvP5_YIgXbKsN-13dfvg,386
|
|
624
639
|
dstack/api/__init__.py,sha256=7qbG42qEHMyNDFRCz9FgfuimAKws3hV8eMXs6oRgh5c,1607
|
|
625
640
|
dstack/api/utils.py,sha256=_la3CRk1vgrPGkInPI1SOr33e8Jvh8ziJC32fjvKnaU,4188
|
|
626
641
|
dstack/api/_public/__init__.py,sha256=mbzsdV3nWUJRksc7czX5C0iPT3NA6YRpriQQRiXwIbY,3429
|
|
627
642
|
dstack/api/_public/backends.py,sha256=w_cIUVU3L1tN8VoPH6-ltq-oJewlfXWTiEFXfDvm-1Q,1056
|
|
628
|
-
dstack/api/_public/repos.py,sha256=
|
|
629
|
-
dstack/api/_public/runs.py,sha256=
|
|
643
|
+
dstack/api/_public/repos.py,sha256=N6cvsey2jjVIu1D0SSCEnVOgm37YflzUtyAKdYUm_8U,8281
|
|
644
|
+
dstack/api/_public/runs.py,sha256=tHWK7_dylmCVbdA8ZVA0F3GH09oENozqZ5910vAo8Jw,32020
|
|
630
645
|
dstack/api/server/__init__.py,sha256=6hr2scrtZ1LsH_VQ7TRYlKoOykL1wsSnDb6ZzMZ1T_U,6712
|
|
631
646
|
dstack/api/server/_backends.py,sha256=tSvJ4j-yp-S-4IYo7pKHluDaSsx6Xbwo08Ff6Do85fo,1639
|
|
632
647
|
dstack/api/server/_files.py,sha256=iOBHm1CvJiG4TqNx3t5LYOf7w3jff9I15wxYpIAg-r4,780
|
|
@@ -652,8 +667,8 @@ dstack/plugins/builtin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3
|
|
|
652
667
|
dstack/plugins/builtin/rest_plugin/__init__.py,sha256=lgTsq8Z6Km2F2UhPRChVB4vDM5ZpWtdk1iB1aa20ypA,440
|
|
653
668
|
dstack/plugins/builtin/rest_plugin/_models.py,sha256=9hgVuU6OGSxidar88XhQnNo9izYWeQvVH45ciErv-Es,1910
|
|
654
669
|
dstack/plugins/builtin/rest_plugin/_plugin.py,sha256=h3r3Yc3h22i93fifPTgTm9Oojd1sN1O4DP7ZTV-kWpM,5386
|
|
655
|
-
dstack-0.19.
|
|
656
|
-
dstack-0.19.
|
|
657
|
-
dstack-0.19.
|
|
658
|
-
dstack-0.19.
|
|
659
|
-
dstack-0.19.
|
|
670
|
+
dstack-0.19.27.dist-info/METADATA,sha256=WXnkivc2veHjzVXjHwZ3GnB7EdiGiHQGGcp6K-b5VlY,20586
|
|
671
|
+
dstack-0.19.27.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
672
|
+
dstack-0.19.27.dist-info/entry_points.txt,sha256=GnLrMS8hx3rWAySQjA7tPNhtixV6a-brRkmal1PKoHc,58
|
|
673
|
+
dstack-0.19.27.dist-info/licenses/LICENSE.md,sha256=qDABaRGjSKVOib1U8viw2P_96sIK7Puo426784oD9f8,15976
|
|
674
|
+
dstack-0.19.27.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|