dstack 0.19.16__py3-none-any.whl → 0.19.18__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.

Files changed (80) hide show
  1. dstack/_internal/cli/commands/secrets.py +92 -0
  2. dstack/_internal/cli/main.py +2 -0
  3. dstack/_internal/cli/services/completion.py +5 -0
  4. dstack/_internal/cli/services/configurators/fleet.py +13 -1
  5. dstack/_internal/cli/services/configurators/run.py +59 -17
  6. dstack/_internal/cli/utils/secrets.py +25 -0
  7. dstack/_internal/core/backends/__init__.py +10 -4
  8. dstack/_internal/core/backends/aws/compute.py +237 -18
  9. dstack/_internal/core/backends/base/compute.py +20 -2
  10. dstack/_internal/core/backends/cudo/compute.py +23 -9
  11. dstack/_internal/core/backends/gcp/compute.py +13 -7
  12. dstack/_internal/core/backends/lambdalabs/compute.py +2 -1
  13. dstack/_internal/core/compatibility/fleets.py +12 -11
  14. dstack/_internal/core/compatibility/gateways.py +9 -8
  15. dstack/_internal/core/compatibility/logs.py +4 -3
  16. dstack/_internal/core/compatibility/runs.py +41 -17
  17. dstack/_internal/core/compatibility/volumes.py +9 -8
  18. dstack/_internal/core/errors.py +4 -0
  19. dstack/_internal/core/models/common.py +7 -0
  20. dstack/_internal/core/models/configurations.py +11 -0
  21. dstack/_internal/core/models/files.py +67 -0
  22. dstack/_internal/core/models/runs.py +14 -0
  23. dstack/_internal/core/models/secrets.py +9 -2
  24. dstack/_internal/core/services/diff.py +36 -3
  25. dstack/_internal/server/app.py +22 -0
  26. dstack/_internal/server/background/__init__.py +61 -37
  27. dstack/_internal/server/background/tasks/process_fleets.py +19 -3
  28. dstack/_internal/server/background/tasks/process_gateways.py +1 -1
  29. dstack/_internal/server/background/tasks/process_instances.py +13 -2
  30. dstack/_internal/server/background/tasks/process_placement_groups.py +4 -2
  31. dstack/_internal/server/background/tasks/process_running_jobs.py +123 -15
  32. dstack/_internal/server/background/tasks/process_runs.py +23 -7
  33. dstack/_internal/server/background/tasks/process_submitted_jobs.py +36 -7
  34. dstack/_internal/server/background/tasks/process_terminating_jobs.py +5 -3
  35. dstack/_internal/server/background/tasks/process_volumes.py +2 -2
  36. dstack/_internal/server/migrations/versions/5f1707c525d2_add_filearchivemodel.py +39 -0
  37. dstack/_internal/server/migrations/versions/644b8a114187_add_secretmodel.py +49 -0
  38. dstack/_internal/server/models.py +33 -0
  39. dstack/_internal/server/routers/files.py +67 -0
  40. dstack/_internal/server/routers/secrets.py +57 -15
  41. dstack/_internal/server/schemas/files.py +5 -0
  42. dstack/_internal/server/schemas/runner.py +2 -0
  43. dstack/_internal/server/schemas/secrets.py +7 -11
  44. dstack/_internal/server/services/backends/__init__.py +1 -1
  45. dstack/_internal/server/services/files.py +91 -0
  46. dstack/_internal/server/services/fleets.py +5 -4
  47. dstack/_internal/server/services/gateways/__init__.py +4 -2
  48. dstack/_internal/server/services/jobs/__init__.py +19 -8
  49. dstack/_internal/server/services/jobs/configurators/base.py +25 -3
  50. dstack/_internal/server/services/jobs/configurators/dev.py +3 -3
  51. dstack/_internal/server/services/locking.py +101 -12
  52. dstack/_internal/server/services/proxy/repo.py +3 -0
  53. dstack/_internal/server/services/runner/client.py +8 -0
  54. dstack/_internal/server/services/runs.py +76 -47
  55. dstack/_internal/server/services/secrets.py +204 -0
  56. dstack/_internal/server/services/storage/base.py +21 -0
  57. dstack/_internal/server/services/storage/gcs.py +28 -6
  58. dstack/_internal/server/services/storage/s3.py +27 -9
  59. dstack/_internal/server/services/volumes.py +2 -2
  60. dstack/_internal/server/settings.py +19 -5
  61. dstack/_internal/server/statics/index.html +1 -1
  62. dstack/_internal/server/statics/{main-a4eafa74304e587d037c.js → main-d1ac2e8c38ed5f08a114.js} +86 -34
  63. dstack/_internal/server/statics/{main-a4eafa74304e587d037c.js.map → main-d1ac2e8c38ed5f08a114.js.map} +1 -1
  64. dstack/_internal/server/statics/{main-f53d6d0d42f8d61df1de.css → main-d58fc0460cb0eae7cb5c.css} +1 -1
  65. dstack/_internal/server/statics/static/media/google.b194b06fafd0a52aeb566922160ea514.svg +1 -0
  66. dstack/_internal/server/testing/common.py +50 -8
  67. dstack/_internal/settings.py +4 -0
  68. dstack/_internal/utils/files.py +69 -0
  69. dstack/_internal/utils/nested_list.py +47 -0
  70. dstack/_internal/utils/path.py +12 -4
  71. dstack/api/_public/runs.py +67 -7
  72. dstack/api/server/__init__.py +6 -0
  73. dstack/api/server/_files.py +18 -0
  74. dstack/api/server/_secrets.py +15 -15
  75. dstack/version.py +1 -1
  76. {dstack-0.19.16.dist-info → dstack-0.19.18.dist-info}/METADATA +13 -13
  77. {dstack-0.19.16.dist-info → dstack-0.19.18.dist-info}/RECORD +80 -67
  78. {dstack-0.19.16.dist-info → dstack-0.19.18.dist-info}/WHEEL +0 -0
  79. {dstack-0.19.16.dist-info → dstack-0.19.18.dist-info}/entry_points.txt +0 -0
  80. {dstack-0.19.16.dist-info → dstack-0.19.18.dist-info}/licenses/LICENSE.md +0 -0
@@ -1,10 +1,10 @@
1
1
  dstack/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- dstack/version.py,sha256=l4VG9XatLyzeZvnOByb8CNgiIJabgI25lw5qJ7Sx130,102
2
+ dstack/version.py,sha256=mNKq4-aXxSJ_NqCin2g10fL9y291a-MuPo3cCgiZhwU,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=024Q8_hgyiO-e11wl648lDOtuQBvWAtY_5Yw-PHBmT0,1143
5
+ dstack/_internal/settings.py,sha256=mlqH4Jwd-Qvxwt869dYXy4snQ0naUsHOwXiI0WSMojA,1246
6
6
  dstack/_internal/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- dstack/_internal/cli/main.py,sha256=cuOcaRxeWxO7zYM9dFRe5uc6U_RxEFjzS5sd4-8KkFA,3798
7
+ dstack/_internal/cli/main.py,sha256=-T-TNnwkCaPLOo5gh_WJ8ZruSbBqfdNYWdQ9NbhxgcU,3901
8
8
  dstack/_internal/cli/commands/__init__.py,sha256=e8EjD8Ej7Q3_APlxAN7NBwY7dGnW-DR91nH_RgcjBXg,2023
9
9
  dstack/_internal/cli/commands/apply.py,sha256=dZH2B3Yr-lB7hs-QeUnvX0FV0Yk2x19dEO5uSFo4098,4909
10
10
  dstack/_internal/cli/commands/attach.py,sha256=AfB7ITXJ59fCzCUwdC6nNDsiAOkAQlLQQyxFxwHdtu8,5118
@@ -19,20 +19,21 @@ dstack/_internal/cli/commands/metrics.py,sha256=ZS_dHD4_YK135J09xKpVTY_3CXzhj8Qh
19
19
  dstack/_internal/cli/commands/offer.py,sha256=6gem4Wz6WJmHur9-eiC65JwqObrGIAybROCAp5pr59k,4221
20
20
  dstack/_internal/cli/commands/project.py,sha256=V8gJwQWQGvGKQJPUyce_M7Ij_B7bOxYzo2IQgkLLHFE,6151
21
21
  dstack/_internal/cli/commands/ps.py,sha256=5RU4mcL4-FT4PcXktfKb4htCOPqia7mIuVGgfK7x9lY,1894
22
+ dstack/_internal/cli/commands/secrets.py,sha256=UfwxM3t-6PpuJLEvDxGrnyxv-tkDaS5M2gFPX1PgXxE,3082
22
23
  dstack/_internal/cli/commands/server.py,sha256=4K0tp_tIUStCEMpWrUkRLwe27IgAt99RPpk2H1AWnXk,2817
23
24
  dstack/_internal/cli/commands/stats.py,sha256=_CiJPQZuKHUzA1x7CHJP-leth3MmqiQ2-jwojq6G-e8,390
