dstack 0.18.41__py3-none-any.whl → 0.18.43__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.
- dstack/_internal/cli/commands/__init__.py +2 -1
- dstack/_internal/cli/commands/apply.py +4 -2
- dstack/_internal/cli/commands/attach.py +21 -1
- dstack/_internal/cli/commands/completion.py +20 -0
- dstack/_internal/cli/commands/delete.py +3 -1
- dstack/_internal/cli/commands/fleet.py +2 -1
- dstack/_internal/cli/commands/gateway.py +7 -2
- dstack/_internal/cli/commands/logs.py +3 -2
- dstack/_internal/cli/commands/stats.py +2 -1
- dstack/_internal/cli/commands/stop.py +2 -1
- dstack/_internal/cli/commands/volume.py +2 -1
- dstack/_internal/cli/main.py +6 -0
- dstack/_internal/cli/services/completion.py +86 -0
- dstack/_internal/cli/services/configurators/run.py +10 -17
- dstack/_internal/cli/utils/fleet.py +5 -1
- dstack/_internal/cli/utils/volume.py +9 -0
- dstack/_internal/core/backends/aws/compute.py +24 -11
- dstack/_internal/core/backends/aws/resources.py +3 -3
- dstack/_internal/core/backends/azure/compute.py +14 -8
- dstack/_internal/core/backends/azure/resources.py +2 -0
- dstack/_internal/core/backends/base/compute.py +102 -2
- dstack/_internal/core/backends/base/offers.py +7 -1
- dstack/_internal/core/backends/cudo/compute.py +8 -4
- dstack/_internal/core/backends/datacrunch/compute.py +10 -4
- dstack/_internal/core/backends/gcp/auth.py +19 -13
- dstack/_internal/core/backends/gcp/compute.py +27 -20
- dstack/_internal/core/backends/gcp/resources.py +3 -10
- dstack/_internal/core/backends/kubernetes/compute.py +4 -3
- dstack/_internal/core/backends/lambdalabs/compute.py +9 -3
- dstack/_internal/core/backends/nebius/compute.py +2 -2
- dstack/_internal/core/backends/oci/compute.py +10 -4
- dstack/_internal/core/backends/runpod/compute.py +11 -4
- dstack/_internal/core/backends/tensordock/compute.py +14 -3
- dstack/_internal/core/backends/vastai/compute.py +12 -2
- dstack/_internal/core/backends/vultr/api_client.py +3 -3
- dstack/_internal/core/backends/vultr/compute.py +9 -3
- dstack/_internal/core/models/backends/aws.py +2 -0
- dstack/_internal/core/models/backends/base.py +1 -0
- dstack/_internal/core/models/configurations.py +0 -1
- dstack/_internal/core/models/runs.py +3 -3
- dstack/_internal/core/models/volumes.py +23 -0
- dstack/_internal/core/services/__init__.py +5 -1
- dstack/_internal/core/services/configs/__init__.py +3 -0
- dstack/_internal/server/background/tasks/common.py +22 -0
- dstack/_internal/server/background/tasks/process_instances.py +13 -21
- dstack/_internal/server/background/tasks/process_running_jobs.py +13 -16
- dstack/_internal/server/background/tasks/process_submitted_jobs.py +12 -7
- dstack/_internal/server/background/tasks/process_terminating_jobs.py +7 -2
- dstack/_internal/server/background/tasks/process_volumes.py +11 -1
- dstack/_internal/server/migrations/versions/a751ef183f27_move_attachment_data_to_volumes_.py +34 -0
- dstack/_internal/server/models.py +17 -19
- dstack/_internal/server/routers/logs.py +3 -0
- dstack/_internal/server/services/backends/configurators/aws.py +31 -1
- dstack/_internal/server/services/backends/configurators/gcp.py +8 -15
- dstack/_internal/server/services/config.py +11 -1
- dstack/_internal/server/services/fleets.py +5 -1
- dstack/_internal/server/services/jobs/__init__.py +14 -11
- dstack/_internal/server/services/jobs/configurators/dev.py +1 -3
- dstack/_internal/server/services/jobs/configurators/task.py +1 -3
- dstack/_internal/server/services/logs/__init__.py +78 -0
- dstack/_internal/server/services/{logs.py → logs/aws.py} +12 -207
- dstack/_internal/server/services/logs/base.py +47 -0
- dstack/_internal/server/services/logs/filelog.py +110 -0
- dstack/_internal/server/services/logs/gcp.py +165 -0
- dstack/_internal/server/services/offers.py +7 -7
- dstack/_internal/server/services/pools.py +19 -20
- dstack/_internal/server/services/proxy/routers/service_proxy.py +14 -7
- dstack/_internal/server/services/runner/client.py +8 -5
- dstack/_internal/server/services/volumes.py +68 -9
- dstack/_internal/server/settings.py +3 -0
- dstack/_internal/server/statics/index.html +1 -1
- dstack/_internal/server/statics/{main-ad5150a441de98cd8987.css → main-7510e71dfa9749a4e70e.css} +1 -1
- dstack/_internal/server/statics/{main-2ac66bfcbd2e39830b88.js → main-fe8fd9db55df8d10e648.js} +66 -66
- dstack/_internal/server/statics/{main-2ac66bfcbd2e39830b88.js.map → main-fe8fd9db55df8d10e648.js.map} +1 -1
- dstack/_internal/server/testing/common.py +46 -17
- dstack/api/_public/runs.py +1 -1
- dstack/version.py +2 -2
- {dstack-0.18.41.dist-info → dstack-0.18.43.dist-info}/METADATA +4 -3
- {dstack-0.18.41.dist-info → dstack-0.18.43.dist-info}/RECORD +97 -86
- tests/_internal/core/backends/base/__init__.py +0 -0
- tests/_internal/core/backends/base/test_compute.py +56 -0
- tests/_internal/server/background/tasks/test_process_running_jobs.py +2 -1
- tests/_internal/server/background/tasks/test_process_submitted_jobs.py +5 -3
- tests/_internal/server/background/tasks/test_process_terminating_jobs.py +11 -6
- tests/_internal/server/conftest.py +4 -5
- tests/_internal/server/routers/test_backends.py +1 -0
- tests/_internal/server/routers/test_logs.py +1 -1
- tests/_internal/server/routers/test_runs.py +2 -2
- tests/_internal/server/routers/test_volumes.py +9 -2
- tests/_internal/server/services/runner/test_client.py +22 -3
- tests/_internal/server/services/test_logs.py +3 -3
- tests/_internal/server/services/test_offers.py +167 -0
- tests/_internal/server/services/test_pools.py +105 -1
- {dstack-0.18.41.dist-info → dstack-0.18.43.dist-info}/LICENSE.md +0 -0
- {dstack-0.18.41.dist-info → dstack-0.18.43.dist-info}/WHEEL +0 -0
- {dstack-0.18.41.dist-info → dstack-0.18.43.dist-info}/entry_points.txt +0 -0
- {dstack-0.18.41.dist-info → dstack-0.18.43.dist-info}/top_level.txt +0 -0
|
@@ -1,94 +1,96 @@
|
|
|
1
1
|
dstack/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
dstack/version.py,sha256=
|
|
2
|
+
dstack/version.py,sha256=d3JTxTwIqwsUKYkzkrgMvw4t7I2HgxbJ2Bl3oR5u-g4,65
|
|
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=8XODoSW2joaEndvZxuHUPSFK85sGgJ7fVL976isYeJM,557
|
|
6
6
|
dstack/_internal/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
|
-
dstack/_internal/cli/main.py,sha256=
|
|
8
|
-
dstack/_internal/cli/commands/__init__.py,sha256=
|
|
9
|
-
dstack/_internal/cli/commands/apply.py,sha256=
|
|
10
|
-
dstack/_internal/cli/commands/attach.py,sha256=
|
|
7
|
+
dstack/_internal/cli/main.py,sha256=RBGA0CvpRTS2seJPwYBQN_HIqEqSCF8iYoUMjDub57g,3676
|
|
8
|
+
dstack/_internal/cli/commands/__init__.py,sha256=e8EjD8Ej7Q3_APlxAN7NBwY7dGnW-DR91nH_RgcjBXg,2023
|
|
9
|
+
dstack/_internal/cli/commands/apply.py,sha256=dZH2B3Yr-lB7hs-QeUnvX0FV0Yk2x19dEO5uSFo4098,4909
|
|
10
|
+
dstack/_internal/cli/commands/attach.py,sha256=resmqoqkIOptp9Vn4BMs8m42Txl4mPzFDhHcv_lkWJk,5033
|
|
11
|
+
dstack/_internal/cli/commands/completion.py,sha256=2gDBYNb9u1JtuvZaAzqEOy0_ZatBvwn0Aq10j138xnA,546
|
|
11
12
|
dstack/_internal/cli/commands/config.py,sha256=wc4haqU2-a65DcHdIH0gLyz3ViZ05dR7RXTlPm92G9g,3113
|
|
12
|
-
dstack/_internal/cli/commands/delete.py,sha256=
|
|
13
|
-
dstack/_internal/cli/commands/fleet.py,sha256=
|
|
14
|
-
dstack/_internal/cli/commands/gateway.py,sha256=
|
|
13
|
+
dstack/_internal/cli/commands/delete.py,sha256=agFBwJg8JXy1xp1UplRFLEPbix1bKvt6XvSBKpSPwYI,1418
|
|
14
|
+
dstack/_internal/cli/commands/fleet.py,sha256=J0Yi5CAYvIQF_NC4ZBsDYGc3grTOtvaF7sVcobd19Go,4028
|
|
15
|
+
dstack/_internal/cli/commands/gateway.py,sha256=PYVP3ngxKZ7hIvjUF3HcphMjXQRj84ePQs6gVrDjkgU,5567
|
|
15
16
|
dstack/_internal/cli/commands/init.py,sha256=bLhSlViNWtjflB6xNq_PuCR2o2A06h222luh1NeUgVA,1169
|
|
16
|
-
dstack/_internal/cli/commands/logs.py,sha256=
|
|
17
|
+
dstack/_internal/cli/commands/logs.py,sha256=ytWsxo_MGlAxsuNOd-yXsFzRDbnye_gtMcFfVdP2F4c,2349
|
|
17
18
|
dstack/_internal/cli/commands/pool.py,sha256=XjTkW8cMQR20KoUrPuiQI246IMv8qTJD7-_Siuzgu0U,20656
|
|
18
19
|
dstack/_internal/cli/commands/ps.py,sha256=WUQKL-1HcoM-oFF_WX4zplO8yKGMWfVbsivg0L7LP2w,1666
|
|
19
20
|
dstack/_internal/cli/commands/run.py,sha256=hDItdHKXvVGQPqXKN-OQJ0HKupgmocqP3DNPl-yCamE,2690
|
|
20
21
|
dstack/_internal/cli/commands/server.py,sha256=dCEdmVp1OlwFnSGw9k8mBb26wZy1D_ctgn5pmK8ZrCQ,2802
|
|
21
|
-
dstack/_internal/cli/commands/stats.py,sha256=
|
|
22
|
-
dstack/_internal/cli/commands/stop.py,sha256=
|
|
23
|
-
dstack/_internal/cli/commands/volume.py,sha256=
|
|
22
|
+
dstack/_internal/cli/commands/stats.py,sha256=KKSYfUmTL8d8_29Fajue_sa8KX_ifE_vx98CCNjttSo,5376
|
|
23
|
+
dstack/_internal/cli/commands/stop.py,sha256=i7TreejSemrQcL7C37La22KkwM98O09IDMRNt8cw1NI,1000
|
|
24
|
+
dstack/_internal/cli/commands/volume.py,sha256=h0bQQm6zx1Bq0kdBX5ksqPZk55wz-md_Kitm0RTDReg,3214
|
|
24
25
|
dstack/_internal/cli/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
25
26
|
dstack/_internal/cli/services/args.py,sha256=Rnqq4M979bNACwWehgGKF2j30x01Efs-dDP-bjyTroE,782
|
|
27
|
+
dstack/_internal/cli/services/completion.py,sha256=HvWHdZhXQWX1FyHf1OtQJxeuIXMXBKcoa5UjNRr0AN0,2984
|
|
26
28
|
dstack/_internal/cli/services/profile.py,sha256=Fl052TeMCbWO1Q6HiaPVD9CdfClzZAkknkCd2pYXpdM,7716
|
|
27
29
|
dstack/_internal/cli/services/repos.py,sha256=ImJuElGjsR4OQ7dBquy4PCQUbBM4bR4vhyLwMrVBS7k,3307
|
|
28
30
|
dstack/_internal/cli/services/configurators/__init__.py,sha256=z94VPBFqybP8Zpwy3CzYxmpPAqYBOvRRLpXoz2H4GKI,2697
|
|
29
31
|
dstack/_internal/cli/services/configurators/base.py,sha256=DxVuF9pDqghq9mFCcTDG1CxO06IAAwvzlc9nHflCipc,3443
|
|
30
32
|
dstack/_internal/cli/services/configurators/fleet.py,sha256=bKnWXhr7r8GndxedNdG_TWvwcxV4gab_LFt4s3Q17D0,14822
|
|
31
33
|
dstack/_internal/cli/services/configurators/gateway.py,sha256=czB2s89s7IowOmWnpDwWErPAUlW3FvFMizImhrkQiBM,8927
|
|
32
|
-
dstack/_internal/cli/services/configurators/run.py,sha256=
|
|
34
|
+
dstack/_internal/cli/services/configurators/run.py,sha256=kRbT-yczl8h4rjCjiWMd2bB44x7iBWqDC1qKCOPi2HU,23072
|
|
33
35
|
dstack/_internal/cli/services/configurators/volume.py,sha256=riMXLQbgvHIIFwLKdHfad-_0iE9wE3G_rUmXU5P3ZS8,8519
|
|
34
36
|
dstack/_internal/cli/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
35
37
|
dstack/_internal/cli/utils/common.py,sha256=rfmzqrsgR3rXW3wj0vxDdvrhUUg2aIy4A6E9MZbd55g,1763
|
|
36
|
-
dstack/_internal/cli/utils/fleet.py,sha256=
|
|
38
|
+
dstack/_internal/cli/utils/fleet.py,sha256=NpqTdcMVcuUGke9drroxDoNnmifbKV7iziqdGPLc3lk,3885
|
|
37
39
|
dstack/_internal/cli/utils/gateway.py,sha256=jMytH6u3x8hctMhm9bcmXLJxSgTXmpW8M9abATQrw3c,1474
|
|
38
40
|
dstack/_internal/cli/utils/rich.py,sha256=Gx1MJU929kMKsbdo9qF7XHARNta2426Ssb-xMLVhwbQ,5710
|
|
39
41
|
dstack/_internal/cli/utils/run.py,sha256=4NDhlcdE4bccQ4gWzhZ2EP8tHryZt4eI3BBho425VOA,7737
|
|
40
42
|
dstack/_internal/cli/utils/updates.py,sha256=9KQcm_TEE_PiU0yc5WH4xRse0WIeHOubi9Et55odgvk,2601
|
|
41
|
-
dstack/_internal/cli/utils/volume.py,sha256=
|
|
43
|
+
dstack/_internal/cli/utils/volume.py,sha256=mU9I06dVMFbpjfkefxrZNoSWadKLoib3U14rHudNQN4,1975
|
|
42
44
|
dstack/_internal/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
43
45
|
dstack/_internal/core/consts.py,sha256=c1Yd5UY6Qx7KeuYgloXWncWhMsYj6TqwlElda7NtB98,254
|
|
44
46
|
dstack/_internal/core/errors.py,sha256=UvqMIBVHG1NIUP0w0g5dWjnxOz37sfFi4lh4yuYK0vw,2793
|
|
45
47
|
dstack/_internal/core/backends/__init__.py,sha256=P7uX9QYj-aWSHOub1vIwr-MVERVCwTi8pcG4MQVuEYw,958
|
|
46
48
|
dstack/_internal/core/backends/aws/__init__.py,sha256=gGXM9op3UJ3-OGDjNr4ywa_fNf--oywRbrOGUH2tTDA,850
|
|
47
49
|
dstack/_internal/core/backends/aws/auth.py,sha256=lRBwNUdEWMWlblDnFSGlIcNkZMY2tSjapdq1OjwollU,1253
|
|
48
|
-
dstack/_internal/core/backends/aws/compute.py,sha256=
|
|
50
|
+
dstack/_internal/core/backends/aws/compute.py,sha256=PIxXZEzUQoLqIiplPkDyP5pWUgTPXz8XVe5Bg9Ge3hQ,35945
|
|
49
51
|
dstack/_internal/core/backends/aws/config.py,sha256=bd4juOaiqsUsWeorIgqCW0xNigCFIRQIvaRxEHyhpwg,533
|
|
50
|
-
dstack/_internal/core/backends/aws/resources.py,sha256=
|
|
52
|
+
dstack/_internal/core/backends/aws/resources.py,sha256=8Pm1zwejYESlH559GB0zNg5zVBgC5D4bPyGx7zBRhmg,22540
|
|
51
53
|
dstack/_internal/core/backends/azure/__init__.py,sha256=J-mWp413v0DQFaTochlvMJXlGf8ukQCH_6oGuYFR31U,718
|
|
52
54
|
dstack/_internal/core/backends/azure/auth.py,sha256=CZZlcUMkjh18wwtMl75K7kfob1bc9aI1TRr5QwMn_u8,1523
|
|
53
|
-
dstack/_internal/core/backends/azure/compute.py,sha256=
|
|
55
|
+
dstack/_internal/core/backends/azure/compute.py,sha256=ERtj3cEWVUR6MeA8W4dr4fo4SqtVMPfbkomoge5IIZs,23290
|
|
54
56
|
dstack/_internal/core/backends/azure/config.py,sha256=nb7e9rBt5glSOcXW1NZUxlyjfe2W1CiEPERNlxLcLUo,391
|
|
55
|
-
dstack/_internal/core/backends/azure/resources.py,sha256=
|
|
57
|
+
dstack/_internal/core/backends/azure/resources.py,sha256=keE3ruSSNWhSYMCkG7832TYppMMe8lDEyph0tulhd18,3048
|
|
56
58
|
dstack/_internal/core/backends/azure/utils.py,sha256=taHMJq6UHRzUXLUcO2P5VCKy3wJaye2bG-6QdkEPNdY,1741
|
|
57
59
|
dstack/_internal/core/backends/base/__init__.py,sha256=nTI1mn75hqwUumBVmyD_OSJW3boYHzNh1ER6m9yl39Y,280
|
|
58
|
-
dstack/_internal/core/backends/base/compute.py,sha256=
|
|
60
|
+
dstack/_internal/core/backends/base/compute.py,sha256=cATataCnSX881cU5spmpckI5bgjGseOQ8_Ms6ksYyqI,20077
|
|
59
61
|
dstack/_internal/core/backends/base/config.py,sha256=iwgrp31Yt0iHRU2IpGhOwyuEcdt3igP9Q9rV7pmnyEg,74
|
|
60
|
-
dstack/_internal/core/backends/base/offers.py,sha256=
|
|
62
|
+
dstack/_internal/core/backends/base/offers.py,sha256=89H6g6Dw5WvXDEBnKoZUF-fGIE3Clc8T4lEjZ_jr71A,5909
|
|
61
63
|
dstack/_internal/core/backends/cudo/__init__.py,sha256=e-RHwoV4-rg1I31BrSIZsgPBY5rsa_kN9dbZM0pve04,519
|
|
62
64
|
dstack/_internal/core/backends/cudo/api_client.py,sha256=ygq1Gx7ZvwKaifdXtvzDSw4xR4ZH6UWd5J47BjuaGh0,3685
|
|
63
|
-
dstack/_internal/core/backends/cudo/compute.py,sha256
|
|
65
|
+
dstack/_internal/core/backends/cudo/compute.py,sha256=-N6u7PmU--cpSk-B_KG-SbBbFO3ida4yJeTCVPyqhyI,6871
|
|
64
66
|
dstack/_internal/core/backends/cudo/config.py,sha256=OEtzz3bxJ29D07i5pHd5xd5SkclbpFBN-i--yHyZ6gc,245
|
|
65
67
|
dstack/_internal/core/backends/datacrunch/__init__.py,sha256=UiyGh78DabzGFkb-zwm84NB5CyhhSoXpqX8FxJp7pY8,573
|
|
66
68
|
dstack/_internal/core/backends/datacrunch/api_client.py,sha256=EMnd4uEZqSXEcCajMvaYKnL4l-mZRPGYlsjaeG4It8M,2602
|
|
67
|
-
dstack/_internal/core/backends/datacrunch/compute.py,sha256=
|
|
69
|
+
dstack/_internal/core/backends/datacrunch/compute.py,sha256=8ldjO2CtiOHTj9LsoIv2WS0Tcpc-14-1tvZZZ4gI_dg,6759
|
|
68
70
|
dstack/_internal/core/backends/datacrunch/config.py,sha256=bShWTAb02PYP8fuBz7H7r-YhRkhy6_yfD0nuaKd9xd4,281
|
|
69
71
|
dstack/_internal/core/backends/gcp/__init__.py,sha256=nxhPNTGd1pPag2DwBRKg3X5gEKlh32p7a9Yfyi7-d5k,546
|
|
70
|
-
dstack/_internal/core/backends/gcp/auth.py,sha256=
|
|
71
|
-
dstack/_internal/core/backends/gcp/compute.py,sha256
|
|
72
|
+
dstack/_internal/core/backends/gcp/auth.py,sha256=hSClOujk8_kcodqK4SltdaIty6kKaQAecHYya99-LBQ,2495
|
|
73
|
+
dstack/_internal/core/backends/gcp/compute.py,sha256=-tp5z4cwUY3SVCSsijRHm8QnBaAzvMh-wVs6sVHdoCE,36087
|
|
72
74
|
dstack/_internal/core/backends/gcp/config.py,sha256=AjNHgIsDqB5aKdyFXTKG9wNO2d3lgNyJW4Dk5Yb-LL4,722
|
|
73
|
-
dstack/_internal/core/backends/gcp/resources.py,sha256=
|
|
75
|
+
dstack/_internal/core/backends/gcp/resources.py,sha256=ZDs8rjdMCgHeeHH_vzxJjhCJN-omF4tRBApkN3GOjpg,14539
|
|
74
76
|
dstack/_internal/core/backends/kubernetes/__init__.py,sha256=MpuT3Dxt2ZwZpAQomE_fXUDmgHBmfP8xvUP1YMAKTJQ,573
|
|
75
|
-
dstack/_internal/core/backends/kubernetes/compute.py,sha256=
|
|
77
|
+
dstack/_internal/core/backends/kubernetes/compute.py,sha256=aAh4XNs-5lTI-q_2Bt6NzyKT3-mQSCLTk_1qCDLPAhg,22719
|
|
76
78
|
dstack/_internal/core/backends/kubernetes/config.py,sha256=odZgt1y8tPPm5L6Wta4XjpVDNi7aJGPANyyyapzUDWU,227
|
|
77
79
|
dstack/_internal/core/backends/kubernetes/utils.py,sha256=k0cmjqMoNfJ_pAe6W82exV4AywMcpZ5jf0QICVbVuFY,1218
|
|
78
80
|
dstack/_internal/core/backends/lambdalabs/__init__.py,sha256=eAjZoRfstuNcgDpYjYPBfHbBTjmQ0jkRP1AvftyR_Lk,581
|
|
79
81
|
dstack/_internal/core/backends/lambdalabs/api_client.py,sha256=WaBO7VrPB4kbMQJDxjFxx0HEtAoSncQvH-cahWnVxx4,2688
|
|
80
|
-
dstack/_internal/core/backends/lambdalabs/compute.py,sha256=
|
|
82
|
+
dstack/_internal/core/backends/lambdalabs/compute.py,sha256=1G5Z2ECtSqlp9dZcbFSKa0zYcgMb5_IA3kMOLFXNCu0,8398
|
|
81
83
|
dstack/_internal/core/backends/lambdalabs/config.py,sha256=dK5nDZ320x8xVWaIZ_As2rk1rJOpxuFwIve1Qe6tjp8,261
|
|
82
84
|
dstack/_internal/core/backends/local/__init__.py,sha256=Bbq2l8PWJTsMqovjS4u5VTDFrxYn-o3nJtdD1hfrBHM,399
|
|
83
85
|
dstack/_internal/core/backends/local/compute.py,sha256=5ETgGZ09axLpRghBZp4GHUcOX0-m4ShhcL3MXHvySaU,3248
|
|
84
86
|
dstack/_internal/core/backends/nebius/__init__.py,sha256=wmJ1JPm54Vc3omuVrLKbbEr_F9mZbeLl-Vb_eMF5r2s,537
|
|
85
87
|
dstack/_internal/core/backends/nebius/api_client.py,sha256=T2f429uY2KFWY8NrnCaAu16O4L2ygYrkc10crrbu-BI,10326
|
|
86
|
-
dstack/_internal/core/backends/nebius/compute.py,sha256=
|
|
88
|
+
dstack/_internal/core/backends/nebius/compute.py,sha256=trlHEGlBiMg_ehYYUyxlA4hM2qQ3dMb7FSMBzy2cvdk,8518
|
|
87
89
|
dstack/_internal/core/backends/nebius/config.py,sha256=S4XL45mxaZvqFraCyGefGY7G3vXbzLDP-ozIndKrL_w,244
|
|
88
90
|
dstack/_internal/core/backends/nebius/types.py,sha256=7V5UTFlhdKO410pxtsQRpCjsaMf1vxcTwT3ncp1QI78,509
|
|
89
91
|
dstack/_internal/core/backends/oci/__init__.py,sha256=Tjf82P3e3nRnYwvr27IRi9C-c9SI6-39TongpJFeQqY,510
|
|
90
92
|
dstack/_internal/core/backends/oci/auth.py,sha256=dZy8EWsnUbylp0x1VYZpgu2MBXh_Tocz6KPAjPNmjbs,883
|
|
91
|
-
dstack/_internal/core/backends/oci/compute.py,sha256=
|
|
93
|
+
dstack/_internal/core/backends/oci/compute.py,sha256=rNEXOsrjfcGRuz-tXVlKJrMcxPXAaxgdaBSwwgGXzu4,7894
|
|
92
94
|
dstack/_internal/core/backends/oci/config.py,sha256=rSwnbRh7qXe64CfJ_oOnIRFaYevjZ5J4Hx1dNwkT3Xo,226
|
|
93
95
|
dstack/_internal/core/backends/oci/exceptions.py,sha256=GxlUf7itcAQgY3m-U2ul_ZXzfUOcEcPEmisWFaoWSkA,288
|
|
94
96
|
dstack/_internal/core/backends/oci/region.py,sha256=6MElwRMVQvl7FF2E90nQ1p7QmcRcyhAps2Dy2cOYR4A,2935
|
|
@@ -97,24 +99,24 @@ dstack/_internal/core/backends/remote/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCe
|
|
|
97
99
|
dstack/_internal/core/backends/remote/provisioning.py,sha256=oNbomEuXIBdgYeCh6_RWB0nWtnrJ0-HRf9M6VYgoQvk,12461
|
|
98
100
|
dstack/_internal/core/backends/runpod/__init__.py,sha256=CC9K4rZlSxpSIqt9akM1PIRzaOGozreY4hQWxO8dRZ4,537
|
|
99
101
|
dstack/_internal/core/backends/runpod/api_client.py,sha256=Oet7CwQTu3sE57unqh-JvuMCBDEDPruAbGB4GyM0dM4,13427
|
|
100
|
-
dstack/_internal/core/backends/runpod/compute.py,sha256=
|
|
102
|
+
dstack/_internal/core/backends/runpod/compute.py,sha256=u6OSdGCXH5L2JX6ztEtXHW76MNv8ZE95PIhhVcfsHnU,9867
|
|
101
103
|
dstack/_internal/core/backends/runpod/config.py,sha256=V9ihNEigp5szdDuffHDM47JsshyPc25x6jHwbuc2YhY,257
|
|
102
104
|
dstack/_internal/core/backends/tensordock/__init__.py,sha256=AihBzxY8RjJHXYrpqaSGCkcOwqYsMgiyIlH16fnHxso,573
|
|
103
105
|
dstack/_internal/core/backends/tensordock/api_client.py,sha256=4106Jzn_I1WTX0VZkZk3I-xkG7sHGTUBRapi8Fk2H7o,3805
|
|
104
|
-
dstack/_internal/core/backends/tensordock/compute.py,sha256=
|
|
106
|
+
dstack/_internal/core/backends/tensordock/compute.py,sha256=njDKvNxN7Fupoxw_eMiItimOvadvdLXEAivM3e75ro0,5584
|
|
105
107
|
dstack/_internal/core/backends/tensordock/config.py,sha256=tDbQd2JaALw05WQMHepbyaIBKLvDP0AW3qJyoMDxX5o,281
|
|
106
108
|
dstack/_internal/core/backends/vastai/__init__.py,sha256=0biDt0AfWis81AJZc-R2TuUdSodjpiJjUtxPTG8RdG8,537
|
|
107
109
|
dstack/_internal/core/backends/vastai/api_client.py,sha256=b-qgx352lnxhBXichJtURFGxR7Jd9JYx4WXaxYV-HH0,4940
|
|
108
|
-
dstack/_internal/core/backends/vastai/compute.py,sha256=
|
|
110
|
+
dstack/_internal/core/backends/vastai/compute.py,sha256=3gvzzaYo5yTrnWbRz10M6DRca2WUCiQXqUaVKVBUi5M,4854
|
|
109
111
|
dstack/_internal/core/backends/vastai/config.py,sha256=cVHqnEkPKw2DFOkEGJ3XhMcRx4IBDgfUuS69DKksosI,244
|
|
110
112
|
dstack/_internal/core/backends/vultr/__init__.py,sha256=D5FekILnO-lQ91hPYKrXWB0BuiGx7djMajuMa3ZlrV0,528
|
|
111
|
-
dstack/_internal/core/backends/vultr/api_client.py,sha256=
|
|
112
|
-
dstack/_internal/core/backends/vultr/compute.py,sha256=
|
|
113
|
+
dstack/_internal/core/backends/vultr/api_client.py,sha256=isHbdBQr2hFRYTcnTsGxSlWIKYrpC1X_gjSZjGxUupE,4363
|
|
114
|
+
dstack/_internal/core/backends/vultr/compute.py,sha256=HqoI7ZF_DafrOG3XALdRjYQdzpvCP0_SBsm6GSk1Sw4,6357
|
|
113
115
|
dstack/_internal/core/backends/vultr/config.py,sha256=TqjT2yhW9rAiDpJ96gBFTM638FS9QwYAT33WSoh6z34,251
|
|
114
116
|
dstack/_internal/core/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
115
117
|
dstack/_internal/core/models/common.py,sha256=XNfEP_lHAs398oDfSVn8kCX79GIWvl0hDs05Rz1CBic,2579
|
|
116
118
|
dstack/_internal/core/models/config.py,sha256=JJ7rT7dztzTWCY5TkoyxXxTvG5D4IFYhGe7EzwkLOWQ,581
|
|
117
|
-
dstack/_internal/core/models/configurations.py,sha256=
|
|
119
|
+
dstack/_internal/core/models/configurations.py,sha256=lC5Pp_sQUb8GzR2z3QL1vMEMRgC8YwMPQlgpKt0z9dM,14726
|
|
118
120
|
dstack/_internal/core/models/envs.py,sha256=ls2ahIhEb3LYLX_auH3F46uTRp2zdlMWKEpjmU_V3S4,5017
|
|
119
121
|
dstack/_internal/core/models/fleets.py,sha256=MzJFMpzsuXBE1Fxlbf8dtsqes5qWMCMRSUWGoWIcRnA,10772
|
|
120
122
|
dstack/_internal/core/models/gateways.py,sha256=n9lPq6X0n2a7fF-CseiBVDDwasJsU3VQumTetMsfZcc,3465
|
|
@@ -126,17 +128,17 @@ dstack/_internal/core/models/pools.py,sha256=SmxNQsSYolUMkraLi0BvEXDacuhp1cvbGQn
|
|
|
126
128
|
dstack/_internal/core/models/profiles.py,sha256=Y0qsIV0DvvI-YxtcMLqmsrqulGKzJsE_0SdWU2Wusv8,8208
|
|
127
129
|
dstack/_internal/core/models/projects.py,sha256=hY3rhLWkuDRsavAdNvQaK6IhnTr7yBHTmNwy9k7zjVE,643
|
|
128
130
|
dstack/_internal/core/models/resources.py,sha256=AzBqGEZLHmg-HpjQtcb_W4pJQRxRtDyeuiHO4berdBA,12408
|
|
129
|
-
dstack/_internal/core/models/runs.py,sha256=
|
|
131
|
+
dstack/_internal/core/models/runs.py,sha256=ziWnqFRL1hORWJ10evwxLySAe9umiP7kTc3IUvEniSc,17940
|
|
130
132
|
dstack/_internal/core/models/secrets.py,sha256=OlnBI8ESBnpjSqB0-Vr3z8JcqB2Ydfiwo8IJUuM5jAc,219
|
|
131
133
|
dstack/_internal/core/models/server.py,sha256=Hkc1v2s3KOiwslsWVmhUOAzcSeREoG-HD1SzSX9WUGg,152
|
|
132
134
|
dstack/_internal/core/models/services.py,sha256=2Hpi7j0Q1shaf_0wd0C0044AJAmuYi-D3qx3PH849oI,3076
|
|
133
135
|
dstack/_internal/core/models/unix.py,sha256=KxnSQELnkAjjuUgYcQKVkf-UAbYREBD8WCWDvHfOkuA,1915
|
|
134
136
|
dstack/_internal/core/models/users.py,sha256=o_rd0GAmd6jufypVUs9P12NRri3rgAPDt-KxnqNNsGw,703
|
|
135
|
-
dstack/_internal/core/models/volumes.py,sha256=
|
|
137
|
+
dstack/_internal/core/models/volumes.py,sha256=ZebkSybGXmnPQHjsDCWVofHavjwjLIovssmpXnLW6nU,6207
|
|
136
138
|
dstack/_internal/core/models/backends/__init__.py,sha256=iPMAv4j7gpHc0cjt3SxzQGb-sywms8LUXt7IjtKNPnM,5589
|
|
137
|
-
dstack/_internal/core/models/backends/aws.py,sha256=
|
|
139
|
+
dstack/_internal/core/models/backends/aws.py,sha256=YCt2Q3MF7RjYa707iU0EyXvkXYIr2ivNtdauCW-khss,2550
|
|
138
140
|
dstack/_internal/core/models/backends/azure.py,sha256=OhK3HBvI_ZfLmKVxlnm7AowWOlarp6QXb3tbcbFoACw,2076
|
|
139
|
-
dstack/_internal/core/models/backends/base.py,sha256=
|
|
141
|
+
dstack/_internal/core/models/backends/base.py,sha256=FabJjSLFnLMY597fJXgS8o2shtToML756aEd30OQyDo,1428
|
|
140
142
|
dstack/_internal/core/models/backends/cudo.py,sha256=ZaqIq1yxxnoFddvzFES7VO82bVNxeI5laFWKKN_JaeE,1111
|
|
141
143
|
dstack/_internal/core/models/backends/datacrunch.py,sha256=CpQDDZ2xHWz5BQPb9NA_eSP7FaQQegT0yGJZ1CCSNqc,1281
|
|
142
144
|
dstack/_internal/core/models/backends/dstack.py,sha256=Oxyf8zqbOjxStimYrYuYvf0Kop3dJbyBQnkMnUGDs0Y,754
|
|
@@ -154,13 +156,13 @@ dstack/_internal/core/models/repos/base.py,sha256=lHV9iNSV1Iv1xxqxO7wCcGZ5WIliMp
|
|
|
154
156
|
dstack/_internal/core/models/repos/local.py,sha256=ve9DoCn9qDyE2VOxzoK4_BdXwVveFPFY0fSls7jRcmI,2379
|
|
155
157
|
dstack/_internal/core/models/repos/remote.py,sha256=JjqPVGzeYr7T8MhsvkUs3GzUpfnAIEWj-UAUbwJhl2Q,10877
|
|
156
158
|
dstack/_internal/core/models/repos/virtual.py,sha256=1p6k2vBfWI6UT91os3lZfV5wl8bskNGFa1hyI5kiY-8,2569
|
|
157
|
-
dstack/_internal/core/services/__init__.py,sha256=
|
|
159
|
+
dstack/_internal/core/services/__init__.py,sha256=UVVcj26WYVgo7jHzD07sNRqSOO7zA3QzQv-9LnCDqR4,415
|
|
158
160
|
dstack/_internal/core/services/api_client.py,sha256=HTQ0fcZciUh-nmfV09hUt__Z4N2zq_R12xAiYXD0Jy0,650
|
|
159
161
|
dstack/_internal/core/services/diff.py,sha256=lw7vTOYnGtRWlEulgVlHt1KjLdC8VJpfBcqMRuFZzSQ,532
|
|
160
162
|
dstack/_internal/core/services/logs.py,sha256=7_eJdH4MD-3rVb4A6rIJfjj_p4jzUOCmjRVlPD-UDsg,2166
|
|
161
163
|
dstack/_internal/core/services/profiles.py,sha256=SJGT6LG8JmrfsqlyXOkPZd61BDwZ4Q1ngcmDVgq826M,2160
|
|
162
164
|
dstack/_internal/core/services/repos.py,sha256=YgTmLX8U1Y5cz2dG9yThK1-Geq02iik_C6DGZ0y6uEY,5311
|
|
163
|
-
dstack/_internal/core/services/configs/__init__.py,sha256=
|
|
165
|
+
dstack/_internal/core/services/configs/__init__.py,sha256=hBFfU1IhkFJ7HZU9JgzBys8i1l_YM-iEKt0JqYd1YiE,5580
|
|
164
166
|
dstack/_internal/core/services/ssh/__init__.py,sha256=UhgC3Lv3CPSGqSPEQZIKOfLKUlCFnaB0uqPQhfKCFt0,878
|
|
165
167
|
dstack/_internal/core/services/ssh/attach.py,sha256=Vc47zLXqCUcg14BahwyX9qnBaGEJi96mTU1Nd0XU31Q,9011
|
|
166
168
|
dstack/_internal/core/services/ssh/client.py,sha256=FUg74jNOagYR3OKuWMBwNgJWIDwHfYrIMSER8xn92D8,4102
|
|
@@ -223,20 +225,21 @@ dstack/_internal/server/app.py,sha256=pPto7JaBEkwvPF2FR8sqDzwIyMovI_85xk6WXfnnCY
|
|
|
223
225
|
dstack/_internal/server/db.py,sha256=WjuqmjG3QAZmSMCeUaJ_ynbowlHuNAvYCZO649cTPHc,3210
|
|
224
226
|
dstack/_internal/server/deps.py,sha256=31e8SU_ogPJWHIDLkgl7cuC_5V91xbJoLyAj17VanfM,670
|
|
225
227
|
dstack/_internal/server/main.py,sha256=kztKhCYNoHSDyJJQScWfZXE0naNleJOCQULW6dd8SGw,109
|
|
226
|
-
dstack/_internal/server/models.py,sha256=
|
|
227
|
-
dstack/_internal/server/settings.py,sha256=
|
|
228
|
+
dstack/_internal/server/models.py,sha256=VKh_lfgGUlc0Xy_CGo02IDgwPRp3membAJg07jm27j4,27405
|
|
229
|
+
dstack/_internal/server/settings.py,sha256=4Vazy6qel63ToJzQSjlOHAt_5UpM99inAQYEINUgUAw,3170
|
|
228
230
|
dstack/_internal/server/background/__init__.py,sha256=jNDwTgQwKhK1NYl0RJaKU4mwKIMOSIxPTKVyhizU1PM,3436
|
|
229
231
|
dstack/_internal/server/background/tasks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
232
|
+
dstack/_internal/server/background/tasks/common.py,sha256=N7xSXbf2MoBWgbJ1e3AEzYBTf1Gn-pDXYND8Zr_YCJQ,970
|
|
230
233
|
dstack/_internal/server/background/tasks/process_fleets.py,sha256=lKXUvN_b7DNjD3psHzyCt_JYsTxPFuQ86iXi8fj8GkM,3202
|
|
231
234
|
dstack/_internal/server/background/tasks/process_gateways.py,sha256=KN5n9r0cKizJ3oGpeLsv3euZKZOMf-02X0Sv09GE8N8,7141
|
|
232
|
-
dstack/_internal/server/background/tasks/process_instances.py,sha256=
|
|
235
|
+
dstack/_internal/server/background/tasks/process_instances.py,sha256=xRV0tJbSPean2E09opTYLUH2Z4Xpm1Lw-o-LqPcecqc,37046
|
|
233
236
|
dstack/_internal/server/background/tasks/process_metrics.py,sha256=BPv0S7pmMX91vObZiW51AJiNR0ULIj-OQlo5n97KISY,5328
|
|
234
237
|
dstack/_internal/server/background/tasks/process_placement_groups.py,sha256=DZctiMF2TXKbYeygoz--ZiC9MXVL1sQJgq0oqRIc7hg,3858
|
|
235
|
-
dstack/_internal/server/background/tasks/process_running_jobs.py,sha256=
|
|
238
|
+
dstack/_internal/server/background/tasks/process_running_jobs.py,sha256=8YH4hQXvkSxzrWz9wW0lYoMZmNgC3iUHBWR-tG_LCZI,29829
|
|
236
239
|
dstack/_internal/server/background/tasks/process_runs.py,sha256=JWJqMzXXqvwQSxyKs4bKH2aBP8YQbiyO4tuwyMPVduk,16673
|
|
237
|
-
dstack/_internal/server/background/tasks/process_submitted_jobs.py,sha256=
|
|
238
|
-
dstack/_internal/server/background/tasks/process_terminating_jobs.py,sha256=
|
|
239
|
-
dstack/_internal/server/background/tasks/process_volumes.py,sha256=
|
|
240
|
+
dstack/_internal/server/background/tasks/process_submitted_jobs.py,sha256=xv1aW2umlOdbdZn4TOvlhl6td3Uam378yIwosfSO9ks,27022
|
|
241
|
+
dstack/_internal/server/background/tasks/process_terminating_jobs.py,sha256=0Z3Q409RwSxOL_pgK8JktBthjtESEUH3ahwTLsTdYPk,3800
|
|
242
|
+
dstack/_internal/server/background/tasks/process_volumes.py,sha256=YafZml-b-bD7M6S0UmY-rLV-pIIX-SdzuyaErqxrnyk,4939
|
|
240
243
|
dstack/_internal/server/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
241
244
|
dstack/_internal/server/migrations/env.py,sha256=RuhcN-CST86VzMatjqBMdYcG0fGGMZl_o1YgZTL-WDw,2831
|
|
242
245
|
dstack/_internal/server/migrations/versions/065588ec72b8_add_vultr_to_backendtype_enum.py,sha256=wSdI_HWGUFgczhOPyoP6BTPmDbN3KmjokHVpZJGsq4Q,2112
|
|
@@ -277,6 +280,7 @@ dstack/_internal/server/migrations/versions/99b4c8c954ea_add_termination_reason_
|
|
|
277
280
|
dstack/_internal/server/migrations/versions/9eea6af28e10_added_fail_reason_for_instancemodel.py,sha256=n0iWQ3L1DWQqPIT-IRs9TR74psf-ZDjcYvSIfn80etY,1027
|
|
278
281
|
dstack/_internal/server/migrations/versions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
279
282
|
dstack/_internal/server/migrations/versions/a060e2440936_.py,sha256=4wXIln1yzEowe-1_xFRJFGfaVIwkwlpAO9RlLeVQ-uY,8016
|
|
283
|
+
dstack/_internal/server/migrations/versions/a751ef183f27_move_attachment_data_to_volumes_.py,sha256=befGXlRV7vP6u3VIyf7nMslyBHVAZuFbomQpmc7phRs,1023
|
|
280
284
|
dstack/_internal/server/migrations/versions/a7b46c073fa1_add_placementgroupmodel.py,sha256=fXYI21V43UmHcIpq7KfD8Ggcjy_l4I_hfXWhB0SnSBM,2078
|
|
281
285
|
dstack/_internal/server/migrations/versions/afbc600ff2b2_add_created_at_to_usermodel_and_.py,sha256=qRDvCdBaTjL82sdZN2GTWq0JCF2PZU-jFANzCJnM4Bw,3705
|
|
282
286
|
dstack/_internal/server/migrations/versions/b4d6ad60db08_add_instancemodel_unreachable.py,sha256=rnmLqt_pzNtqMqcmzXIPZxs5WxDE7ieAdI6SnKUFjqM,1038
|
|
@@ -303,7 +307,7 @@ dstack/_internal/server/routers/backends.py,sha256=nocj-M0m54t_rpjZQBk15XRIVDpXI
|
|
|
303
307
|
dstack/_internal/server/routers/fleets.py,sha256=Tmw4hlviCBuntQPpp4J8XyQZyoK2-4o41OlcEP4NNtg,4867
|
|
304
308
|
dstack/_internal/server/routers/gateways.py,sha256=am5HnyWUydgUbEjIdjYBcob8CEIrx4bRtdj9kQhutkA,3149
|
|
305
309
|
dstack/_internal/server/routers/instances.py,sha256=ELxXF4BiS9e4YCKFmBp8U4SsjP8eGmbj9Q4LiLfgsgY,1592
|
|
306
|
-
dstack/_internal/server/routers/logs.py,sha256
|
|
310
|
+
dstack/_internal/server/routers/logs.py,sha256=_Euk283LbhlwHibJTKM-7YcpbeQFtWBqMfbOry3PSkU,1159
|
|
307
311
|
dstack/_internal/server/routers/metrics.py,sha256=WEICSvIbs1-8zCgxF9WqgsR_9p0afDX_HjNW4-1LCOk,1581
|
|
308
312
|
dstack/_internal/server/routers/pools.py,sha256=3NnwGQVLp5GFMypaXNKFqPjop746EEi4LSPMmx5NKek,4889
|
|
309
313
|
dstack/_internal/server/routers/projects.py,sha256=0R-w_6WXUbNo6fREAexFUQ3RoOJF2D_Iz35elKjym14,2717
|
|
@@ -331,32 +335,31 @@ dstack/_internal/server/schemas/volumes.py,sha256=9iwaQLMhA6aj9XmtdU_9jWVhpzNOtF
|
|
|
331
335
|
dstack/_internal/server/security/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
332
336
|
dstack/_internal/server/security/permissions.py,sha256=K756I8fnBLBrq4PZwz1ttt74HI0UWBSmjaIfMHN5d1s,4425
|
|
333
337
|
dstack/_internal/server/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
334
|
-
dstack/_internal/server/services/config.py,sha256=
|
|
338
|
+
dstack/_internal/server/services/config.py,sha256=4X9KCh7Gta3WrB735YuVt7aNlH5m7G-ULRBSwHatXOo,29955
|
|
335
339
|
dstack/_internal/server/services/docker.py,sha256=3EcYPiVsrNBGDQYOb60QJ241mzTT6lJROYQXIwt-8dk,5351
|
|
336
|
-
dstack/_internal/server/services/fleets.py,sha256=
|
|
340
|
+
dstack/_internal/server/services/fleets.py,sha256=h5LL8FGOZMOl0kzLycP36U6k3SWl_bSnSn7oFg8ubQY,28980
|
|
337
341
|
dstack/_internal/server/services/locking.py,sha256=UV5kc-BgROBuNDpBrp8jkcf-fHPOpHLc8JufL-8mbN8,2453
|
|
338
342
|
dstack/_internal/server/services/logging.py,sha256=Nu1628kW2hqB__N0Eyr07wGWjVWxfyJnczonTJ72kSM,417
|
|
339
|
-
dstack/_internal/server/services/logs.py,sha256=53pymPDaM9-xXHFzCyEHdvM49JPTpsLI2aPTSP5zaPo,20090
|
|
340
343
|
dstack/_internal/server/services/metrics.py,sha256=_YmAQ_oCzzklgk_O5iSJDZJhRk9rBqx8REkPcRQUTAo,3490
|
|
341
|
-
dstack/_internal/server/services/offers.py,sha256=
|
|
344
|
+
dstack/_internal/server/services/offers.py,sha256=GIaICztEu4zbcpIGHvNsfMVYmPvoYg5zcQ0apHNdgBw,6954
|
|
342
345
|
dstack/_internal/server/services/permissions.py,sha256=l7Ngdelmn65vjw13NcOdaC6lBYMRuSw6FbHzYwdK3nE,1005
|
|
343
346
|
dstack/_internal/server/services/placement.py,sha256=DWZ8-iAE3o0J0xaHikuJYZzpuBiq7lj41LiAP1PfoEs,1773
|
|
344
|
-
dstack/_internal/server/services/pools.py,sha256
|
|
347
|
+
dstack/_internal/server/services/pools.py,sha256=-lF9jrAosNpRxRG3PnbzLWgwPFidGFccjF7tgKyC67A,28911
|
|
345
348
|
dstack/_internal/server/services/projects.py,sha256=HWOnFOC6LmvbjDzRKADv7tXKIDWthbO11zrsHU7vkew,14709
|
|
346
349
|
dstack/_internal/server/services/repos.py,sha256=f9ztN7jz_2gvD9hXF5sJwWDVyG2-NHRfjIdSukowPh8,9342
|
|
347
350
|
dstack/_internal/server/services/runs.py,sha256=3m9oYKq08QQF1GlaOa6_2nYp9SMYoqvfjVnO3-fpTGY,36045
|
|
348
351
|
dstack/_internal/server/services/storage.py,sha256=6I0xI_3_RpJNbKZwHjDnjrEwXGdHfiaeb5li15T-M1I,1884
|
|
349
352
|
dstack/_internal/server/services/users.py,sha256=L-exfxHdhj3TKX-gSjezHrYK6tnrt5qsQs-zZng1tUI,7123
|
|
350
|
-
dstack/_internal/server/services/volumes.py,sha256=
|
|
353
|
+
dstack/_internal/server/services/volumes.py,sha256=UX-fqC3c240aG6EbdtVsXrJQbkF0O06IFZNtg6bA_tE,14551
|
|
351
354
|
dstack/_internal/server/services/backends/__init__.py,sha256=Q8Ju0Shf2RAlIdi1CapJNUKOdUAFeRnxhNYti6GZiww,14923
|
|
352
355
|
dstack/_internal/server/services/backends/handlers.py,sha256=j-MhBxrpdepoDG7f2tApjFnE23RVO5I15-hxHyOWnew,3251
|
|
353
356
|
dstack/_internal/server/services/backends/configurators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
354
|
-
dstack/_internal/server/services/backends/configurators/aws.py,sha256=
|
|
357
|
+
dstack/_internal/server/services/backends/configurators/aws.py,sha256=PyyzH38rIQd7xM7tGnQjqtybcvdFNvqhZf6EIqiWvW0,9175
|
|
355
358
|
dstack/_internal/server/services/backends/configurators/azure.py,sha256=AANl9dp4RmNT9Q_-ipcLDFp7w5F_-gIxogLthAJWqZY,20206
|
|
356
359
|
dstack/_internal/server/services/backends/configurators/base.py,sha256=GHS0eBCRptdfZN1xISqPgOEt46oYK6C9Hpb3b_c0OtA,2433
|
|
357
360
|
dstack/_internal/server/services/backends/configurators/cudo.py,sha256=o5KIXuJLFfzoeUqAivvMhwLy4GWDbKR6E1J9egP8T9g,3102
|
|
358
361
|
dstack/_internal/server/services/backends/configurators/datacrunch.py,sha256=9rZPns9GwHywXsBFh47sa3IAnh0h7U92SLlHQD1Mj9s,2849
|
|
359
|
-
dstack/_internal/server/services/backends/configurators/gcp.py,sha256=
|
|
362
|
+
dstack/_internal/server/services/backends/configurators/gcp.py,sha256=EuwwcucFxLgffk58TvH-GYI39gOn4h2_Wz-fi91Jhao,8839
|
|
360
363
|
dstack/_internal/server/services/backends/configurators/kubernetes.py,sha256=HtZQfxTrCf23fn3QX36Z5RNUo78edr00xxgcUJKVulk,2518
|
|
361
364
|
dstack/_internal/server/services/backends/configurators/lambdalabs.py,sha256=yVFOnKTplxl-rGDUVUDUG5R5sl1qmxQwImdnaSoNqf0,3325
|
|
362
365
|
dstack/_internal/server/services/backends/configurators/nebius.py,sha256=tPch1yC4Tftli-rqt36I4HfYjfvwYRP_irrBJFHdhHY,3240
|
|
@@ -374,25 +377,30 @@ dstack/_internal/server/services/gateways/__init__.py,sha256=ceTzXRWu-pVghze9New
|
|
|
374
377
|
dstack/_internal/server/services/gateways/client.py,sha256=1PH9gUjRkHegp37B27pjBVoPFk64KjxcE30eEPBTLM0,7321
|
|
375
378
|
dstack/_internal/server/services/gateways/connection.py,sha256=ot3lV85XdmCT45vBWeyj57nLPcLPNm316zu3jMyeWjA,5625
|
|
376
379
|
dstack/_internal/server/services/gateways/pool.py,sha256=0LclTl1tyx-doS78LeaAKjr-SMp98zuwh5f9s06JSd0,1914
|
|
377
|
-
dstack/_internal/server/services/jobs/__init__.py,sha256=
|
|
380
|
+
dstack/_internal/server/services/jobs/__init__.py,sha256=euq5U73vEGWxDmNASHjnZpWRc5Kp2Dpgy_opMwUDeeU,25444
|
|
378
381
|
dstack/_internal/server/services/jobs/configurators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
379
382
|
dstack/_internal/server/services/jobs/configurators/base.py,sha256=I21dp1P9XC49NNJL_bfihwXfhFd6G-yQXYFYk-EJPEI,10306
|
|
380
|
-
dstack/_internal/server/services/jobs/configurators/dev.py,sha256=
|
|
383
|
+
dstack/_internal/server/services/jobs/configurators/dev.py,sha256=_QOExS0ifCZMp4hLYaCuyb-ASQgAegpDguGWNdF_TUA,1953
|
|
381
384
|
dstack/_internal/server/services/jobs/configurators/service.py,sha256=FOWrLE-6YFSMuGqjOwYTLMV4FuIM5lCMDFjS0l0CoLI,929
|
|
382
|
-
dstack/_internal/server/services/jobs/configurators/task.py,sha256=
|
|
385
|
+
dstack/_internal/server/services/jobs/configurators/task.py,sha256=0-B3oO-61Eq4-mmlLmqJPliFKHhvvIV0tqc12slcQuA,1436
|
|
383
386
|
dstack/_internal/server/services/jobs/configurators/extensions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
384
387
|
dstack/_internal/server/services/jobs/configurators/extensions/base.py,sha256=xJbHxaaSJ1zjn8zuuApP1Xt2uBaedPhhc-IY0NtDDJQ,418
|
|
385
388
|
dstack/_internal/server/services/jobs/configurators/extensions/vscode.py,sha256=DAj8OEVLyL1x8Jko2EXKhnAkcSnlO1sJk6o6eiiVkDI,1611
|
|
389
|
+
dstack/_internal/server/services/logs/__init__.py,sha256=NAjO1KeYvuDznN2EkfAaJt9S6Y00fo_dl3ob3WmsdGQ,3088
|
|
390
|
+
dstack/_internal/server/services/logs/aws.py,sha256=949k8t9H9v_-aedDjDWkw8yPVyhZemmsszcDDEL5Tb4,13711
|
|
391
|
+
dstack/_internal/server/services/logs/base.py,sha256=7eCB6SPF9iWviv4vZ_34SvfM_Bvi9DeVj1t7TxmrXKs,1273
|
|
392
|
+
dstack/_internal/server/services/logs/filelog.py,sha256=2IAFQgLf5NwA1NTibe3ybn47TEddgUKZ_7b4B4yiQOY,3856
|
|
393
|
+
dstack/_internal/server/services/logs/gcp.py,sha256=xV-BJ4NcU8bRVAEXa0dmdYpqNy93dIKC6axo0viQi5c,6867
|
|
386
394
|
dstack/_internal/server/services/proxy/__init__.py,sha256=aklmvGaGXISztQft-nH8R98WRU6x_L0Fx3RwVDhwt3g,85
|
|
387
395
|
dstack/_internal/server/services/proxy/auth.py,sha256=AVhDCnk9KvxJ7Jsd8Xmotl_29V4lNuBw8mQNBhx90Ws,485
|
|
388
396
|
dstack/_internal/server/services/proxy/deps.py,sha256=u4dHHKBlTgC8Fnnl3onErgE1HGKFwyZTwvq0uT6IdQ4,846
|
|
389
397
|
dstack/_internal/server/services/proxy/repo.py,sha256=2Uy90hFeLlQBqqId9Y2tn4mJO3bie9v6FdVP0y5Z9UU,7195
|
|
390
398
|
dstack/_internal/server/services/proxy/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
391
|
-
dstack/_internal/server/services/proxy/routers/service_proxy.py,sha256=
|
|
399
|
+
dstack/_internal/server/services/proxy/routers/service_proxy.py,sha256=5oB-SX8f_f32tTs5aJe9ZuMycHAyVTQDO9xJcFmUKCs,1953
|
|
392
400
|
dstack/_internal/server/services/proxy/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
393
401
|
dstack/_internal/server/services/proxy/services/service_proxy.py,sha256=4JrSxHqhBYqU1oENii89Db-bzkFWExYrOy-0mNEhWBs,4879
|
|
394
402
|
dstack/_internal/server/services/runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
395
|
-
dstack/_internal/server/services/runner/client.py,sha256=
|
|
403
|
+
dstack/_internal/server/services/runner/client.py,sha256=lQBQoUIMtKviSSQV9rx8VKfWXlRswGJOEI0TF7QV_oA,14961
|
|
396
404
|
dstack/_internal/server/services/runner/ssh.py,sha256=H-X0015ZPwYq5tc31ytFF1uNaUAr9itAsABI2oPJWrk,5017
|
|
397
405
|
dstack/_internal/server/services/services/__init__.py,sha256=-kbk6Qb0mGImhNtYhG7JRsmyc0rKGl0A4rRuN1Wq2bA,10617
|
|
398
406
|
dstack/_internal/server/services/services/autoscalers.py,sha256=0o_w9La-ex_P3VKG88w_XN3hkLkzryv5l1cH3pkZyAE,4315
|
|
@@ -422,10 +430,10 @@ dstack/_internal/server/statics/e467d7d60aae81ab198b.svg,sha256=_XHc9mfQZgGkcy4h
|
|
|
422
430
|
dstack/_internal/server/statics/eb9b344b73818fe2b71a.png,sha256=2H14eOCQRyZhFGJ1Kn2LH1j70kTF1Qop4vH-tiKqyPI,85
|
|
423
431
|
dstack/_internal/server/statics/f517dd626eb964120de0.png,sha256=4QQuNa8SqmcZ67HK6739OHCyjnAJseU1bkcn454KRQs,159
|
|
424
432
|
dstack/_internal/server/statics/f958aecddee5d8e3222c.png,sha256=8CoZkVNgRfOAe62X1dU-AZDvwh_nESKaQblEmaX2Xrs,87
|
|
425
|
-
dstack/_internal/server/statics/index.html,sha256=
|
|
426
|
-
dstack/_internal/server/statics/main-
|
|
427
|
-
dstack/_internal/server/statics/main-
|
|
428
|
-
dstack/_internal/server/statics/main-
|
|
433
|
+
dstack/_internal/server/statics/index.html,sha256=3BqqXx8k6XRP4kYKcj-4h0EnhHTA6HcXcmijuEzqseQ,10468
|
|
434
|
+
dstack/_internal/server/statics/main-7510e71dfa9749a4e70e.css,sha256=crBuXqMqHxjUBz4ESOQLtRzot_irn6zYrZLf8Uj7gSk,1296121
|
|
435
|
+
dstack/_internal/server/statics/main-fe8fd9db55df8d10e648.js,sha256=DYwOYAwdEz8wUbv7GVGuDFwC2zAZg5qKEwKI1_R5dlE,6192701
|
|
436
|
+
dstack/_internal/server/statics/main-fe8fd9db55df8d10e648.js.map,sha256=K0gwTM9IZBYSuRFFPDWOSior62dC40TbdBH6D2n6bos,8122346
|
|
429
437
|
dstack/_internal/server/statics/manifest.json,sha256=430w2BoWVmYYVr14lDvUxx-ROPt3VjigzeMqfLeiSCM,340
|
|
430
438
|
dstack/_internal/server/statics/robots.txt,sha256=kNJLw79pisHhc3OVAimMzKcq3x9WT6sF9IS4xI0crdI,67
|
|
431
439
|
dstack/_internal/server/statics/assets/android-chrome-144x144.png,sha256=tB3V-95O-VVEoawN5V1XFoMQRSK0I6gthraV8bATGaw,23414
|
|
@@ -502,7 +510,7 @@ dstack/_internal/server/statics/static/media/logo.f602feeb138844eda97c8cb6414614
|
|
|
502
510
|
dstack/_internal/server/statics/static/media/okta.12f178e6873a1100965f2a4dbd18fcec.svg,sha256=KqFI05gQM135zC1plF1WBRF2F7CyKL7km97WKsZjAHI,319
|
|
503
511
|
dstack/_internal/server/statics/static/media/theme.3994c817bb7dda191c1c9640dee0bf42.svg,sha256=ZxFFBVZWuRLqmWH4zhwGLNtKjOzHj-5MGJRunFAtu1I,561
|
|
504
512
|
dstack/_internal/server/testing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
505
|
-
dstack/_internal/server/testing/common.py,sha256=
|
|
513
|
+
dstack/_internal/server/testing/common.py,sha256=LKoH9pD9cJoy3JsEbP4nureES_-PBw-wg685vZVx0Rs,29614
|
|
506
514
|
dstack/_internal/server/testing/conf.py,sha256=-zhujfFjTHNfQDOK-hBck32By11c_kC0OeinB3esQGg,1902
|
|
507
515
|
dstack/_internal/server/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
508
516
|
dstack/_internal/server/utils/common.py,sha256=PbjXtqYy1taKXpyG5ys8cIrz9MXqc9dBAsR_9D1brrk,1414
|
|
@@ -529,7 +537,7 @@ dstack/api/_public/backends.py,sha256=IBeotauJzlte379LzRM6ByZCl_98QemGZsm3p_WX98
|
|
|
529
537
|
dstack/api/_public/pools.py,sha256=wlTai0px6aQNeKyL-6nOil6DCj-GdozqqDGmnTg4ubw,1033
|
|
530
538
|
dstack/api/_public/repos.py,sha256=LYWy1W3Z-2y_D82Jln6YzU2F_asPULGJq1GM9HAAMIc,6173
|
|
531
539
|
dstack/api/_public/resources.py,sha256=lTQM2nb7_QB2RCwmpQlBkYkpiN_aWjgF78wI7Op_RlQ,2947
|
|
532
|
-
dstack/api/_public/runs.py,sha256=
|
|
540
|
+
dstack/api/_public/runs.py,sha256=wYxIlEKVHr-b1X-gUC1achBq-v1LNRBtP5Vg5mtnhGc,24719
|
|
533
541
|
dstack/api/huggingface/__init__.py,sha256=oIrEij3wttLZ1yrywEGvCMd6zswMQrX5pPjrqdSi0UA,2201
|
|
534
542
|
dstack/api/server/__init__.py,sha256=1Sw1bB8NItIFWlL1bdeUN1Tuwu3uaYOJWFrg1c4VULY,5801
|
|
535
543
|
dstack/api/server/_backends.py,sha256=mMePYgFMHAUma3Gycx54VsaxAL_IFhBRcI4H4eWWMg0,1908
|
|
@@ -567,6 +575,8 @@ tests/_internal/core/backends/aws/test_resources.py,sha256=0Qz9YVjN874UWaZPFkVX9
|
|
|
567
575
|
tests/_internal/core/backends/azure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
568
576
|
tests/_internal/core/backends/azure/test_compute.py,sha256=PkckOfdGyVjOfqbE0uOUD92MlltKXxkAw0Wu1IbOVMQ,2134
|
|
569
577
|
tests/_internal/core/backends/azure/test_resources.py,sha256=Bi3g0BgtOiTMC1vuU7rtELsey5E-5jmB30vk-jEJF9M,1715
|
|
578
|
+
tests/_internal/core/backends/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
579
|
+
tests/_internal/core/backends/base/test_compute.py,sha256=LkeECcBu5SPNbysLHJWDGS_8mTbSZ1L5-ZD0Dh4Fv18,2118
|
|
570
580
|
tests/_internal/core/backends/gcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
571
581
|
tests/_internal/core/backends/gcp/test_resources.py,sha256=7nkVM9w-cVZov1M6SmOKm5W-JhooQCIgph4i-MGZx3c,1638
|
|
572
582
|
tests/_internal/core/backends/kubernetes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -603,7 +613,7 @@ tests/_internal/proxy/lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJW
|
|
|
603
613
|
tests/_internal/proxy/lib/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
604
614
|
tests/_internal/proxy/lib/routers/test_model_proxy.py,sha256=xPCQ9MGBNvRH8rhKZkvkcugxPzluySgErWXE3QsoPjg,8926
|
|
605
615
|
tests/_internal/server/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
606
|
-
tests/_internal/server/conftest.py,sha256=
|
|
616
|
+
tests/_internal/server/conftest.py,sha256=5FbBihFl5tznVw0XjwSqI5P32jV12_i75UBt80V7wxo,1522
|
|
607
617
|
tests/_internal/server/test_app.py,sha256=nIDp8nlWBaW6yQRhGtQZAwOVM55maF8vLw1YqYXIUTQ,605
|
|
608
618
|
tests/_internal/server/test_migrations.py,sha256=8MV1uVSCY-UG_dG6M4a7ekSsGi9CqHjobopc-H5-WKg,2107
|
|
609
619
|
tests/_internal/server/background/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -613,31 +623,32 @@ tests/_internal/server/background/tasks/test_process_gateways.py,sha256=h7jzDFQp
|
|
|
613
623
|
tests/_internal/server/background/tasks/test_process_instances.py,sha256=-ATbgOT8XAeqGmPn4XPlSJzxnrm0haAJhX13nWOBOtM,24816
|
|
614
624
|
tests/_internal/server/background/tasks/test_process_metrics.py,sha256=eirq386mVZqX_PqctuX7CxO38Prwy8RH2UesYXo3CnQ,5083
|
|
615
625
|
tests/_internal/server/background/tasks/test_process_placement_groups.py,sha256=shHqZvS8QoNwQe8J29-aHk2X2HqX-gsxcQiZevU8yuY,1528
|
|
616
|
-
tests/_internal/server/background/tasks/test_process_running_jobs.py,sha256=
|
|
626
|
+
tests/_internal/server/background/tasks/test_process_running_jobs.py,sha256=XzbP5WIJtgYSm7xcjPwuw6uAVAUrxVduO2nrjdmkQV4,25542
|
|
617
627
|
tests/_internal/server/background/tasks/test_process_runs.py,sha256=Yv6f2CDZ-ejDGo7uOKyyAGxYLsvqyjNo4Zw1cCQbjgM,14489
|
|
618
|
-
tests/_internal/server/background/tasks/test_process_submitted_jobs.py,sha256=
|
|
628
|
+
tests/_internal/server/background/tasks/test_process_submitted_jobs.py,sha256=Sf4aDa1ZYw5Sz3xAw8K0hoI-VDesv7Ew3gZdAzQvj_4,24451
|
|
619
629
|
tests/_internal/server/background/tasks/test_process_submitted_volumes.py,sha256=njfRDdDzVtDL8rech_004Wf5z5PpoQVWFufKh1yUyYY,2171
|
|
620
|
-
tests/_internal/server/background/tasks/test_process_terminating_jobs.py,sha256=
|
|
630
|
+
tests/_internal/server/background/tasks/test_process_terminating_jobs.py,sha256=VZsfP1NVxkcLSNWfEXDFe_vQZUQfuG0B5i-krXKP_IQ,14147
|
|
621
631
|
tests/_internal/server/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
622
|
-
tests/_internal/server/routers/test_backends.py,sha256=
|
|
632
|
+
tests/_internal/server/routers/test_backends.py,sha256=d95ZS97zSRHdmmDTxIPzYQWU-hb2_DvlNo2lcF0NNzw,65273
|
|
623
633
|
tests/_internal/server/routers/test_fleets.py,sha256=ap3Jjg2iiwuklosu2_-xx-cJBlM6uZN5CQfGudORPf0,35105
|
|
624
634
|
tests/_internal/server/routers/test_gateways.py,sha256=bb0pzm7uu1X3V8755b7ZZUHPSLk0Rd6CjoMCdionWVA,23535
|
|
625
635
|
tests/_internal/server/routers/test_instances.py,sha256=BAWSCjXhe4N1px6BvPEcdAKrQHL5CkrHWvuGrzPRapc,9516
|
|
626
|
-
tests/_internal/server/routers/test_logs.py,sha256=
|
|
636
|
+
tests/_internal/server/routers/test_logs.py,sha256=NZwyJlgjMOGq4XEx7-VDjTpniYPhZpsbZvB0dTawaog,3989
|
|
627
637
|
tests/_internal/server/routers/test_metrics.py,sha256=NSdb_x_1Nwsqgrf6KXBf257qd29CXcSN30yk_BQx2CE,5923
|
|
628
638
|
tests/_internal/server/routers/test_pools.py,sha256=QQ00pqFVUCo1bSfwWcA2UztyI6Fr0bfU1rj_TnEnVG0,25275
|
|
629
639
|
tests/_internal/server/routers/test_projects.py,sha256=Pa_YL9lYhYt06TFmuZFEf9pxc-K3fM9L29ULf4gCELw,23950
|
|
630
640
|
tests/_internal/server/routers/test_repos.py,sha256=4O4mCDlAPh8xJU_XWtwLhFWRkoTxXvZC1N2DLPyz2AI,17225
|
|
631
|
-
tests/_internal/server/routers/test_runs.py,sha256=
|
|
641
|
+
tests/_internal/server/routers/test_runs.py,sha256=bwp0SGzD83IyIYg_nXwGOsG9VUt8G8YRYPhIiJTh48k,71547
|
|
632
642
|
tests/_internal/server/routers/test_server.py,sha256=ROkuRNNJEkMQuK8guZ3Qy3iRRfiWvPIJJJDc09BI0D4,489
|
|
633
643
|
tests/_internal/server/routers/test_users.py,sha256=5QSLvfn9SroGsZoBGmSTEaaqJcdEO8EUUy_YuvLL8ss,12787
|
|
634
|
-
tests/_internal/server/routers/test_volumes.py,sha256=
|
|
644
|
+
tests/_internal/server/routers/test_volumes.py,sha256=fVv7sVo9POFImal9Mlkaw8CJOAR67S_eYHxIReHebBU,16241
|
|
635
645
|
tests/_internal/server/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
636
646
|
tests/_internal/server/services/test_config.py,sha256=KfPyYSSsLaQszBAgqYeM2Tt5YkRiV-at0ik86ecdrtE,5168
|
|
637
647
|
tests/_internal/server/services/test_docker.py,sha256=QsnoVJUnvzcd1Tpw0UtKXtDSCr9nh_jmtVSkOi7J4ug,5628
|
|
638
648
|
tests/_internal/server/services/test_fleets.py,sha256=WqK9Bs3Nfew45n4WunZhvIvCw0VHJ2w5t0-4CakxFgU,8222
|
|
639
|
-
tests/_internal/server/services/test_logs.py,sha256=
|
|
640
|
-
tests/_internal/server/services/
|
|
649
|
+
tests/_internal/server/services/test_logs.py,sha256=z1t2rKe-egRLfK78sH6SCMB2ULwh3F8XgaB1np6qb88,29754
|
|
650
|
+
tests/_internal/server/services/test_offers.py,sha256=t0nQNjjm-fvIqHIOA_99hokrdTXwpYrgzjaQjqJXs8w,7814
|
|
651
|
+
tests/_internal/server/services/test_pools.py,sha256=aPF4R6_VCeDR4AcjQ0H2J1BKivoVs-JUNQBJZ-IYdPg,7436
|
|
641
652
|
tests/_internal/server/services/test_repos.py,sha256=o2D0xmOPYaiwDq6nNJNtqYMSuSz_xKJ_ZChVOvWIhJY,14289
|
|
642
653
|
tests/_internal/server/services/test_runs.py,sha256=8frDxa3NTJzXir6fJTXRLm_0B_jUd36qV66DgHvRdDU,9289
|
|
643
654
|
tests/_internal/server/services/encryption/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -651,7 +662,7 @@ tests/_internal/server/services/proxy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCe
|
|
|
651
662
|
tests/_internal/server/services/proxy/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
652
663
|
tests/_internal/server/services/proxy/routers/test_service_proxy.py,sha256=cGyBwfSgT268CRhkgpTEIM3O1U9z8tSNTYjHQrn3e0E,9843
|
|
653
664
|
tests/_internal/server/services/runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
654
|
-
tests/_internal/server/services/runner/test_client.py,sha256=
|
|
665
|
+
tests/_internal/server/services/runner/test_client.py,sha256=azCFqMipDCEhoTy4pjq3L5me4SD-mk0ldHTEQ6N6uu8,16855
|
|
655
666
|
tests/_internal/server/services/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
656
667
|
tests/_internal/server/services/services/test_autoscalers.py,sha256=YMi4W5gKFOpEdutc2Fli1L1DIUxCJLHE7ji-CJoiVac,3986
|
|
657
668
|
tests/_internal/server/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -667,9 +678,9 @@ tests/_internal/utils/test_path.py,sha256=rzS-1YCxsFUocBe42dghLOMFNymPruGrA7bqFZ
|
|
|
667
678
|
tests/_internal/utils/test_ssh.py,sha256=V-cBFPhD--9eM9d1uQQgpj2gnYLA3c43f4cX9uJ6E-U,1743
|
|
668
679
|
tests/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
669
680
|
tests/api/test_utils.py,sha256=SSSqHcNE5cZVqDq4n2sKZthRoXaZ_Bx7z1AAN5xTM9s,391
|
|
670
|
-
dstack-0.18.
|
|
671
|
-
dstack-0.18.
|
|
672
|
-
dstack-0.18.
|
|
673
|
-
dstack-0.18.
|
|
674
|
-
dstack-0.18.
|
|
675
|
-
dstack-0.18.
|
|
681
|
+
dstack-0.18.43.dist-info/LICENSE.md,sha256=qDABaRGjSKVOib1U8viw2P_96sIK7Puo426784oD9f8,15976
|
|
682
|
+
dstack-0.18.43.dist-info/METADATA,sha256=3xpGQbB7LyD6cW0q9f9y-VqJEzyi_HlhHbtCenaEdng,17769
|
|
683
|
+
dstack-0.18.43.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
|
684
|
+
dstack-0.18.43.dist-info/entry_points.txt,sha256=GnLrMS8hx3rWAySQjA7tPNhtixV6a-brRkmal1PKoHc,58
|
|
685
|
+
dstack-0.18.43.dist-info/top_level.txt,sha256=3BrIO1zrqxT9P20ymhRM6k15meZXzbPL6ykBlDZG2_k,13
|
|
686
|
+
dstack-0.18.43.dist-info/RECORD,,
|
|
File without changes
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import re
|
|
2
|
+
|
|
3
|
+
from dstack._internal.core.backends.base.compute import (
|
|
4
|
+
generate_unique_backend_name,
|
|
5
|
+
generate_unique_gateway_instance_name,
|
|
6
|
+
generate_unique_instance_name,
|
|
7
|
+
generate_unique_volume_name,
|
|
8
|
+
)
|
|
9
|
+
from dstack._internal.server.testing.common import (
|
|
10
|
+
get_gateway_compute_configuration,
|
|
11
|
+
get_instance_configuration,
|
|
12
|
+
get_volume,
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class TestGenerateUniqueInstanceName:
|
|
17
|
+
def test_generates_name(self):
|
|
18
|
+
configuration = get_instance_configuration(
|
|
19
|
+
project_name="project1", instance_name="my-instance"
|
|
20
|
+
)
|
|
21
|
+
name = generate_unique_instance_name(configuration, 60)
|
|
22
|
+
assert re.match(r"^dstack-project1-my-instance-[a-z0-9]{8}$", name)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class TestGenerateUniqueGatewayInstanceName:
|
|
26
|
+
def test_generates_name(self):
|
|
27
|
+
configuration = get_gateway_compute_configuration(
|
|
28
|
+
project_name="project1", instance_name="my-gateway"
|
|
29
|
+
)
|
|
30
|
+
name = generate_unique_gateway_instance_name(configuration, 60)
|
|
31
|
+
assert re.match(r"^dstack-project1-my-gateway-[a-z0-9]{8}$", name)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class TestGenerateUniqueVolumeName:
|
|
35
|
+
def test_generates_name(self):
|
|
36
|
+
volume = get_volume(project_name="project1", name="my-volume")
|
|
37
|
+
name = generate_unique_volume_name(volume, 60)
|
|
38
|
+
assert re.match(r"^dstack-project1-my-volume-[a-z0-9]{8}$", name)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
class TestGenerateUniqueBackendName:
|
|
42
|
+
def test_generates_name_with_project(self):
|
|
43
|
+
name = generate_unique_backend_name("instance", "project", 60)
|
|
44
|
+
assert re.match(r"^dstack-project-instance-[a-z0-9]{8}$", name)
|
|
45
|
+
|
|
46
|
+
def test_generates_name_without_project(self):
|
|
47
|
+
name = generate_unique_backend_name("instance", None, 60)
|
|
48
|
+
assert re.match(r"^dstack-instance-[a-z0-9]{8}$", name)
|
|
49
|
+
|
|
50
|
+
def test_truncates_long_names(self):
|
|
51
|
+
name = generate_unique_backend_name("a" * 100, "project", 30)
|
|
52
|
+
assert re.match(r"^dstack-project-aaaaaa-[a-z0-9]{8}$", name)
|
|
53
|
+
|
|
54
|
+
def test_validates_project_name(self):
|
|
55
|
+
name = generate_unique_backend_name("instance", "invalid_project!@", 60)
|
|
56
|
+
assert re.match(r"^dstack-instance-[a-z0-9]{8}$", name)
|
|
@@ -335,7 +335,7 @@ class TestProcessRunningJobs:
|
|
|
335
335
|
name="test-run-0-0",
|
|
336
336
|
registry_username="",
|
|
337
337
|
registry_password="",
|
|
338
|
-
image_name="dstackai/base:py3.13-0.
|
|
338
|
+
image_name="dstackai/base:py3.13-0.7-cuda-12.1",
|
|
339
339
|
container_user="root",
|
|
340
340
|
privileged=privileged,
|
|
341
341
|
gpu=None,
|
|
@@ -349,6 +349,7 @@ class TestProcessRunningJobs:
|
|
|
349
349
|
host_ssh_user="ubuntu",
|
|
350
350
|
host_ssh_keys=["user_ssh_key"],
|
|
351
351
|
container_ssh_keys=[project_ssh_pub_key, "user_ssh_key"],
|
|
352
|
+
instance_id=job_provisioning_data.instance_id,
|
|
352
353
|
)
|
|
353
354
|
await session.refresh(job)
|
|
354
355
|
assert job is not None
|
|
@@ -27,7 +27,7 @@ from dstack._internal.core.models.volumes import (
|
|
|
27
27
|
VolumeStatus,
|
|
28
28
|
)
|
|
29
29
|
from dstack._internal.server.background.tasks.process_submitted_jobs import process_submitted_jobs
|
|
30
|
-
from dstack._internal.server.models import InstanceModel, JobModel
|
|
30
|
+
from dstack._internal.server.models import InstanceModel, JobModel, VolumeAttachmentModel
|
|
31
31
|
from dstack._internal.server.testing.common import (
|
|
32
32
|
create_fleet,
|
|
33
33
|
create_instance,
|
|
@@ -515,7 +515,9 @@ class TestProcessSubmittedJobs:
|
|
|
515
515
|
await session.refresh(instance)
|
|
516
516
|
res = await session.execute(
|
|
517
517
|
select(JobModel).options(
|
|
518
|
-
joinedload(JobModel.instance)
|
|
518
|
+
joinedload(JobModel.instance)
|
|
519
|
+
.joinedload(InstanceModel.volume_attachments)
|
|
520
|
+
.joinedload(VolumeAttachmentModel.volume)
|
|
519
521
|
)
|
|
520
522
|
)
|
|
521
523
|
job = res.unique().scalar_one()
|
|
@@ -523,7 +525,7 @@ class TestProcessSubmittedJobs:
|
|
|
523
525
|
assert (
|
|
524
526
|
job.instance_assigned and job.instance is not None and job.instance.id == instance.id
|
|
525
527
|
)
|
|
526
|
-
assert job.instance.
|
|
528
|
+
assert job.instance.volume_attachments[0].volume == volume
|
|
527
529
|
|
|
528
530
|
@pytest.mark.asyncio
|
|
529
531
|
@pytest.mark.parametrize("test_db", ["sqlite", "postgres"], indirect=True)
|