dstack 0.19.34__py3-none-any.whl → 0.19.35__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of dstack might be problematic. Click here for more details.
- dstack/_internal/cli/services/configurators/run.py +1 -1
- dstack/_internal/core/backends/base/compute.py +20 -1
- dstack/_internal/core/backends/base/models.py +10 -0
- dstack/_internal/core/backends/base/offers.py +1 -0
- dstack/_internal/core/backends/features.py +5 -0
- dstack/_internal/core/backends/nebius/compute.py +28 -16
- dstack/_internal/core/backends/nebius/configurator.py +1 -1
- dstack/_internal/core/backends/nebius/models.py +4 -0
- dstack/_internal/core/backends/nebius/resources.py +41 -20
- dstack/_internal/core/backends/runpod/api_client.py +245 -59
- dstack/_internal/core/backends/runpod/compute.py +157 -13
- dstack/_internal/core/models/compute_groups.py +39 -0
- dstack/_internal/core/models/fleets.py +6 -1
- dstack/_internal/core/models/profiles.py +3 -1
- dstack/_internal/core/models/runs.py +3 -0
- dstack/_internal/server/app.py +14 -2
- dstack/_internal/server/background/__init__.py +7 -0
- dstack/_internal/server/background/tasks/process_compute_groups.py +164 -0
- dstack/_internal/server/background/tasks/process_instances.py +81 -49
- dstack/_internal/server/background/tasks/process_submitted_jobs.py +179 -84
- dstack/_internal/server/migrations/env.py +20 -2
- dstack/_internal/server/migrations/versions/7d1ec2b920ac_add_computegroupmodel.py +93 -0
- dstack/_internal/server/models.py +39 -0
- dstack/_internal/server/routers/runs.py +15 -6
- dstack/_internal/server/services/compute_groups.py +22 -0
- dstack/_internal/server/services/fleets.py +1 -0
- dstack/_internal/server/services/jobs/__init__.py +13 -0
- dstack/_internal/server/services/jobs/configurators/base.py +3 -2
- dstack/_internal/server/services/requirements/combine.py +1 -0
- dstack/_internal/server/services/runs.py +17 -3
- dstack/_internal/server/testing/common.py +51 -0
- dstack/_internal/server/utils/routers.py +18 -20
- dstack/_internal/settings.py +4 -1
- dstack/_internal/utils/version.py +22 -0
- dstack/version.py +1 -1
- {dstack-0.19.34.dist-info → dstack-0.19.35.dist-info}/METADATA +3 -3
- {dstack-0.19.34.dist-info → dstack-0.19.35.dist-info}/RECORD +40 -36
- dstack/_internal/core/backends/nebius/fabrics.py +0 -49
- {dstack-0.19.34.dist-info → dstack-0.19.35.dist-info}/WHEEL +0 -0
- {dstack-0.19.34.dist-info → dstack-0.19.35.dist-info}/entry_points.txt +0 -0
- {dstack-0.19.34.dist-info → dstack-0.19.35.dist-info}/licenses/LICENSE.md +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
dstack/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
dstack/version.py,sha256=
|
|
2
|
+
dstack/version.py,sha256=oy6y07NPDywy8QDbWP6gk1Rq2PNa_tUPCEHQir3Te4g,102
|
|
3
3
|
dstack/_internal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
dstack/_internal/compat.py,sha256=bF9U9fTMfL8UVhCouedoUSTYFl7UAOiU0WXrnRoByxw,40
|
|
5
|
-
dstack/_internal/settings.py,sha256=
|
|
5
|
+
dstack/_internal/settings.py,sha256=pyjV-8_5l0WQjoP4TKzNc-3zLRrJ04zQ2x2277Fck6k,1469
|
|
6
6
|
dstack/_internal/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
7
|
dstack/_internal/cli/main.py,sha256=AZ4TB025U5wpQq3qH5sk9KkOYZCpxMIKqfaLH_Mv0DU,3876
|
|
8
8
|
dstack/_internal/cli/commands/__init__.py,sha256=5kjow9mYUNTAeN1sItgp9-c5-GikWWSTPknJ5_0CiUk,2529
|
|
@@ -33,7 +33,7 @@ dstack/_internal/cli/services/configurators/__init__.py,sha256=AwbKV85_XH0V8IS8v
|
|
|
33
33
|
dstack/_internal/cli/services/configurators/base.py,sha256=9mabsRsKHY7xFl8yDRM__FOEQvtEYOn_4KeXKzO6-vA,3244
|
|
34
34
|
dstack/_internal/cli/services/configurators/fleet.py,sha256=xchLFqHkm0zVs3tEVMlYXd4lGjP_OWzdp3nzqNg7b8k,19374
|
|
35
35
|
dstack/_internal/cli/services/configurators/gateway.py,sha256=B2aEoVhhRZGk25OekR7BT4eAvAgZGAyVOw7DlSuo2jg,8755
|
|
36
|
-
dstack/_internal/cli/services/configurators/run.py,sha256=
|
|
36
|
+
dstack/_internal/cli/services/configurators/run.py,sha256=tpIKtpbvl5dQDIlO30WjK5ABc8ki7TsQyNT0fbAkU0Q,39391
|
|
37
37
|
dstack/_internal/cli/services/configurators/volume.py,sha256=ZeESHttKFERBFysJvSGFC4UXUOLghKlzcilXbL48s-c,8346
|
|
38
38
|
dstack/_internal/cli/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
39
|
dstack/_internal/cli/utils/common.py,sha256=xgq2Rdx6wGS1NLx8FlmkjKrGaNYD428oeBB4VMjvJ5c,3447
|
|
@@ -50,7 +50,7 @@ dstack/_internal/core/consts.py,sha256=gN6AKBhvR-o6unEH66Kg3Sehqd06TO7uxunSvThvq
|
|
|
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
52
|
dstack/_internal/core/backends/configurators.py,sha256=Fy1FpiS_2aV8IWT1nkCb2CUI7fDVVRK-O2YFcHSpkTo,4573
|
|
53
|
-
dstack/_internal/core/backends/features.py,sha256=
|
|
53
|
+
dstack/_internal/core/backends/features.py,sha256=AtrLzkzfpkqiVOrIOhCwUS5GZFQOlVt9ubym_xq4VWM,3208
|
|
54
54
|
dstack/_internal/core/backends/models.py,sha256=Msj99dfzw3r6G_tG_SUTcSD-m6fK89fbJm5HTr4Xh1s,4862
|
|
55
55
|
dstack/_internal/core/backends/amddevcloud/__init__.py,sha256=IMhALdujfNvUdMJklEJ_vMWsjApR1iJWsYT30SNMa4s,72
|
|
56
56
|
dstack/_internal/core/backends/amddevcloud/backend.py,sha256=aUIOxKzXDDvmPEverL52Nj6zpel2zSZwZo0hTBrb6Pc,724
|
|
@@ -73,10 +73,10 @@ dstack/_internal/core/backends/azure/resources.py,sha256=cJWS2Yjxdg-XtjpdBxfVDZa
|
|
|
73
73
|
dstack/_internal/core/backends/azure/utils.py,sha256=taHMJq6UHRzUXLUcO2P5VCKy3wJaye2bG-6QdkEPNdY,1741
|
|
74
74
|
dstack/_internal/core/backends/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
75
75
|
dstack/_internal/core/backends/base/backend.py,sha256=hdFMHED1RMV9GVfLSU0yGhGE-cXlbLvt1coDA885PMM,505
|
|
76
|
-
dstack/_internal/core/backends/base/compute.py,sha256=
|
|
76
|
+
dstack/_internal/core/backends/base/compute.py,sha256=7w-nM4a-F7YdfXxQT8gTGVyaDbG6Hkh4GC_eeaefXHs,36645
|
|
77
77
|
dstack/_internal/core/backends/base/configurator.py,sha256=TKG5iJlOXxVT2agE_ruMW8JGt2dtwXY7ghmJN8bEWlw,4299
|
|
78
|
-
dstack/_internal/core/backends/base/models.py,sha256=
|
|
79
|
-
dstack/_internal/core/backends/base/offers.py,sha256=
|
|
78
|
+
dstack/_internal/core/backends/base/models.py,sha256=kT163t_pZX-lbbBMVYoHpbrSnSnOq3j1upXRtRszK4A,797
|
|
79
|
+
dstack/_internal/core/backends/base/offers.py,sha256=UfaGMVVspesRlSCcWSGL7vC8_4Y4sCauE7wnoa6D_EY,7639
|
|
80
80
|
dstack/_internal/core/backends/cloudrift/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
81
81
|
dstack/_internal/core/backends/cloudrift/api_client.py,sha256=mI3_ttwujfSunTiTIelnc1XaLBlfxsKsacrlyB12f8c,8178
|
|
82
82
|
dstack/_internal/core/backends/cloudrift/backend.py,sha256=Jz3nIQsa3TnMISVXK6EU43O0B7FgIMxwwaEBmd_s5BY,596
|
|
@@ -138,11 +138,10 @@ dstack/_internal/core/backends/local/backend.py,sha256=KJuNXUXrg60NhLywnExD1EXH2
|
|
|
138
138
|
dstack/_internal/core/backends/local/compute.py,sha256=tWNsKGKYlPx9yeqwlpAL_XExOYMPLcb6AsGAji3YO3M,3825
|
|
139
139
|
dstack/_internal/core/backends/nebius/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
140
140
|
dstack/_internal/core/backends/nebius/backend.py,sha256=2XqZIbSR8VzlfOnuVklXlDxNmwAkQj7txQN8VXF1j2E,566
|
|
141
|
-
dstack/_internal/core/backends/nebius/compute.py,sha256=
|
|
142
|
-
dstack/_internal/core/backends/nebius/configurator.py,sha256=
|
|
143
|
-
dstack/_internal/core/backends/nebius/
|
|
144
|
-
dstack/_internal/core/backends/nebius/
|
|
145
|
-
dstack/_internal/core/backends/nebius/resources.py,sha256=MVyMaS0-mZu2g-tJ4HF7GiT1hFFL7Mha9hXtP3XeT7o,14070
|
|
141
|
+
dstack/_internal/core/backends/nebius/compute.py,sha256=io9imiy1fxsufYoGlMp6SRdQuR4-xlwwVgf825aGG4c,15844
|
|
142
|
+
dstack/_internal/core/backends/nebius/configurator.py,sha256=xejKSnjSBwVCG6ooSjWyB1Q-sn3NJ98y98E68RNpCtQ,3796
|
|
143
|
+
dstack/_internal/core/backends/nebius/models.py,sha256=6iSAj7pr5OpSyA_GDk_QtRTAr_yGFf8cGSRM8hqp8XA,6267
|
|
144
|
+
dstack/_internal/core/backends/nebius/resources.py,sha256=j9QtqVHvFyKk2ei4fQW0mAO0294lMQvU5Pk7XUlV99M,14778
|
|
146
145
|
dstack/_internal/core/backends/oci/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
147
146
|
dstack/_internal/core/backends/oci/auth.py,sha256=8Cr18y_LOsyRP-16yfFpT70Cofpm0clB3KawS_7aRl4,717
|
|
148
147
|
dstack/_internal/core/backends/oci/backend.py,sha256=yXjVCt7n6BVLH0byYFbNFf-P9J0FwlNfxsYbKGMdoI4,536
|
|
@@ -153,9 +152,9 @@ dstack/_internal/core/backends/oci/models.py,sha256=fDlY7-A0WDQeiwJzwrQl6D5ENOc-
|
|
|
153
152
|
dstack/_internal/core/backends/oci/region.py,sha256=a41dmlv-7jh2vP2z-0wnf0Yzdh2Donjm9aXuMgFXXKo,2935
|
|
154
153
|
dstack/_internal/core/backends/oci/resources.py,sha256=-47u2vWvRnpNQmgz3A12vu1hSIQ-dqawDl5ndyF0nwY,29392
|
|
155
154
|
dstack/_internal/core/backends/runpod/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
156
|
-
dstack/_internal/core/backends/runpod/api_client.py,sha256=
|
|
155
|
+
dstack/_internal/core/backends/runpod/api_client.py,sha256=9v3_cY9Kua-nFdiOsKPYIJadW9Brjfls4QG0L1FUUFY,20482
|
|
157
156
|
dstack/_internal/core/backends/runpod/backend.py,sha256=GcLbySsGY29ZGHXSqTXCxUUoTK9pxVScKly0_fkNr8c,566
|
|
158
|
-
dstack/_internal/core/backends/runpod/compute.py,sha256
|
|
157
|
+
dstack/_internal/core/backends/runpod/compute.py,sha256=-iGEKveep0HFUCQbBSqbqKCc_3cg4oFVeUz8VK0q5f8,17451
|
|
159
158
|
dstack/_internal/core/backends/runpod/configurator.py,sha256=ZcDKN5ulmFMjSy9TlnV-2qxqPwTZUpIwfVwtShZL5fU,2242
|
|
160
159
|
dstack/_internal/core/backends/runpod/models.py,sha256=W3nO4sjvvWtfKYDZDVJ8oBSsgeGdSR-Z_PD7OpfDBgY,1466
|
|
161
160
|
dstack/_internal/core/backends/template/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -186,21 +185,22 @@ dstack/_internal/core/compatibility/runs.py,sha256=i2vJwTGuT1GZ2pYzUnM6DpewsjqbA
|
|
|
186
185
|
dstack/_internal/core/compatibility/volumes.py,sha256=ofjpVusuc-pq285bGrIh8PAqu0QlAd6NQgU3gfJQIc0,1546
|
|
187
186
|
dstack/_internal/core/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
188
187
|
dstack/_internal/core/models/common.py,sha256=QKdZM7L2NepzOPavkkI_q3g6WYCauMTbtZSZwWZVYHE,4704
|
|
188
|
+
dstack/_internal/core/models/compute_groups.py,sha256=8iW4XpUv4H0Sc9xmgKIEG-xBmNArse2SlNQxbELeoSw,1176
|
|
189
189
|
dstack/_internal/core/models/config.py,sha256=VYfgyWG2kfGhJxkC48vZDCbHahIEnO05mDDagJ5kA6s,787
|
|
190
190
|
dstack/_internal/core/models/configurations.py,sha256=G0MO8iKR1uRQABWuB_biglZQTCqLBK3vhxIKwJKEsTg,30998
|
|
191
191
|
dstack/_internal/core/models/envs.py,sha256=yq84YRFBILOy4x3XnGcTgYpbZ69eFTCQPgBCr9Ndov4,4969
|
|
192
192
|
dstack/_internal/core/models/files.py,sha256=CI1AQN07ACot_6RVkG7qLml07Ro0co2hGsAfcTamn3Y,1977
|
|
193
|
-
dstack/_internal/core/models/fleets.py,sha256=
|
|
193
|
+
dstack/_internal/core/models/fleets.py,sha256=5IGRs4_dc_up7FZQy6CIGqFtAoV7Xkn731FBUZkpX8w,15373
|
|
194
194
|
dstack/_internal/core/models/gateways.py,sha256=_O8EWwHWLdgNoWY4P4u71KM-uEr5DDp42LXfyv1qMDI,4054
|
|
195
195
|
dstack/_internal/core/models/health.py,sha256=Q0Z5pYbW-rD5wLn3-EDre2Q7X6tX7DFaglKz5SDv18U,570
|
|
196
196
|
dstack/_internal/core/models/instances.py,sha256=nITxuRsT3OqPMi1HFN9Bq0rTFwsIJPXbRgxhtfvSeQM,6915
|
|
197
197
|
dstack/_internal/core/models/logs.py,sha256=VOsgEsvUIRNNHivD6OZnPZNC52ioqafv7ccdnFQ1YI8,529
|
|
198
198
|
dstack/_internal/core/models/metrics.py,sha256=Xb8hCXUL-ncQ3PMsErIUAJTe9gwh5jyrQ4UQoZbibsc,269
|
|
199
199
|
dstack/_internal/core/models/placement.py,sha256=WJVq5ENJykyRarQzL2EeYQag_9_jV7VSAtR_xoFvPVM,720
|
|
200
|
-
dstack/_internal/core/models/profiles.py,sha256=
|
|
200
|
+
dstack/_internal/core/models/profiles.py,sha256=MK-OLgIM9cSfgJsqs0NWmeLdjKtOSEgZOvoCpYn69H4,14631
|
|
201
201
|
dstack/_internal/core/models/projects.py,sha256=hOZoL85q-873vT_Aw7FhzpS6DGVt0Y3yT8kpElrLFto,833
|
|
202
202
|
dstack/_internal/core/models/resources.py,sha256=-dLupzud5BSqxNABBjLVYTCKekbr9_mhaNGD1ZWBjgM,14544
|
|
203
|
-
dstack/_internal/core/models/runs.py,sha256=
|
|
203
|
+
dstack/_internal/core/models/runs.py,sha256=SBwfo3bKIREDMemSnTaJGuMqi68igTyRNd3lonWuf5o,22886
|
|
204
204
|
dstack/_internal/core/models/secrets.py,sha256=5T4B4eCeZmVQ8t22qYYlm4NUyX7VloiXCJuyDfE92QA,413
|
|
205
205
|
dstack/_internal/core/models/server.py,sha256=Hkc1v2s3KOiwslsWVmhUOAzcSeREoG-HD1SzSX9WUGg,152
|
|
206
206
|
dstack/_internal/core/models/services.py,sha256=2Hpi7j0Q1shaf_0wd0C0044AJAmuYi-D3qx3PH849oI,3076
|
|
@@ -281,30 +281,31 @@ dstack/_internal/proxy/lib/testing/auth.py,sha256=-firWTnis9Eogoi58BURv1S-te4Hf9
|
|
|
281
281
|
dstack/_internal/proxy/lib/testing/common.py,sha256=5e2VYboMqjBnUxkvidaWLoQ-uaBGh_hnURb_VJc38q4,1518
|
|
282
282
|
dstack/_internal/server/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
283
283
|
dstack/_internal/server/alembic.ini,sha256=rTauBJC8Jxlw76KUygW061OFAGV7GhwAStinlaxoYGY,3166
|
|
284
|
-
dstack/_internal/server/app.py,sha256=
|
|
284
|
+
dstack/_internal/server/app.py,sha256=QW3iM_77I-aUfeyVDqlSzQ8d7R0I-mwg__zgs1QTaXo,15852
|
|
285
285
|
dstack/_internal/server/db.py,sha256=NY0-K_7ok2OYLtPMeZ4EHlHK5N2a77uj4aJCVgWO2qE,3245
|
|
286
286
|
dstack/_internal/server/deps.py,sha256=31e8SU_ogPJWHIDLkgl7cuC_5V91xbJoLyAj17VanfM,670
|
|
287
287
|
dstack/_internal/server/main.py,sha256=kztKhCYNoHSDyJJQScWfZXE0naNleJOCQULW6dd8SGw,109
|
|
288
|
-
dstack/_internal/server/models.py,sha256=
|
|
288
|
+
dstack/_internal/server/models.py,sha256=OsBrPcVz9UA4X0-XtvBNGhIp8-VNbQECLEuckeXHB_o,36549
|
|
289
289
|
dstack/_internal/server/settings.py,sha256=7SRzSlTnUPNNjlZH-vpgwbwj95gI-LLtQite8LQnaTU,7418
|
|
290
|
-
dstack/_internal/server/background/__init__.py,sha256=
|
|
290
|
+
dstack/_internal/server/background/__init__.py,sha256=aKoWHuRWUMjxw0JTGAMYnnv8ADA7ddo-HlTvyvixp2o,5920
|
|
291
291
|
dstack/_internal/server/background/tasks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
292
292
|
dstack/_internal/server/background/tasks/common.py,sha256=n87hFjDNtS2x8mYbBnKLqhXus1P8qkdfqXG1TSeIJjM,1089
|
|
293
|
+
dstack/_internal/server/background/tasks/process_compute_groups.py,sha256=_oAA4N6C_4ntHIH-C1zeIqjXN20pkT03QB4-zvI6FKI,6763
|
|
293
294
|
dstack/_internal/server/background/tasks/process_fleets.py,sha256=0i_S3HCZp4AjQjER7j_pvIm22eYbrBwZnt9-0kgsq3E,11547
|
|
294
295
|
dstack/_internal/server/background/tasks/process_gateways.py,sha256=FH9RY3Tfmtw_UctCdYZDIRb2rgtmHdxTg6Oc4IBiDBA,8356
|
|
295
296
|
dstack/_internal/server/background/tasks/process_idle_volumes.py,sha256=mqnl8wvWaKTYvJMbgFJbOP-bZMRQG2vrhUnaNcyBldE,5223
|
|
296
|
-
dstack/_internal/server/background/tasks/process_instances.py,sha256=
|
|
297
|
+
dstack/_internal/server/background/tasks/process_instances.py,sha256=tDV4nO6wPKRkcfTWh-zivU9UT_9sp4v_D0UdQnglzwQ,45774
|
|
297
298
|
dstack/_internal/server/background/tasks/process_metrics.py,sha256=yKXe9J7m3oleK0C-oGJaYNkcPT8kqkz0nw-A7xqYbjE,6390
|
|
298
299
|
dstack/_internal/server/background/tasks/process_placement_groups.py,sha256=lgYIzjHG9EITK31yG6uQjlIcSwW5jsP9ZOBBZqW_eNs,4263
|
|
299
300
|
dstack/_internal/server/background/tasks/process_probes.py,sha256=dmug-_rmYiVLLF-imto-Ju1gPtENvHvCjHyilqgYuJw,6457
|
|
300
301
|
dstack/_internal/server/background/tasks/process_prometheus_metrics.py,sha256=_UZm37FVV4rhdd0So7HtcKbIgrSdAr5Vx-Uen_xizec,5459
|
|
301
302
|
dstack/_internal/server/background/tasks/process_running_jobs.py,sha256=ZSx8hQX3XFHetaJT78A9W0mSzTIsY5NgMrSD6gb0Mmw,45029
|
|
302
303
|
dstack/_internal/server/background/tasks/process_runs.py,sha256=K4km4XT0JYUf6JYbpKbEAyumUDBT21lqcMFTQ7pIsoY,25200
|
|
303
|
-
dstack/_internal/server/background/tasks/process_submitted_jobs.py,sha256=
|
|
304
|
+
dstack/_internal/server/background/tasks/process_submitted_jobs.py,sha256=uEvvm1jx0NvvKRh7WB9PoXuQUvmJvV1dj8F36je2P7U,47326
|
|
304
305
|
dstack/_internal/server/background/tasks/process_terminating_jobs.py,sha256=S7ZSDVMX-N0XMaMgwFa1QG_RAi48BP432s9AqHw4PMM,4066
|
|
305
306
|
dstack/_internal/server/background/tasks/process_volumes.py,sha256=_fMmkwLYsyX-kpW9pDrZVJvFTZEOPp0gpjyKBMW-zw0,5204
|
|
306
307
|
dstack/_internal/server/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
307
|
-
dstack/_internal/server/migrations/env.py,sha256
|
|
308
|
+
dstack/_internal/server/migrations/env.py,sha256=-JLTYwXv1h8MRWEBapedSVi60HVmgMg3KXatgu4t8Cg,3735
|
|
308
309
|
dstack/_internal/server/migrations/script.py.mako,sha256=Xi-IcoSN51tKWbAq1-nNVX7j6_89mf9AuX9DjnqUO_o,574
|
|
309
310
|
dstack/_internal/server/migrations/versions/065588ec72b8_add_vultr_to_backendtype_enum.py,sha256=wSdI_HWGUFgczhOPyoP6BTPmDbN3KmjokHVpZJGsq4Q,2112
|
|
310
311
|
dstack/_internal/server/migrations/versions/0e33559e16ed_update_instancestatus.py,sha256=PcGliOdzjGRzJY5dY_Jaxj6HSEoueBOY3sxwkSLFoAk,1657
|
|
@@ -349,6 +350,7 @@ dstack/_internal/server/migrations/versions/74a1f55209bd_store_enums_as_strings.
|
|
|
349
350
|
dstack/_internal/server/migrations/versions/7b24b1c8eba7_add_instancemodel_last_processed_at.py,sha256=o1A8nzrmMFcivBzaIMemCtRfCZ9mq1IuBko1CJXoVOo,2124
|
|
350
351
|
dstack/_internal/server/migrations/versions/7ba3b59d7ca6_add_runmodel_resubmission_attempt.py,sha256=FUvCRzOzkp8HjRYy0-kuOwvBGbwuCgyjXU7hD-AWRJs,1045
|
|
351
352
|
dstack/_internal/server/migrations/versions/7bc2586e8b9e_make_instancemodel_pool_id_optional.py,sha256=ch6yqwMldIiA7hlQbU5TGjzMbLpRyhiAcXqfUHlj-EI,980
|
|
353
|
+
dstack/_internal/server/migrations/versions/7d1ec2b920ac_add_computegroupmodel.py,sha256=tn0_ZorMip5EW5dIwG-RESxpGfpnw9TWpabH9UHJ-50,3266
|
|
352
354
|
dstack/_internal/server/migrations/versions/803c7e9ed85d_add_jobmodel_job_runtime_data.py,sha256=JRQL_aqCOBHw-iyL2-eYPkmC_i6dMh-ERfdgFi3SI9U,831
|
|
353
355
|
dstack/_internal/server/migrations/versions/82b32a135ea2_.py,sha256=9Bb4V65dZS1hUH1tBJ17qmkmDFgHeWwTlsKwTsR-W6Q,1716
|
|
354
356
|
dstack/_internal/server/migrations/versions/866ec1d67184_replace_retrypolicy_limit_with_.py,sha256=dExkOKVEytaQbUU_C2ITGg3PsweSWBOeiGwoiDy5IVY,2905
|
|
@@ -400,7 +402,7 @@ dstack/_internal/server/routers/metrics.py,sha256=Hoa_cKF2-b8XNCVPa92YkFnNZhz1KH
|
|
|
400
402
|
dstack/_internal/server/routers/projects.py,sha256=qTwISp2O5L3zoysPyikH_IIqZSTkriUFOvrQPP_PCsQ,4915
|
|
401
403
|
dstack/_internal/server/routers/prometheus.py,sha256=INRxPLYVJ6CTm2AwtSJ1z455RiCOpPJ3rbXMKGonGm8,1109
|
|
402
404
|
dstack/_internal/server/routers/repos.py,sha256=4pTInkm0XaOVUJ2pRnbc8LqTyACkE3w_BrB6icT7EUw,4039
|
|
403
|
-
dstack/_internal/server/routers/runs.py,sha256=
|
|
405
|
+
dstack/_internal/server/routers/runs.py,sha256=iiCzQiia_oTZGk1AXD24xDImHOeP1H8c3UUnvVS6ZaA,6725
|
|
404
406
|
dstack/_internal/server/routers/secrets.py,sha256=wWYUQbYcfWenUVEA4qdb08J7_6H3zmW3AsTIg-UTJ4o,2566
|
|
405
407
|
dstack/_internal/server/routers/server.py,sha256=MSOsOCyA0unv24nCs_OkJG_zHyuldQrONn2xaZjGOXo,474
|
|
406
408
|
dstack/_internal/server/routers/users.py,sha256=L3t6WWvcl6pd8EGC5P6gsZVTtygyEpxsIDfAOqCVhdo,4302
|
|
@@ -426,10 +428,11 @@ dstack/_internal/server/schemas/health/dcgm.py,sha256=i6lisMNDcuXNJnKtTztSwjjjYt
|
|
|
426
428
|
dstack/_internal/server/security/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
427
429
|
dstack/_internal/server/security/permissions.py,sha256=7lWM9jiNt-6cMms6t5g9Fn0H3B3-MEJ7gDCtL7xZ9Lg,8187
|
|
428
430
|
dstack/_internal/server/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
431
|
+
dstack/_internal/server/services/compute_groups.py,sha256=WX2S0FZng0nhWd58HheViIzgoyrms4CvWiIrOJ83YCc,890
|
|
429
432
|
dstack/_internal/server/services/config.py,sha256=yo8njslwfS7_blhbPPhOtzCMyg8N_mmFSw5aPvirSzw,10691
|
|
430
433
|
dstack/_internal/server/services/docker.py,sha256=DEEUFNYtyus4qDTBC33ujSZxl5wp8iKaKrpF2X-Bk88,5395
|
|
431
434
|
dstack/_internal/server/services/files.py,sha256=LJYFRtIJwB-QL-FhIu1408oqVVfa2lPZZlaTuZMo6pw,2847
|
|
432
|
-
dstack/_internal/server/services/fleets.py,sha256=
|
|
435
|
+
dstack/_internal/server/services/fleets.py,sha256=tohzx1tyYmCHO2AUb-wChYBuxMgl3zbXccPLx4mXfyg,37183
|
|
433
436
|
dstack/_internal/server/services/gpus.py,sha256=_CGqUsizWf_Bq-_JYcRkLg_yg4iKpsp-1_1m5MedBr0,14758
|
|
434
437
|
dstack/_internal/server/services/instances.py,sha256=-3m2WOg0R5W2X0IcMivT5C6Qha6RXcXyqmHOQLTvt-o,24160
|
|
435
438
|
dstack/_internal/server/services/locking.py,sha256=k00cS2SYUVekUIorsi6l5ofL-Q-Bnc5BnRZ1FAB6dDk,5239
|
|
@@ -443,7 +446,7 @@ dstack/_internal/server/services/probes.py,sha256=pdgtkOvBuvneUo4Gysg8_afibTf1wu
|
|
|
443
446
|
dstack/_internal/server/services/projects.py,sha256=PZdMCi1PVu68c_rYfwJRk7hgM6ddkekxlG_IU_957QI,25276
|
|
444
447
|
dstack/_internal/server/services/repos.py,sha256=ECl1cbpdzhTv1P3Y9IQmoWyHHF8iXFyL4s2drfwRDvg,9352
|
|
445
448
|
dstack/_internal/server/services/resources.py,sha256=VRFOih_cMJdc0c2m9nSGsX8vWAJQV3M6N87aqS_JXfw,699
|
|
446
|
-
dstack/_internal/server/services/runs.py,sha256=
|
|
449
|
+
dstack/_internal/server/services/runs.py,sha256=aqtYoc8fLdkHPMmDdpxNk1lU0-M--qro_SxPhi7fuQw,48807
|
|
447
450
|
dstack/_internal/server/services/secrets.py,sha256=M7RS4X1-DIL0f7m6BBb3PhsrAbxwKUD3_pZEWRfR3sM,5567
|
|
448
451
|
dstack/_internal/server/services/ssh.py,sha256=DT7U_8ON8o30-53WlJwjd5kVrKyt4KPgKeN63NW3P8U,2883
|
|
449
452
|
dstack/_internal/server/services/users.py,sha256=JhlgG4n2CU3cO7zAaA78YCTzb2nzE7GIBZgJ_eXLnOA,8649
|
|
@@ -459,9 +462,9 @@ dstack/_internal/server/services/gateways/__init__.py,sha256=ULqgi5yDkTJhSa8qfrD
|
|
|
459
462
|
dstack/_internal/server/services/gateways/client.py,sha256=Os6V1zS_fxmchmhyoIkoB4whsYmgm3c-XX54hoERO1k,7726
|
|
460
463
|
dstack/_internal/server/services/gateways/connection.py,sha256=31qellW-zc-l8cxb8se6AshX5yS_HZT8Nlvxy9JkOXQ,5630
|
|
461
464
|
dstack/_internal/server/services/gateways/pool.py,sha256=0LclTl1tyx-doS78LeaAKjr-SMp98zuwh5f9s06JSd0,1914
|
|
462
|
-
dstack/_internal/server/services/jobs/__init__.py,sha256=
|
|
465
|
+
dstack/_internal/server/services/jobs/__init__.py,sha256=ZE6EcYqxs_vz_mBz_ibdar_SDRgO7ge6Ew97JFaIuMA,28845
|
|
463
466
|
dstack/_internal/server/services/jobs/configurators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
464
|
-
dstack/_internal/server/services/jobs/configurators/base.py,sha256=
|
|
467
|
+
dstack/_internal/server/services/jobs/configurators/base.py,sha256=2uWnhbe2ZU8nUFlrgBpTLCa_vc6HZIe9ewSNEitj_9I,16079
|
|
465
468
|
dstack/_internal/server/services/jobs/configurators/dev.py,sha256=6dEbuRYr83XAmgie63uyq6jE0Er2Vd1kTZKPy8kpvY4,2635
|
|
466
469
|
dstack/_internal/server/services/jobs/configurators/service.py,sha256=Kbv9GycRX2FA09M5LcUCUzywTzYzjpLLDomwWT6IOG8,866
|
|
467
470
|
dstack/_internal/server/services/jobs/configurators/task.py,sha256=K2Z1QzWmgs3uvBQOD6H-YkAlmqObeH1ImfwZSnNEAUE,1486
|
|
@@ -486,7 +489,7 @@ dstack/_internal/server/services/proxy/routers/service_proxy.py,sha256=5oB-SX8f_
|
|
|
486
489
|
dstack/_internal/server/services/proxy/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
487
490
|
dstack/_internal/server/services/proxy/services/service_proxy.py,sha256=4JrSxHqhBYqU1oENii89Db-bzkFWExYrOy-0mNEhWBs,4879
|
|
488
491
|
dstack/_internal/server/services/requirements/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
489
|
-
dstack/_internal/server/services/requirements/combine.py,sha256=
|
|
492
|
+
dstack/_internal/server/services/requirements/combine.py,sha256=0XDC-WG_7RyQoa1yGWD6SxpRsl-z3DVY7udKCHzAtp8,8712
|
|
490
493
|
dstack/_internal/server/services/runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
491
494
|
dstack/_internal/server/services/runner/client.py,sha256=Ukgs7hrrV4HRLY-as7pQlJdelU6qPfAP5Nepz31oWVs,17719
|
|
492
495
|
dstack/_internal/server/services/runner/ssh.py,sha256=UdFdyNcFfCyGxMAJa2B1A206yfCplqAoXt31D7mG9c4,5056
|
|
@@ -604,13 +607,13 @@ dstack/_internal/server/statics/static/media/logo.f602feeb138844eda97c8cb6414614
|
|
|
604
607
|
dstack/_internal/server/statics/static/media/okta.12f178e6873a1100965f2a4dbd18fcec.svg,sha256=KqFI05gQM135zC1plF1WBRF2F7CyKL7km97WKsZjAHI,319
|
|
605
608
|
dstack/_internal/server/statics/static/media/theme.3994c817bb7dda191c1c9640dee0bf42.svg,sha256=ZxFFBVZWuRLqmWH4zhwGLNtKjOzHj-5MGJRunFAtu1I,561
|
|
606
609
|
dstack/_internal/server/testing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
607
|
-
dstack/_internal/server/testing/common.py,sha256=
|
|
610
|
+
dstack/_internal/server/testing/common.py,sha256=LPXiWQ2-4MEWl-hqm08RIf92GBAjd_C6GYOVGnQs4oM,37933
|
|
608
611
|
dstack/_internal/server/testing/conf.py,sha256=-zhujfFjTHNfQDOK-hBck32By11c_kC0OeinB3esQGg,1902
|
|
609
612
|
dstack/_internal/server/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
610
613
|
dstack/_internal/server/utils/common.py,sha256=PbjXtqYy1taKXpyG5ys8cIrz9MXqc9dBAsR_9D1brrk,1414
|
|
611
614
|
dstack/_internal/server/utils/logging.py,sha256=HqzSX151JIyE89bJ3aiELQdi1izr3F9SNwIZZMLXOSQ,1927
|
|
612
615
|
dstack/_internal/server/utils/provisioning.py,sha256=FUqAGmCDQbw6EjW1hnOlFPuchbcyAr9j9qIB66w7M9Q,13392
|
|
613
|
-
dstack/_internal/server/utils/routers.py,sha256=
|
|
616
|
+
dstack/_internal/server/utils/routers.py,sha256=emEOGayN6kwoUHPoW1H2hurY2g8evp8zt7YQwx3BqZI,5333
|
|
614
617
|
dstack/_internal/server/utils/sentry_utils.py,sha256=3vYP_CH4Q6Ju5BZ0js2Yw4Gg_gdD8XVIjNVUpOQYwX8,277
|
|
615
618
|
dstack/_internal/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
616
619
|
dstack/_internal/utils/common.py,sha256=9PtlJwE7B4F70nL_iP1J4ky33bUeW7r73Np7GYvrbmE,9548
|
|
@@ -633,6 +636,7 @@ dstack/_internal/utils/random_names.py,sha256=lVyzAmXhaSf2bAuvRFQ_ihLy42in1ydN4g
|
|
|
633
636
|
dstack/_internal/utils/ssh.py,sha256=SE10JKbnUyocoAhMs0dsLIUDOQmUtQGArZEUAFIXBPQ,12852
|
|
634
637
|
dstack/_internal/utils/tags.py,sha256=Gx4aZM85E_UUCGuFZbCEFxHB5DNgrtJP15_1tFFEd1c,1292
|
|
635
638
|
dstack/_internal/utils/typing.py,sha256=tHrhtkr3G6jkk-_FZyobdjLYvP5_YIgXbKsN-13dfvg,386
|
|
639
|
+
dstack/_internal/utils/version.py,sha256=YUFtzD4Tkg8SlCKhEVPnEsNbwSuzQubzNtX1Jm9lx9c,699
|
|
636
640
|
dstack/api/__init__.py,sha256=7qbG42qEHMyNDFRCz9FgfuimAKws3hV8eMXs6oRgh5c,1607
|
|
637
641
|
dstack/api/utils.py,sha256=_la3CRk1vgrPGkInPI1SOr33e8Jvh8ziJC32fjvKnaU,4188
|
|
638
642
|
dstack/api/_public/__init__.py,sha256=TqSWVMoidDy1iL4OqF6mMIwhl55pHD2A5vJcV9O61S0,3227
|
|
@@ -664,8 +668,8 @@ dstack/plugins/builtin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3
|
|
|
664
668
|
dstack/plugins/builtin/rest_plugin/__init__.py,sha256=lgTsq8Z6Km2F2UhPRChVB4vDM5ZpWtdk1iB1aa20ypA,440
|
|
665
669
|
dstack/plugins/builtin/rest_plugin/_models.py,sha256=9hgVuU6OGSxidar88XhQnNo9izYWeQvVH45ciErv-Es,1910
|
|
666
670
|
dstack/plugins/builtin/rest_plugin/_plugin.py,sha256=h3r3Yc3h22i93fifPTgTm9Oojd1sN1O4DP7ZTV-kWpM,5386
|
|
667
|
-
dstack-0.19.
|
|
668
|
-
dstack-0.19.
|
|
669
|
-
dstack-0.19.
|
|
670
|
-
dstack-0.19.
|
|
671
|
-
dstack-0.19.
|
|
671
|
+
dstack-0.19.35.dist-info/METADATA,sha256=SMTSuRif1pweSd2HEz2XOYb77squP2d7ZJCcXpwCpAg,20825
|
|
672
|
+
dstack-0.19.35.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
673
|
+
dstack-0.19.35.dist-info/entry_points.txt,sha256=GnLrMS8hx3rWAySQjA7tPNhtixV6a-brRkmal1PKoHc,58
|
|
674
|
+
dstack-0.19.35.dist-info/licenses/LICENSE.md,sha256=qDABaRGjSKVOib1U8viw2P_96sIK7Puo426784oD9f8,15976
|
|
675
|
+
dstack-0.19.35.dist-info/RECORD,,
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
from collections.abc import Container
|
|
2
|
-
from dataclasses import dataclass
|
|
3
|
-
from typing import Optional
|
|
4
|
-
|
|
5
|
-
from dstack._internal.core.models.instances import InstanceOffer
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
@dataclass(frozen=True)
|
|
9
|
-
class InfinibandFabric:
|
|
10
|
-
name: str
|
|
11
|
-
platform: str
|
|
12
|
-
region: str
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
# https://docs.nebius.com/compute/clusters/gpu#fabrics
|
|
16
|
-
INFINIBAND_FABRICS = [
|
|
17
|
-
InfinibandFabric("fabric-2", "gpu-h100-sxm", "eu-north1"),
|
|
18
|
-
InfinibandFabric("fabric-3", "gpu-h100-sxm", "eu-north1"),
|
|
19
|
-
InfinibandFabric("fabric-4", "gpu-h100-sxm", "eu-north1"),
|
|
20
|
-
InfinibandFabric("fabric-5", "gpu-h200-sxm", "eu-west1"),
|
|
21
|
-
InfinibandFabric("fabric-6", "gpu-h100-sxm", "eu-north1"),
|
|
22
|
-
InfinibandFabric("fabric-7", "gpu-h200-sxm", "eu-north1"),
|
|
23
|
-
InfinibandFabric("us-central1-a", "gpu-h200-sxm", "us-central1"),
|
|
24
|
-
InfinibandFabric("us-central1-b", "gpu-b200-sxm", "us-central1"),
|
|
25
|
-
]
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
def get_suitable_infiniband_fabrics(
|
|
29
|
-
offer: InstanceOffer, allowed_fabrics: Optional[Container[str]]
|
|
30
|
-
) -> list[str]:
|
|
31
|
-
if len(offer.instance.resources.gpus) < 8:
|
|
32
|
-
# From the create VM page in the Nebius Console:
|
|
33
|
-
# > Only virtual machines with at least 8 NVIDIA® Hopper® H100 or H200 GPUs
|
|
34
|
-
# > can be added to the cluster
|
|
35
|
-
return []
|
|
36
|
-
platform, _ = offer.instance.name.split()
|
|
37
|
-
return [
|
|
38
|
-
f.name
|
|
39
|
-
for f in INFINIBAND_FABRICS
|
|
40
|
-
if (
|
|
41
|
-
f.platform == platform
|
|
42
|
-
and f.region == offer.region
|
|
43
|
-
and (allowed_fabrics is None or f.name in allowed_fabrics)
|
|
44
|
-
)
|
|
45
|
-
]
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
def get_all_infiniband_fabrics() -> set[str]:
|
|
49
|
-
return {f.name for f in INFINIBAND_FABRICS}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|