24
25
  dstack/_internal/cli/commands/stop.py,sha256=i7TreejSemrQcL7C37La22KkwM98O09IDMRNt8cw1NI,1000
25
26
  dstack/_internal/cli/commands/volume.py,sha256=h0bQQm6zx1Bq0kdBX5ksqPZk55wz-md_Kitm0RTDReg,3214
26
27
  dstack/_internal/cli/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
28
  dstack/_internal/cli/services/args.py,sha256=82rnGiYZfqMBIQh76bTXyvyXc85N_WDTTFppZJf8lic,755
28
- dstack/_internal/cli/services/completion.py,sha256=HvWHdZhXQWX1FyHf1OtQJxeuIXMXBKcoa5UjNRr0AN0,2984
29
+ dstack/_internal/cli/services/completion.py,sha256=ro-XyE6xftdsY4uY-8eIv1tDtEJBQH_-bx9xg1sGDf4,3171
29
30
  dstack/_internal/cli/services/profile.py,sha256=zfLRuesv5DSnLkbOU-TouvYmGGaKvw33yTVvK7HbxII,5853
30
31
  dstack/_internal/cli/services/repos.py,sha256=ImJuElGjsR4OQ7dBquy4PCQUbBM4bR4vhyLwMrVBS7k,3307
31
32
  dstack/_internal/cli/services/configurators/__init__.py,sha256=z94VPBFqybP8Zpwy3CzYxmpPAqYBOvRRLpXoz2H4GKI,2697
32
33
  dstack/_internal/cli/services/configurators/base.py,sha256=bGfde2zoma28lLE8MUACO4-NKT1CdJJQJoXrzjpz0mQ,3360
33
- dstack/_internal/cli/services/configurators/fleet.py,sha256=jm4tNH6QQVplLdboCTlvRYUee3nZ0UYb_qLTrvtYVYM,14049
34
+ dstack/_internal/cli/services/configurators/fleet.py,sha256=mUl_r3MzxtVs4djzRLa5iWLt8xltn7lm9MaL-Yi7PYc,14489
34
35
  dstack/_internal/cli/services/configurators/gateway.py,sha256=czB2s89s7IowOmWnpDwWErPAUlW3FvFMizImhrkQiBM,8927
35
- dstack/_internal/cli/services/configurators/run.py,sha256=7DVTUa69Fhr96AE_y2JXXpea4VQaDZ5c40pB2u_MBGc,25104
36
+ dstack/_internal/cli/services/configurators/run.py,sha256=NaUuNF9MnzJOatadXCLgPrFKYYv3hhRNGrCXJL4Q2QM,26945
36
37
  dstack/_internal/cli/services/configurators/volume.py,sha256=riMXLQbgvHIIFwLKdHfad-_0iE9wE3G_rUmXU5P3ZS8,8519
37
38
  dstack/_internal/cli/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
38
39
  dstack/_internal/cli/utils/common.py,sha256=rfmzqrsgR3rXW3wj0vxDdvrhUUg2aIy4A6E9MZbd55g,1763
@@ -40,18 +41,19 @@ dstack/_internal/cli/utils/fleet.py,sha256=ch-LN1X9boSm-rFLW4mAJRmz0XliLhH0LvKD2
40
41
  dstack/_internal/cli/utils/gateway.py,sha256=qMYa1NTAT_O98x2_mSyWDRbiHj5fqt6xUXFh9NIUwAM,1502
41
42
  dstack/_internal/cli/utils/rich.py,sha256=Gx1MJU929kMKsbdo9qF7XHARNta2426Ssb-xMLVhwbQ,5710
42
43
  dstack/_internal/cli/utils/run.py,sha256=lpndMpsj7BJvOzHkDyW_O8b9EHy-QZo2idwOosJOZOU,9485
44
+ dstack/_internal/cli/utils/secrets.py,sha256=c7an9e8HwB24oiP1q225G1dhWcvCKw4aZtN0rN38_PE,654
43
45
  dstack/_internal/cli/utils/updates.py,sha256=pGr5keEmHojnbY0ayjWL4GWTz4ParY6fP85tHpJ11pI,3043
44
46
  dstack/_internal/cli/utils/volume.py,sha256=mU9I06dVMFbpjfkefxrZNoSWadKLoib3U14rHudNQN4,1975
45
47
  dstack/_internal/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
46
48
  dstack/_internal/core/consts.py,sha256=c1Yd5UY6Qx7KeuYgloXWncWhMsYj6TqwlElda7NtB98,254
47
- dstack/_internal/core/errors.py,sha256=tJcZXwrvWvvtzIqkzLxJJMrhDuAQl8eOk0xpKCqqHzw,3313
48
- dstack/_internal/core/backends/__init__.py,sha256=fwgV8CN8Ap6MZmWklMGHHf0roliBtqne-ijjVOpWcgc,2467
49
+ dstack/_internal/core/errors.py,sha256=VTEmJ6C0zWL3fUL8ObRjB4rNL7_NxwEuWf0hZs6orWo,3377
50
+ dstack/_internal/core/backends/__init__.py,sha256=MOZt5mNbcaAaamjLuZKUk9fJCUwk7EAMn8sbE02NwD0,2765
49
51
  dstack/_internal/core/backends/configurators.py,sha256=7LFad72b6zdzzDRaFUaQrJLf6PxGRsxR3tfyn15rQbA,3976
50
52
  dstack/_internal/core/backends/models.py,sha256=byP6YFXQHbkOyuX8MxwRvPfjtk87o9oCefR8U-lvsAI,4319
51
53
  dstack/_internal/core/backends/aws/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
52
54
  dstack/_internal/core/backends/aws/auth.py,sha256=BAe3HAedoAO42Fbv7YhpODKWlyil8M0PuRJsL-_u_kw,978
53
55
  dstack/_internal/core/backends/aws/backend.py,sha256=pjROH-S9pgrSMm-Eox_ocL7cTU6mIMRxvURq7Vi-2J8,876
54
- dstack/_internal/core/backends/aws/compute.py,sha256=fvFkB-SLgOHJNm-CgGcuuwsc3GtU5ctjW823KMA5D4k,36563
56
+ dstack/_internal/core/backends/aws/compute.py,sha256=j6a8lJwu3bVNzjNkSQ29Yu6w1WqWlNtcgT9kQQlRyNs,44300
55
57
  dstack/_internal/core/backends/aws/configurator.py,sha256=gGynfTQW89hUt7acAjVnZnRtCbzhno7l4baCKnBEuQI,7499
56
58
  dstack/_internal/core/backends/aws/models.py,sha256=EUCHXHmZnshe3rwI9UtjilwcUMu1Z7MO4Y4-nlZ_IcA,4404
57
59
  dstack/_internal/core/backends/aws/resources.py,sha256=ccvdQd2H1DuUupdzMtqf86nkrenYPBJb1k3VgHu5Gp4,23610
@@ -65,7 +67,7 @@ dstack/_internal/core/backends/azure/resources.py,sha256=cJWS2Yjxdg-XtjpdBxfVDZa
65
67
  dstack/_internal/core/backends/azure/utils.py,sha256=taHMJq6UHRzUXLUcO2P5VCKy3wJaye2bG-6QdkEPNdY,1741
66
68
  dstack/_internal/core/backends/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
67
69
  dstack/_internal/core/backends/base/backend.py,sha256=hdFMHED1RMV9GVfLSU0yGhGE-cXlbLvt1coDA885PMM,505
68
- dstack/_internal/core/backends/base/compute.py,sha256=D4rRxUHUZOkUfAhmDE6MaS4AyHEPdRVcnS4LxQ-DF9E,28719
70
+ dstack/_internal/core/backends/base/compute.py,sha256=uJijJFRX_37-UlS0DWRGx-jZ3JxQ6jkN1I_5YWUfksE,29583
69
71
  dstack/_internal/core/backends/base/configurator.py,sha256=OCv8N2oxcxy3In2zS1PKiCJ0a-COZwxGjBz2FYkQnfg,3807
70
72
  dstack/_internal/core/backends/base/models.py,sha256=Ij0osOl-T-ABsKLoVg2eY81DMkwdWkevAnjXj2QnLXI,532
71
73
  dstack/_internal/core/backends/base/offers.py,sha256=2BARohq0sJk0a9K0Z4OuIbpIQNSSq8ZTzAnO8pCxO4M,6228
@@ -78,7 +80,7 @@ dstack/_internal/core/backends/cloudrift/models.py,sha256=tFpcG68OghznpzmspjdnlV
78
80
  dstack/_internal/core/backends/cudo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
79
81
  dstack/_internal/core/backends/cudo/api_client.py,sha256=ygq1Gx7ZvwKaifdXtvzDSw4xR4ZH6UWd5J47BjuaGh0,3685
80
82
  dstack/_internal/core/backends/cudo/backend.py,sha256=i13YoAkUfIStc3Yyyt_3YmL30eVrKtrhwnE9_B1iBRI,546
81
- dstack/_internal/core/backends/cudo/compute.py,sha256=wGMdH4Me-IHuQ-U1_XiuOqtHT86AgHyofUi449eqijo,6466
83
+ dstack/_internal/core/backends/cudo/compute.py,sha256=XlhBQ02TB5Co3IKXcrKqko0YodZWFSTOLlg0LQmLNzI,6680
82
84
  dstack/_internal/core/backends/cudo/configurator.py,sha256=pkAT1MtL6_yYvYoqCglvPE-DiUdL8-XEviyN1yUSYyw,2056
83
85
  dstack/_internal/core/backends/cudo/models.py,sha256=6sfEqY2hvTpIACkyT4mhD3D8K5TsW_pupys9nqtrgoI,1055
84
86
  dstack/_internal/core/backends/datacrunch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -91,7 +93,7 @@ dstack/_internal/core/backends/dstack/models.py,sha256=Jbe0Syez43N5i97TlIc8l-5Vn
91
93
  dstack/_internal/core/backends/gcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
92
94
  dstack/_internal/core/backends/gcp/auth.py,sha256=VWCn34hapaZ3E0OHCoiAVL97o3s64RF9w85CZ6xdtmk,2235
93
95
  dstack/_internal/core/backends/gcp/backend.py,sha256=OvTv1c7j4LTPCIEtkwD3-q6Eo1QET8xlM8CzbY0hLmI,572
94
- dstack/_internal/core/backends/gcp/compute.py,sha256=OObZgsOyQC-FvcA75xdO7MIoiFr9ncl5-Av6TtCOxdQ,42218
96
+ dstack/_internal/core/backends/gcp/compute.py,sha256=csmOXa13Rb3zBOjOHPyUU3lSRGWw6LeEKwtm29YKEog,42448
95
97
  dstack/_internal/core/backends/gcp/configurator.py,sha256=mvI7WMz8cC1YnN-0KFIIEqkfcEBehRJI0WgKnqILjv0,6730
96
98
  dstack/_internal/core/backends/gcp/models.py,sha256=biLA3rlFcoPatAZpKycuIl-8PdnNSAFiDCJjov65_zo,4612
97
99
  dstack/_internal/core/backends/gcp/resources.py,sha256=2jpg24NH4Ov4J4Of1F3DPkwEWkRxEi-x4ZTx8XSNGIQ,16926
@@ -106,7 +108,7 @@ dstack/_internal/core/backends/kubernetes/utils.py,sha256=k0cmjqMoNfJ_pAe6W82exV
106
108
  dstack/_internal/core/backends/lambdalabs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
107
109
  dstack/_internal/core/backends/lambdalabs/api_client.py,sha256=WaBO7VrPB4kbMQJDxjFxx0HEtAoSncQvH-cahWnVxx4,2688
108
110
  dstack/_internal/core/backends/lambdalabs/backend.py,sha256=zVU_M2EBbP-9-snmh64GTKeYAX84-g5kwrZ9d7xETzs,610
109
- dstack/_internal/core/backends/lambdalabs/compute.py,sha256=HJTTbfHwU5-_-FwisZDrC3pl970fEithFysbe_lRvCk,8067
111
+ dstack/_internal/core/backends/lambdalabs/compute.py,sha256=yzxJ4YMHyb231lR9JGLvqI_R4uExv_4pFPnFCB4USOs,8087
110
112
  dstack/_internal/core/backends/lambdalabs/configurator.py,sha256=JYtAFemQRi6tXTt6rfbIa6rCQIKjn86gQvbjxeGUrDs,2135
111
113
  dstack/_internal/core/backends/lambdalabs/models.py,sha256=c9dAYd0wjun2dvMLUZO4D09XvEskBRehjLDN_nwbSEU,1036
112
114
  dstack/_internal/core/backends/local/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -160,16 +162,17 @@ dstack/_internal/core/backends/vultr/compute.py,sha256=-6Mw7ADW6HaqzK34I3T5RVhre
160
162
  dstack/_internal/core/backends/vultr/configurator.py,sha256=YdBeMveKaUDiLESTG3AzpSpQRzevUGpdnCGJx4tUR7g,2190
161
163
  dstack/_internal/core/backends/vultr/models.py,sha256=TkqK_lW6w5k_7wsoFiKDb6NXuTrHL6ypVm59FoyaSFY,928
162
164
  dstack/_internal/core/compatibility/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
163
- dstack/_internal/core/compatibility/fleets.py,sha256=Ndrib4Wtam-az1o2O4unBrSj3MpNwIBfU3Q8uSPNGHc,2674
164
- dstack/_internal/core/compatibility/gateways.py,sha256=gMAHSyhStn1ij51efEhEpUCZg7y8FPeppNITUctJqyU,1284
165
- dstack/_internal/core/compatibility/logs.py,sha256=ETqp59CXRocZrJ34L1nYQ_WfJN24I9AV03tXxWjyEho,522
166
- dstack/_internal/core/compatibility/runs.py,sha256=BDN0Vbbtkw94GEu-L_79J3ezTThftoNSvnLGOjmUelk,6102
167
- dstack/_internal/core/compatibility/volumes.py,sha256=WVsnAh3pWEkytFWp9irV4QPfkXCH-rfAUOcye7XDoDs,1252
165
+ dstack/_internal/core/compatibility/fleets.py,sha256=TXkJ9kr8_dtPHzlVe6-JsZ1OJC2rAS92xj_cHjgGeAQ,2930
166
+ dstack/_internal/core/compatibility/gateways.py,sha256=4h_lfpN9KJFyLTFexq-wlu74Rwpk0anV67v38aJ-SnI,1463
167
+ dstack/_internal/core/compatibility/logs.py,sha256=keXt3OFKR0CjD_XMsetzRu8yQGCz7CWBwycuP267L_Q,629
168
+ dstack/_internal/core/compatibility/runs.py,sha256=sKk5tmsOtTN8j7IyL_b8-YoTRG8c8wuojlyespI-u9Q,7313
169
+ dstack/_internal/core/compatibility/volumes.py,sha256=Oqstkaftu7Hkab6DeSb1_logHzhSCwSidXSyTcZBEMI,1431
168
170
  dstack/_internal/core/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
169
- dstack/_internal/core/models/common.py,sha256=XWd79dmFGMrdpTcStH5fVmNXCKE0s7FsIorPL0saQ8w,2138
171
+ dstack/_internal/core/models/common.py,sha256=YOrNLLk9Y3dKueUgB5os7jB7m-wOFJ9qyIvxyqbTE3k,2431
170
172
  dstack/_internal/core/models/config.py,sha256=JJ7rT7dztzTWCY5TkoyxXxTvG5D4IFYhGe7EzwkLOWQ,581
171
- dstack/_internal/core/models/configurations.py,sha256=lYbVQC6Kz3rA3c1pmfdRi-B53kZF5R_jACUthvQg4qU,20004
173
+ dstack/_internal/core/models/configurations.py,sha256=ikdeN0r_RkDH_pU2c79YYX-xRuw8UVj4bRqdEDImO7o,20398
172
174
  dstack/_internal/core/models/envs.py,sha256=yq84YRFBILOy4x3XnGcTgYpbZ69eFTCQPgBCr9Ndov4,4969
175
+ dstack/_internal/core/models/files.py,sha256=j6hVyOxSXQJTpoz6zh6KXHIs4w4tunCsgQuFMN_m13A,1988
173
176
  dstack/_internal/core/models/fleets.py,sha256=aqDVlZMc71NjLrzwBF3qz-dHzocQT5Qip7QWl8ZbKuA,12263
174
177
  dstack/_internal/core/models/gateways.py,sha256=_O8EWwHWLdgNoWY4P4u71KM-uEr5DDp42LXfyv1qMDI,4054
175
178
  dstack/_internal/core/models/instances.py,sha256=Vwh-D3WB_NBdG_1BPHBEaX60n4MtYksN2gf7zA-icYs,6642
@@ -179,8 +182,8 @@ dstack/_internal/core/models/placement.py,sha256=WJVq5ENJykyRarQzL2EeYQag_9_jV7V
179
182
  dstack/_internal/core/models/profiles.py,sha256=SSbslQfKoa6Sg8A_Z26xDNTujGZc51we11G5rlqfBpY,11659
180
183
  dstack/_internal/core/models/projects.py,sha256=HmmlrvUSSEjfGfX7X5tmGJ-CbKeyGK6shHD5OghDNks,671
181
184
  dstack/_internal/core/models/resources.py,sha256=rsf6hAhi5bfSb_Z9VcS3UoEG0G8Ohl6ekyrOStLOAqw,14114
182
- dstack/_internal/core/models/runs.py,sha256=LqZWEfHyNvWf3-7wy8OgEIyZcTEic5pjp2PC3V8BcNc,23605
183
- dstack/_internal/core/models/secrets.py,sha256=IQyemsNpSzqOCB-VlVTuc4gyPFmXXO4mhko0Ur0ey3I,221
185
+ dstack/_internal/core/models/runs.py,sha256=gBZag9C4dWwzNW_UnGgXwX6bpbfQvXlC3WmvohhPvHI,24572
186
+ dstack/_internal/core/models/secrets.py,sha256=5T4B4eCeZmVQ8t22qYYlm4NUyX7VloiXCJuyDfE92QA,413
184
187
  dstack/_internal/core/models/server.py,sha256=Hkc1v2s3KOiwslsWVmhUOAzcSeREoG-HD1SzSX9WUGg,152
185
188
  dstack/_internal/core/models/services.py,sha256=2Hpi7j0Q1shaf_0wd0C0044AJAmuYi-D3qx3PH849oI,3076
186
189
  dstack/_internal/core/models/unix.py,sha256=KxnSQELnkAjjuUgYcQKVkf-UAbYREBD8WCWDvHfOkuA,1915
@@ -195,7 +198,7 @@ dstack/_internal/core/models/repos/remote.py,sha256=r50v39KHhoVMfdnIHe58VJEi2Abm
195
198
  dstack/_internal/core/models/repos/virtual.py,sha256=8g4hGSQ6Z8oDKoF6cj2souJ2A5vRop5OyFCQ5z84rw4,2582
196
199
  dstack/_internal/core/services/__init__.py,sha256=UVVcj26WYVgo7jHzD07sNRqSOO7zA3QzQv-9LnCDqR4,415
197
200
  dstack/_internal/core/services/api_client.py,sha256=HTQ0fcZciUh-nmfV09hUt__Z4N2zq_R12xAiYXD0Jy0,650
198
- dstack/_internal/core/services/diff.py,sha256=lw7vTOYnGtRWlEulgVlHt1KjLdC8VJpfBcqMRuFZzSQ,532
201
+ dstack/_internal/core/services/diff.py,sha256=Z9SeJbaTlTLSq3mUIPdKWgpw-Hba0WZf10O7JtkAp9U,1594
199
202
  dstack/_internal/core/services/logs.py,sha256=7_eJdH4MD-3rVb4A6rIJfjj_p4jzUOCmjRVlPD-UDsg,2166
200
203
  dstack/_internal/core/services/profiles.py,sha256=JfzujgdM7Z_ABPgh2km2byy-Y9xZsdgmAZIKZl2LU2Q,1622
201
204
  dstack/_internal/core/services/repos.py,sha256=j8Jr1AyTBLXTY3UKMJNnpJEU3xvH1DHnxA7YeBRpZ44,5133
@@ -259,26 +262,26 @@ dstack/_internal/proxy/lib/testing/auth.py,sha256=-firWTnis9Eogoi58BURv1S-te4Hf9
259
262
  dstack/_internal/proxy/lib/testing/common.py,sha256=5e2VYboMqjBnUxkvidaWLoQ-uaBGh_hnURb_VJc38q4,1518
260
263
  dstack/_internal/server/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
261
264
  dstack/_internal/server/alembic.ini,sha256=rTauBJC8Jxlw76KUygW061OFAGV7GhwAStinlaxoYGY,3166
262
- dstack/_internal/server/app.py,sha256=QU6lzOfZslG4C4Fv58P7M3J5xXly94V2ZpfNYsoW09w,13141
265
+ dstack/_internal/server/app.py,sha256=mId4ZSdinjjLQTt9r26XzNat4-edP9cm-HjGNI4Igl0,14041
263
266
  dstack/_internal/server/db.py,sha256=WjuqmjG3QAZmSMCeUaJ_ynbowlHuNAvYCZO649cTPHc,3210
264
267
  dstack/_internal/server/deps.py,sha256=31e8SU_ogPJWHIDLkgl7cuC_5V91xbJoLyAj17VanfM,670
265
268
  dstack/_internal/server/main.py,sha256=kztKhCYNoHSDyJJQScWfZXE0naNleJOCQULW6dd8SGw,109
266
- dstack/_internal/server/models.py,sha256=nRLgp9VvyRjGi9hGr9CTn2hCZJfHs3-zrW5nS6iibXc,29941
267
- dstack/_internal/server/settings.py,sha256=7f2ur03yIElq2y6XvRtWMSOWWycx1jQMqCjksx0lgro,4432
268
- dstack/_internal/server/background/__init__.py,sha256=8kTbhEHCeXTibsOlHY1HwqIO6gGb4q8fUa2fcDrah1c,3893
269
+ dstack/_internal/server/models.py,sha256=L7uGZT9MB5aI13kWPSPAK9YFQqAOyTyEbLu7MmTozoo,31283
270
+ dstack/_internal/server/settings.py,sha256=HvNwlPAebVmH0nDvYf7R8JOxd8vddVbR4Mj0EG1VG5I,4960
271
+ dstack/_internal/server/background/__init__.py,sha256=gZdiVZYWzPtb_yIThtoju0xbQgiiNRLn6FWCvbFGkYQ,5216
269
272
  dstack/_internal/server/background/tasks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
270
273
  dstack/_internal/server/background/tasks/common.py,sha256=N7xSXbf2MoBWgbJ1e3AEzYBTf1Gn-pDXYND8Zr_YCJQ,970
271
- dstack/_internal/server/background/tasks/process_fleets.py,sha256=IgZcNHPl_qG22SrQvVR2rrPPDclWT06kE4agjVWhSMM,3001
272
- dstack/_internal/server/background/tasks/process_gateways.py,sha256=C76dfaeCoiyhfmnFrY4gmNKy8IoY4P9-4kjo37xqeH8,7033
273
- dstack/_internal/server/background/tasks/process_instances.py,sha256=iOdRCG8K7PnTPfl2Ya2rTuSz01jo6B97OkstBvrb918,42871
274
+ dstack/_internal/server/background/tasks/process_fleets.py,sha256=i_94wf8rOBFnBjOF0kW2by6B623o-y2N_QtIbeTxDjQ,3505
275
+ dstack/_internal/server/background/tasks/process_gateways.py,sha256=EiLm5PsajyVhLbCDNkB_XauhGn-2L68j19ZpsICSjco,7054
276
+ dstack/_internal/server/background/tasks/process_instances.py,sha256=jZ5A_3BVg_15WnpKkoPWqh65IHzRoCIS1EsFgei-UmM,43347
274
277
  dstack/_internal/server/background/tasks/process_metrics.py,sha256=aJPHnmKQE19JVxJVwGFyyK7buUcbp9Smw9CkFO2DPAk,6135
275
- dstack/_internal/server/background/tasks/process_placement_groups.py,sha256=SQ9DaZHC18d6koRQf2UxuDV9-gxIUJIvhLnuclodIeQ,4124
278
+ dstack/_internal/server/background/tasks/process_placement_groups.py,sha256=FylKGqz7RMBduJNlfuaGdgiPb6oneU49pdqvyinuV8Y,4167
276
279
  dstack/_internal/server/background/tasks/process_prometheus_metrics.py,sha256=9VoGFqdiXcVkCi_NV1VqQdqllDkB0bHIqOHKMIZK1Fg,5183
277
- dstack/_internal/server/background/tasks/process_running_jobs.py,sha256=KPPpLLtl0XyfOusZ5zG-wVmTA83GDVDQqb5AgYfvEJI,39280
278
- dstack/_internal/server/background/tasks/process_runs.py,sha256=WQrzQuaSI8b6hC9JAdsPINZm_NVkCNg1QkIxt10R8dw,21962
279
- dstack/_internal/server/background/tasks/process_submitted_jobs.py,sha256=FLThK7Xdf4llGbRyfNZEdoewX33zB7R4EVgqOqRo6Xs,27635
280
- dstack/_internal/server/background/tasks/process_terminating_jobs.py,sha256=QrlLMrTFrdc5-YdK6lwlD4V9E_KVJPp-LDT2z0Ahk00,3832
281
- dstack/_internal/server/background/tasks/process_volumes.py,sha256=TqeGVu4h-bcOTKgQ5C8r3rDb39DetTHS6sLXPWnaVI0,5105
280
+ dstack/_internal/server/background/tasks/process_running_jobs.py,sha256=Nz9LgGTrAIkHDHpeTySy-xukfcdXtVYQAcQLrFLNRfo,43773
281
+ dstack/_internal/server/background/tasks/process_runs.py,sha256=JisPDw0-5Uf3JD2Cb3mTXDjwbABJ5cj-EeLYgk7d74s,22608
282
+ dstack/_internal/server/background/tasks/process_submitted_jobs.py,sha256=LSJ-D98mczAJBGfY9ekoijHyNC1g3sxzRW-iz-eM1go,28775
283
+ dstack/_internal/server/background/tasks/process_terminating_jobs.py,sha256=j7Ph2tgCHlUYHU9-ONPSQCJ8qLdWrN2rb2l2nCYukzg,3896
284
+ dstack/_internal/server/background/tasks/process_volumes.py,sha256=Svvi2USV8S_B6OfKg3hWSXjSanDmAfL1pQYe9EnqTNk,5134
282
285
  dstack/_internal/server/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
283
286
  dstack/_internal/server/migrations/env.py,sha256=RuhcN-CST86VzMatjqBMdYcG0fGGMZl_o1YgZTL-WDw,2831
284
287
  dstack/_internal/server/migrations/script.py.mako,sha256=Xi-IcoSN51tKWbAq1-nNVX7j6_89mf9AuX9DjnqUO_o,574
@@ -309,8 +312,10 @@ dstack/_internal/server/migrations/versions/555138b1f77f_change_instancemodel_fo
309
312
  dstack/_internal/server/migrations/versions/58aa5162dcc3_add_gatewaymodel_configuration.py,sha256=pT07eQypORZtWp6K9hwP-wq_K_Tx4EYeKJ9FghIHKyI,834
310
313
  dstack/_internal/server/migrations/versions/5ad8debc8fe6_fixes_for_psql.py,sha256=OoZKEtzkvLPb5v0CHeM_bhJn_I5ZxKtjXk7S1_I-wJI,9429
311
314
  dstack/_internal/server/migrations/versions/5ec538b70e71_replace_instansestatus.py,sha256=8mFsp2g5pmQm--jjBEgOiuYELS9_Lah66nbURd7sHCo,807
315
+ dstack/_internal/server/migrations/versions/5f1707c525d2_add_filearchivemodel.py,sha256=XE-mRsethvu113mCNnX4PxK215N0swjtBAgizVTEOS0,1127
312
316
  dstack/_internal/server/migrations/versions/60e444118b6d_add_jobprometheusmetrics.py,sha256=PKqFqe6x6bkO8hrv73fes4uyBpzsemqwp3c-i5XzaS8,1195
313
317
  dstack/_internal/server/migrations/versions/63c3f19cb184_add_jobterminationreason_inactivity_.py,sha256=UyNT3d8Osa2MpuODQRdmmbHlt-qT-wHNNOUTzUEcLLI,2512
318
+ dstack/_internal/server/migrations/versions/644b8a114187_add_secretmodel.py,sha256=tUGkHuJFF2N1pydVXxJvT4F7v38pqlHAWB_eGym4aCg,1601
314
319
  dstack/_internal/server/migrations/versions/686fb8341ea5_add_user_emails.py,sha256=0FlRf5Mis9ZIc7X6M9yqPtyFqR2SKCTUFfZeDbqAXBU,809
315
320
  dstack/_internal/server/migrations/versions/6c1a9d6530ee_add_jobmodel_exit_status.py,sha256=aYZIGWhM38hZ6SkrUsFESOmOIVhSAIbA9dbyFKsLUr8,615
316
321
  dstack/_internal/server/migrations/versions/710e5b3fac8f_add_encryption.py,sha256=nBURp4A6TpT13H1ccH4WyzkU2GGy3uDGKCNG88cAciw,1827
@@ -354,6 +359,7 @@ dstack/_internal/server/migrations/versions/fe72c4de8376_add_gateways.py,sha256=
354
359
  dstack/_internal/server/migrations/versions/ffa99edd1988_add_jobterminationreason_max_duration_.py,sha256=1wBIisgN25doZfAErnqyshoSSzoDHPt4nZfC2MmSWak,2324
355
360
  dstack/_internal/server/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
356
361
  dstack/_internal/server/routers/backends.py,sha256=vSCP-wbH-fsoKDR1TrMyQCz5UA-biiY0Lo7ERVz_L_g,4684
362
+ dstack/_internal/server/routers/files.py,sha256=O0ThDplcYR8V8bMsOE9Pw3CZIuE75K9ZkOM-GMGrNrY,2443
357
363
  dstack/_internal/server/routers/fleets.py,sha256=ikXeJ7phoVocU3i-_S6V5RIMygjh-KHuhEIAS5Cw1wo,5565
358
364
  dstack/_internal/server/routers/gateways.py,sha256=CFqfwX9VHsjFCaDblh80T8LaoV6RMHd3EZ-QDDXu5cY,3226
359
365
  dstack/_internal/server/routers/instances.py,sha256=XOogTC9My2Zv0ck37_PbHKoZI-j4QeGrP2sN5wpX7Ow,1579
@@ -363,22 +369,23 @@ dstack/_internal/server/routers/projects.py,sha256=lk1xDz02GSzgIC6nG9eJQ62WIB6Uf
363
369
  dstack/_internal/server/routers/prometheus.py,sha256=INRxPLYVJ6CTm2AwtSJ1z455RiCOpPJ3rbXMKGonGm8,1109
364
370
  dstack/_internal/server/routers/repos.py,sha256=Si27qslFefmvRBuR2khvuFyjpd88-Hys-pvIbi9YJK0,3943
365
371
  dstack/_internal/server/routers/runs.py,sha256=p44c_0bqwG1v5S_qX-HKbap1nmk1F2JVqaIXihjiUfY,5388
366
- dstack/_internal/server/routers/secrets.py,sha256=50_qJCTYRpnGSlLyS93gqoV17wWewOVmM65PcG1bT_Y,856
372
+ dstack/_internal/server/routers/secrets.py,sha256=lVhoybh86pWhNYgCDgqjcsPXITIMZBtIbbNqwHFTiCg,2330
367
373
  dstack/_internal/server/routers/server.py,sha256=8pQmfyZj0nbebeOK9JuKhw9JmYuIYfJnY0LuYynWnGY,346
368
374
  dstack/_internal/server/routers/users.py,sha256=YcQ2HTGWYemkqUydO6GTlh-Hq_2mJ_wFXT-wmufuj2g,3223
369
375
  dstack/_internal/server/routers/volumes.py,sha256=L8ThwwHNRyRVOiK-U7aNZuT3YXDpULWskZc9RvnOiFU,3583
370
376
  dstack/_internal/server/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
371
377
  dstack/_internal/server/schemas/backends.py,sha256=KC6ZunAW71OCEIE_LnPO-wScJKVFXLgcVVocrLATMi0,365
372
378
  dstack/_internal/server/schemas/common.py,sha256=FCt3EwntxkykIK8ykKATmJM_gq3X3js-f8Z5tYqdQqA,230
379
+ dstack/_internal/server/schemas/files.py,sha256=3SW-aMv5eAL5Fs_N3isCSPc6xgjOkRQnA-Nf5UAplFE,120
373
380
  dstack/_internal/server/schemas/fleets.py,sha256=9JcKe8VQM6p705lsgrp0xO08aTC32R88BJah7vZ-LgM,1101
374
381
  dstack/_internal/server/schemas/gateways.py,sha256=wrLQgSFkpxf-pijeyl2UjR8SpQXVshal6pW8wZf73Yk,1142
375
382
  dstack/_internal/server/schemas/instances.py,sha256=MedAVbKa_1F9zhdSPrjMmL-Og5Dp0cxxvfApKj29194,431
376
383
  dstack/_internal/server/schemas/logs.py,sha256=IMuyFt4ZcSBE4RtQ0X_gd49BDd5QXzq-SpREA9xVrRw,739
377
384
  dstack/_internal/server/schemas/projects.py,sha256=sXm9KMecLYaLemE4rPr8MzvlkHvpwzawmL5GNB87wuY,804
378
385
  dstack/_internal/server/schemas/repos.py,sha256=Sit0Tqol79VOMGGp8ncZXLLsZ4INcF-pAA_jwRchYqA,666
379
- dstack/_internal/server/schemas/runner.py,sha256=CqlP90yvPKaavAqxLOxewIMq3cHeT_NWfR0YO81JfU0,5151
386
+ dstack/_internal/server/schemas/runner.py,sha256=KCEdtGgfxoZfgxzZ_7r_RatCb_QMnA80J6_PLQc6EP0,5213
380
387
  dstack/_internal/server/schemas/runs.py,sha256=XhlTnn67g4NWVmIJFQdy2yPK_EcnSIYOCCSex0XOIes,1341
381
- dstack/_internal/server/schemas/secrets.py,sha256=mfqLSM7PqxVQ-GIWB6RfPRUOvSvvaRv-JxXAYxZ6dyY,373
388
+ dstack/_internal/server/schemas/secrets.py,sha256=pnvvtPWdv-kBnKTDJsynBksX1vREK1fSUMCYD42gyRI,281
382
389
  dstack/_internal/server/schemas/users.py,sha256=FuDqwRVe3mOmv497vOZKjI0a_d4Wt2g4ZiCJcyfHEKA,495
383
390
  dstack/_internal/server/schemas/volumes.py,sha256=9iwaQLMhA6aj9XmtdU_9jWVhpzNOtFbDByAe-WYfYh0,673
384
391
  dstack/_internal/server/security/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -386,9 +393,10 @@ dstack/_internal/server/security/permissions.py,sha256=7lWM9jiNt-6cMms6t5g9Fn0H3
386
393
  dstack/_internal/server/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
387
394
  dstack/_internal/server/services/config.py,sha256=yo8njslwfS7_blhbPPhOtzCMyg8N_mmFSw5aPvirSzw,10691
388
395
  dstack/_internal/server/services/docker.py,sha256=zAvjFHxIP03Td92NzbGEScz0piLjloE60tQ7vz0AeCA,5328
389
- dstack/_internal/server/services/fleets.py,sha256=uzufBa8nHJZDkYjzgse40E1ctCt-g_rUGJFd6ra2Mc0,26613
396
+ dstack/_internal/server/services/files.py,sha256=LJYFRtIJwB-QL-FhIu1408oqVVfa2lPZZlaTuZMo6pw,2847
397
+ dstack/_internal/server/services/fleets.py,sha256=nu-02uFf7DzyURpVSS_LJeBNhr_wGRQthvd3LCTu-js,26740
390
398
  dstack/_internal/server/services/instances.py,sha256=4feu9RfixOIVsLoFPHiYYUe0L6sf3v3h1asTBSF5cyc,18686
391
- dstack/_internal/server/services/locking.py,sha256=7JUgNSplKRx7dxC4LIpmWw81agUtslEDTeDiNMPbAVg,3013
399
+ dstack/_internal/server/services/locking.py,sha256=KM_31rBjtKqa0ID07uqNL8zwA8hKxaY1q1dSZstv0tY,5193
392
400
  dstack/_internal/server/services/logging.py,sha256=Nu1628kW2hqB__N0Eyr07wGWjVWxfyJnczonTJ72kSM,417
393
401
  dstack/_internal/server/services/metrics.py,sha256=jKLy1jSCVR_crqVu_CmsOMbvMkucWBandI0SS1LDeRQ,6896
394
402
  dstack/_internal/server/services/offers.py,sha256=4hhqLzmo14_IY84FSDG59Sib1DrmTAOk-_q8M4aYoLU,7737
@@ -398,24 +406,25 @@ dstack/_internal/server/services/plugins.py,sha256=KgBqBUqxjQirRcYNuXVetE4OQj0EP
398
406
  dstack/_internal/server/services/projects.py,sha256=UMcqUvT4n02iTgvPSqzlPx0CoQIoi5bWsmrN78747_k,22346
399
407
  dstack/_internal/server/services/repos.py,sha256=f9ztN7jz_2gvD9hXF5sJwWDVyG2-NHRfjIdSukowPh8,9342
400
408
  dstack/_internal/server/services/resources.py,sha256=VRFOih_cMJdc0c2m9nSGsX8vWAJQV3M6N87aqS_JXfw,699
401
- dstack/_internal/server/services/runs.py,sha256=utbHUjsEih8lZnXnI8uv-N5IDnmMcNsfU5OQ1-gQy2A,39755
409
+ dstack/_internal/server/services/runs.py,sha256=YCWjWDmMCf2EmKwYEYRuLDWvEtwJvBvFLGHA76Xm89E,40635
410
+ dstack/_internal/server/services/secrets.py,sha256=oVz8mv4pQv8onaDdPKft2qJYq3Xnh8-uskoMxBuyfpE,5567
402
411
  dstack/_internal/server/services/users.py,sha256=eBmkvLIt5KpRo8jvSeHifu7V4G8KUzDybTNsYjIVmwo,7379
403
- dstack/_internal/server/services/volumes.py,sha256=nGCXwXvI414vjNkU1PDOT0eLuEDPH-lMgyEpHjGVL24,16258
404
- dstack/_internal/server/services/backends/__init__.py,sha256=Aqo1GoqhZ_FsLEkCcBrvReKSq6E5w4QbBLrDXfGjiKU,13154
412
+ dstack/_internal/server/services/volumes.py,sha256=55G4T0ugJpQy5WHTiEbtDKyZg6B9L8bqTH8fSkFXvGg,16300
413
+ dstack/_internal/server/services/backends/__init__.py,sha256=UzZ-JqaUEheaE3fwNfnRJ47yK2nO23mTT3BwcYDooP4,13147
405
414
  dstack/_internal/server/services/backends/handlers.py,sha256=j-MhBxrpdepoDG7f2tApjFnE23RVO5I15-hxHyOWnew,3251
406
415
  dstack/_internal/server/services/encryption/__init__.py,sha256=3kCw_cxC3-Un1OIofdW5Gqsm0ZCXXTlGz09cULBx_uc,3155
407
416
  dstack/_internal/server/services/encryption/keys/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
408
417
  dstack/_internal/server/services/encryption/keys/aes.py,sha256=2He1p2_Rg6hnCeLIGJo-Yfdsij7so_338oY49RXuL3Q,2276
409
418
  dstack/_internal/server/services/encryption/keys/base.py,sha256=mqumJiidoexUPoqxhQG6J_SpC1WGYwkdjKm1MUWnXo8,352
410
419
  dstack/_internal/server/services/encryption/keys/identity.py,sha256=ryb_YSV6u4c7W1OsVfEpzJvZCrR4zZYlzLw_GpjpD2Q,741
411
- dstack/_internal/server/services/gateways/__init__.py,sha256=XIolTvb5ZJZpMquDpuGoJB72J1ej40lhww9JuiGlQoE,21550
420
+ dstack/_internal/server/services/gateways/__init__.py,sha256=VVsAwqTcufvPLpk2RUtAwwz89XeRnkf5lwWEWFyHQ6k,21606
412
421
  dstack/_internal/server/services/gateways/client.py,sha256=XIJX3fGBbZ_AG8qZMTSE8KAB_ojq5YJFa0OXoD_dofg,7493
413
422
  dstack/_internal/server/services/gateways/connection.py,sha256=ot3lV85XdmCT45vBWeyj57nLPcLPNm316zu3jMyeWjA,5625
414
423
  dstack/_internal/server/services/gateways/pool.py,sha256=0LclTl1tyx-doS78LeaAKjr-SMp98zuwh5f9s06JSd0,1914
415
- dstack/_internal/server/services/jobs/__init__.py,sha256=diy01gm7UQWGzkD-gH3YN_frIXzhppxPV3sebCmiAbI,25603
424
+ dstack/_internal/server/services/jobs/__init__.py,sha256=mGAPKTpH9TcvMpa6LKXkWIT6UKxYd0RvBcyz49PQwSY,25964
416
425
  dstack/_internal/server/services/jobs/configurators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
417
- dstack/_internal/server/services/jobs/configurators/base.py,sha256=MXiV-S3zFnkfaCCdstpr2wWylnkve8kS2sTYQYYRleE,12540
418
- dstack/_internal/server/services/jobs/configurators/dev.py,sha256=ufN6Sd8TwIsjQYNZE32fkAqJI7o2zjgoZThbrP-bd7U,2378
426
+ dstack/_internal/server/services/jobs/configurators/base.py,sha256=M21BWJvJwb5YKdwk214oyGz_4PvhlEVgO2iSH4l3XHI,13341
427
+ dstack/_internal/server/services/jobs/configurators/dev.py,sha256=i58_LYvX__gxLoCx7GwjNj26M67FjgAIcEWyl3f8mOU,2435
419
428
  dstack/_internal/server/services/jobs/configurators/service.py,sha256=FOWrLE-6YFSMuGqjOwYTLMV4FuIM5lCMDFjS0l0CoLI,929
420
429
  dstack/_internal/server/services/jobs/configurators/task.py,sha256=0-B3oO-61Eq4-mmlLmqJPliFKHhvvIV0tqc12slcQuA,1436
421
430
  dstack/_internal/server/services/jobs/configurators/extensions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -433,21 +442,21 @@ dstack/_internal/server/services/prometheus/custom_metrics.py,sha256=xq5G-Q2BJup
433
442
  dstack/_internal/server/services/proxy/__init__.py,sha256=aklmvGaGXISztQft-nH8R98WRU6x_L0Fx3RwVDhwt3g,85
434
443
  dstack/_internal/server/services/proxy/auth.py,sha256=AVhDCnk9KvxJ7Jsd8Xmotl_29V4lNuBw8mQNBhx90Ws,485
435
444
  dstack/_internal/server/services/proxy/deps.py,sha256=u4dHHKBlTgC8Fnnl3onErgE1HGKFwyZTwvq0uT6IdQ4,846
436
- dstack/_internal/server/services/proxy/repo.py,sha256=g3Inugk_Ay1J8eiAdfwpdUHNaF7cKC82jarigrtNjw8,7112
445
+ dstack/_internal/server/services/proxy/repo.py,sha256=wh1Y_5R3NGBmvYpltLuH_LkThywpiayBn9N92oNJoyg,7269
437
446
  dstack/_internal/server/services/proxy/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
438
447
  dstack/_internal/server/services/proxy/routers/service_proxy.py,sha256=5oB-SX8f_f32tTs5aJe9ZuMycHAyVTQDO9xJcFmUKCs,1953
439
448
  dstack/_internal/server/services/proxy/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
440
449
  dstack/_internal/server/services/proxy/services/service_proxy.py,sha256=4JrSxHqhBYqU1oENii89Db-bzkFWExYrOy-0mNEhWBs,4879
441
450
  dstack/_internal/server/services/runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
442
- dstack/_internal/server/services/runner/client.py,sha256=8xcZNdnQPHtXCVS2RdVS2_KDcrCUa1K6cnqcDZsisBU,15653
451
+ dstack/_internal/server/services/runner/client.py,sha256=m2chzrQmtcRiw2JUmdfWAbcQFGVKq4CiNEFZGE21WBw,15944
443
452
  dstack/_internal/server/services/runner/ssh.py,sha256=H-X0015ZPwYq5tc31ytFF1uNaUAr9itAsABI2oPJWrk,5017
444
453
  dstack/_internal/server/services/services/__init__.py,sha256=O3P-PiXpakh3cIBW8DcKu4VnaKlxFmJJr8cSz8mpk9E,11632
445
454
  dstack/_internal/server/services/services/autoscalers.py,sha256=wg3QgfdKcaBdbtyJJlAzeMlicGKQMuRGpMPZKyemK5U,4447
446
455
  dstack/_internal/server/services/services/options.py,sha256=BEpZbRY4PKFVkNNWxLtY--QISqBL1_aPPzZYLPpRgvM,2234
447
456
  dstack/_internal/server/services/storage/__init__.py,sha256=ZjlLdCQiclM7h_dKJM9HXjMJDKCFOAf3yI4iO6K3HHk,1384
448
- dstack/_internal/server/services/storage/base.py,sha256=eK6wLny_QmRuTUDXo_WaZ8zdGpqduI0VeCO1n_-Yyxc,589
449
- dstack/_internal/server/services/storage/gcs.py,sha256=XJrbYCiyd3QvxorOPxgT4cPmtDt-7xjWlNsP-ctJmfk,1094
450
- dstack/_internal/server/services/storage/s3.py,sha256=CLVW4xhtuxmY9lCU_d6JAhcN5UWFB-HYtJ3qbOaZDvU,1311
457
+ dstack/_internal/server/services/storage/base.py,sha256=R5FQqTjSWtheSDlksfk_tveGMpaklwQqXGCpjWhKtM4,1035
458
+ dstack/_internal/server/services/storage/gcs.py,sha256=0nZXpn0oc3vMQ_0rAtxjAAWQRvtqPVUz60sOl4Labf8,1631
459
+ dstack/_internal/server/services/storage/s3.py,sha256=eBsT9xH-xKNaH6JFZXPp8Ac2yOYdb4Tx1Ia4Nbwz_zA,1819
451
460
  dstack/_internal/server/statics/00a6e1fb461ed2929fb9.png,sha256=OOtPkMkLAB5vm5pJZKBQWpRmXgSYgvxH8WgaXIbaJZM,427
452
461
  dstack/_internal/server/statics/0cae4d9f0a36034984a7.png,sha256=Z2vD7WPCpPCmSokeW4LcAdFaxYfOTF5UvGYPPhz6ry4,160
453
462
  dstack/_internal/server/statics/391de232cc0e30cae513.png,sha256=9JBIW86hk7re23qp3NFMRTzyQE25dJ8-K-6aK-hwfu4,109
@@ -473,10 +482,10 @@ dstack/_internal/server/statics/e467d7d60aae81ab198b.svg,sha256=_XHc9mfQZgGkcy4h
473
482
  dstack/_internal/server/statics/eb9b344b73818fe2b71a.png,sha256=2H14eOCQRyZhFGJ1Kn2LH1j70kTF1Qop4vH-tiKqyPI,85
474
483
  dstack/_internal/server/statics/f517dd626eb964120de0.png,sha256=4QQuNa8SqmcZ67HK6739OHCyjnAJseU1bkcn454KRQs,159
475
484
  dstack/_internal/server/statics/f958aecddee5d8e3222c.png,sha256=8CoZkVNgRfOAe62X1dU-AZDvwh_nESKaQblEmaX2Xrs,87
476
- dstack/_internal/server/statics/index.html,sha256=apMUqlAxBJXvcmWtLg0OFmCOgB4oGXYI3KUjJRLtWYw,10468
477
- dstack/_internal/server/statics/main-a4eafa74304e587d037c.js,sha256=Mmv1S4z-_x-Cl-jCFcjMCt1AWahYO7R_mpHwHQezlgo,6666929
478
- dstack/_internal/server/statics/main-a4eafa74304e587d037c.js.map,sha256=9hOZRSJ1SpZaTo6_YQYqedFTHHYxkvaEME43yULzyI0,8758270
479
- dstack/_internal/server/statics/main-f53d6d0d42f8d61df1de.css,sha256=vUU4m71rhWOSFLAJyxV_EV49RmNNxv97jSq69d2_5Mc,1354847
485
+ dstack/_internal/server/statics/index.html,sha256=A5MNVYZNHkotEySAJG3f3ecy9ZbSLlsSs9-V3pdBOQI,10468
486
+ dstack/_internal/server/statics/main-d1ac2e8c38ed5f08a114.js,sha256=rOAVyPH0oCvF8IR8tQRPlSUAYFD-ZZg0GZyXST87nd8,6673267
487
+ dstack/_internal/server/statics/main-d1ac2e8c38ed5f08a114.js.map,sha256=LCds9dR4O-2b6k_5EHFu4KHJzjoNz2L-WzH7y750xas,8770009
488
+ dstack/_internal/server/statics/main-d58fc0460cb0eae7cb5c.css,sha256=knvt0R2lSfVp72_uDvtBEXgRdqlBseZoZWPB7dPNUK8,1355031
480
489
  dstack/_internal/server/statics/manifest.json,sha256=430w2BoWVmYYVr14lDvUxx-ROPt3VjigzeMqfLeiSCM,340
481
490
  dstack/_internal/server/statics/robots.txt,sha256=kNJLw79pisHhc3OVAimMzKcq3x9WT6sF9IS4xI0crdI,67
482
491
  dstack/_internal/server/statics/assets/android-chrome-144x144.png,sha256=tB3V-95O-VVEoawN5V1XFoMQRSK0I6gthraV8bATGaw,23414
@@ -550,11 +559,12 @@ dstack/_internal/server/statics/assets/yandex-browser-50x50.png,sha256=GGaavXItF
550
559
  dstack/_internal/server/statics/assets/yandex-browser-manifest.json,sha256=wQcuGCfkNsSmCXGg2IwxcwdykLSIx7xL3Y_WtmYYLq0,147
551
560
  dstack/_internal/server/statics/static/media/entraID.d65d1f3e9486a8e56d24fc07b3230885.svg,sha256=_v0ZwN0Yi2FB4XNlplXWZ-jjOtFIFabQTcC2gyPIRE4,1302
552
561
  dstack/_internal/server/statics/static/media/github.1f7102513534c83a9d8d735d2b8c12a2.svg,sha256=mNW9cuKg4s5dYQv8ZMzPsYyLJgxUg4jYBTape-pIy8c,2179
562
+ dstack/_internal/server/statics/static/media/google.b194b06fafd0a52aeb566922160ea514.svg,sha256=ft4tBpFOIPNWj-EcXicLUNgDafxFNlIlhtnMy7Zm4Mw,743
553
563
  dstack/_internal/server/statics/static/media/logo.f602feeb138844eda97c8cb641461448.svg,sha256=z1mS8Qo_NNRDObJ41uZfbZA0ZieZUVTnROuJjoiQabE,16373
554
564
  dstack/_internal/server/statics/static/media/okta.12f178e6873a1100965f2a4dbd18fcec.svg,sha256=KqFI05gQM135zC1plF1WBRF2F7CyKL7km97WKsZjAHI,319
555
565
  dstack/_internal/server/statics/static/media/theme.3994c817bb7dda191c1c9640dee0bf42.svg,sha256=ZxFFBVZWuRLqmWH4zhwGLNtKjOzHj-5MGJRunFAtu1I,561
556
566
  dstack/_internal/server/testing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
557
- dstack/_internal/server/testing/common.py,sha256=KwM6SMDbYNovuKCuU3PUWM0-OTdO175TF8N24BpIhgY,31884
567
+ dstack/_internal/server/testing/common.py,sha256=GiSOoXrEEc1Ztj0L7qy3W5-vQ52dHpRFu4VEYm3cKBQ,33005
558
568
  dstack/_internal/server/testing/conf.py,sha256=-zhujfFjTHNfQDOK-hBck32By11c_kC0OeinB3esQGg,1902
559
569
  dstack/_internal/server/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
560
570
  dstack/_internal/server/utils/common.py,sha256=PbjXtqYy1taKXpyG5ys8cIrz9MXqc9dBAsR_9D1brrk,1414
@@ -566,13 +576,15 @@ dstack/_internal/utils/crypto.py,sha256=2RTSyzePuwwqc1X2HO6lwcSFyZ2kujnqluoICQ2D
566
576
  dstack/_internal/utils/dxf.py,sha256=wguK9s6-69kqSDZkxd1kFEr6VlH5ixvFRJxizyOuJ8I,3229
567
577
  dstack/_internal/utils/env.py,sha256=HRbIspHpKHh05fMZeV23-hrZoV6vVMuniefD08u6ey0,357
568
578
  dstack/_internal/utils/event_loop.py,sha256=DO2ADtWfH2z8F2hBbg_EADSWzleQYGVZ9D1XYDpH-tk,880
579
+ dstack/_internal/utils/files.py,sha256=3ILdDvPPv2_vSEHRhLI15PG0R03RnO2aq_sWXGWIvm0,2692
569
580
  dstack/_internal/utils/gpu.py,sha256=ZeWpy1nRLVh-FwBZdxbMoVjjCF0DWJlWfNoVgFhGx2w,1776
570
581
  dstack/_internal/utils/hash.py,sha256=mCERRtj9QwbpoP3vveBqbniSJiNMHG0vPSzp4fxmKv0,920
571
582
  dstack/_internal/utils/interpolator.py,sha256=kLRm_DagGcjnkLPtMC9NaHioegsUvg8uk4lom38eV3I,2922
572
583
  dstack/_internal/utils/json_schema.py,sha256=oh23z6jdl_wx3qkojk_2egyKZbdmYWZs12Gd9Bk46M8,371
573
584
  dstack/_internal/utils/logging.py,sha256=j37rgL-fQh2_E3ec_RqDy6Ora-Aa79ZVV-BAgZJViME,97
585
+ dstack/_internal/utils/nested_list.py,sha256=ba4fmMuaz807Bf6KRve-9_8zm4dxlNMQiFbcvr3RjBg,1243
574
586
  dstack/_internal/utils/network.py,sha256=vvIQulBapL6Zw50jsit7sNNbGJVKTzooqWhkVWqaAzQ,1488
575
- dstack/_internal/utils/path.py,sha256=YRjmRGe7TQFwsmJBHMjOQhOZo5bieVCVbxOT5J_cbpA,905
587
+ dstack/_internal/utils/path.py,sha256=C2l1FKPkMhhYH9kB7-mQsbk_hI39iUHeFma8K4SMjls,1119
576
588
  dstack/_internal/utils/random_names.py,sha256=lVyzAmXhaSf2bAuvRFQ_ihLy42in1ydN4gJYsMw4GG8,3537
577
589
  dstack/_internal/utils/ssh.py,sha256=R5ga40BMeSrjh-siVgP6WDTngDCjnGNz8P0ztGZ3nnI,11871
578
590
  dstack/_internal/utils/tags.py,sha256=Gx4aZM85E_UUCGuFZbCEFxHB5DNgrtJP15_1tFFEd1c,1292
@@ -581,10 +593,11 @@ dstack/api/utils.py,sha256=_la3CRk1vgrPGkInPI1SOr33e8Jvh8ziJC32fjvKnaU,4188
581
593
  dstack/api/_public/__init__.py,sha256=mbzsdV3nWUJRksc7czX5C0iPT3NA6YRpriQQRiXwIbY,3429
582
594
  dstack/api/_public/backends.py,sha256=w_cIUVU3L1tN8VoPH6-ltq-oJewlfXWTiEFXfDvm-1Q,1056
583
595
  dstack/api/_public/repos.py,sha256=2ufUtxY8WyPci9tCGYzsnyIFTXNJfTuPzDYvpTydZ6k,6133
584
- dstack/api/_public/runs.py,sha256=rw1Wv0ogg1xlQm2TvEy19lRj5mF0DCjC7woc1eVrct8,28469
596
+ dstack/api/_public/runs.py,sha256=G3Ta_dZxua3NdCgXOMwyhPClncnRX0LIeAutxu9fJ5A,30979
585
597
  dstack/api/huggingface/__init__.py,sha256=oIrEij3wttLZ1yrywEGvCMd6zswMQrX5pPjrqdSi0UA,2201
586
- dstack/api/server/__init__.py,sha256=Zyl1M51tifn4pB150yIsh39N96qUgMjg5XplcElHDxg,6097
598
+ dstack/api/server/__init__.py,sha256=hEG4zZBocrU0bZaAqD9Kno4oR3gx0oJ1d5cyjuz-4UM,6285
587
599
  dstack/api/server/_backends.py,sha256=tSvJ4j-yp-S-4IYo7pKHluDaSsx6Xbwo08Ff6Do85fo,1639
600
+ dstack/api/server/_files.py,sha256=iOBHm1CvJiG4TqNx3t5LYOf7w3jff9I15wxYpIAg-r4,780
588
601
  dstack/api/server/_fleets.py,sha256=6Duz5-SF1HI4qIkgdJr8OikzDosYtavJZOEyMwyDu_8,2882
589
602
  dstack/api/server/_gateways.py,sha256=2wyoERBl9R-uWtBI0AiRgLFLtNRlagQxlcgOWHkAlhA,2274
590
603
  dstack/api/server/_group.py,sha256=f9a_YvwZ7s1vDTQhOWHLwm3kO84C5R_zXToD4cxAnvY,432
@@ -593,7 +606,7 @@ dstack/api/server/_metrics.py,sha256=OPb8sLhI_U605sHOPrELgy0_6cNFLJVfpvr-qkEukRM
593
606
  dstack/api/server/_projects.py,sha256=1nlsm7CRaTKqaUX93un8BY845YWEuxXFGrwg3IJvGNw,2910
594
607
  dstack/api/server/_repos.py,sha256=bqsKuZWyiNLE8UAdSZrYNtk1J3Gu5MXXnTMIoM9jxpI,1770
595
608
  dstack/api/server/_runs.py,sha256=9XjsjH05Q26iagDwv8PZ4PbzG8KfSL1mEOHkem2FZ74,3086
596
- dstack/api/server/_secrets.py,sha256=VqLfrIcmBJtPxNDRkXTG44H5SWoY788YJapScUukvdY,1576
609
+ dstack/api/server/_secrets.py,sha256=YN6smkAb1vj8jG5KKeEEEjAM1KL880bfBLlrTzGcUu4,1366
597
610
  dstack/api/server/_users.py,sha256=XzhgGKc5Tsr0-xkz3T6rGyWZ1tO7aYNhLux2eE7dAoY,1738
598
611
  dstack/api/server/_volumes.py,sha256=dL_DS0edjdXnW8vIjdDpxHhRMBdHAjjnyUhRFvQd0sE,1523
599
612
  dstack/api/server/utils.py,sha256=i1KX4CNXVeDj9CnytdzsJz0bxjvvfLRTb7xw8oqtEtQ,1040
@@ -606,8 +619,8 @@ dstack/plugins/builtin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3
606
619
  dstack/plugins/builtin/rest_plugin/__init__.py,sha256=lgTsq8Z6Km2F2UhPRChVB4vDM5ZpWtdk1iB1aa20ypA,440
607
620
  dstack/plugins/builtin/rest_plugin/_models.py,sha256=9hgVuU6OGSxidar88XhQnNo9izYWeQvVH45ciErv-Es,1910
608
621
  dstack/plugins/builtin/rest_plugin/_plugin.py,sha256=iv8TmQh959iEUZjCFTzmGnFW8fHukTVpPmD4iBzOfS4,5361
609
- dstack-0.19.16.dist-info/METADATA,sha256=uq-rzc_xFZ_uLBJgt3soCtMXjkwuLW7CiRFHSTVurfQ,20513
610
- dstack-0.19.16.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
611
- dstack-0.19.16.dist-info/entry_points.txt,sha256=GnLrMS8hx3rWAySQjA7tPNhtixV6a-brRkmal1PKoHc,58
612
- dstack-0.19.16.dist-info/licenses/LICENSE.md,sha256=qDABaRGjSKVOib1U8viw2P_96sIK7Puo426784oD9f8,15976
613
- dstack-0.19.16.dist-info/RECORD,,
622
+ dstack-0.19.18.dist-info/METADATA,sha256=gqkv-jeaAg-Q9QQI0CBi2cmN4ZSpiG9mq9ArXLBJqpA,20671
623
+ dstack-0.19.18.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
624
+ dstack-0.19.18.dist-info/entry_points.txt,sha256=GnLrMS8hx3rWAySQjA7tPNhtixV6a-brRkmal1PKoHc,58
625
+ dstack-0.19.18.dist-info/licenses/LICENSE.md,sha256=qDABaRGjSKVOib1U8viw2P_96sIK7Puo426784oD9f8,15976
626
+ dstack-0.19.18.dist-info/RECORD,,