dstack 0.19.15rc1__py3-none-any.whl → 0.19.17__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 (93) 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/run.py +59 -17
  5. dstack/_internal/cli/utils/secrets.py +25 -0
  6. dstack/_internal/core/backends/__init__.py +10 -4
  7. dstack/_internal/core/backends/cloudrift/__init__.py +0 -0
  8. dstack/_internal/core/backends/cloudrift/api_client.py +208 -0
  9. dstack/_internal/core/backends/cloudrift/backend.py +16 -0
  10. dstack/_internal/core/backends/cloudrift/compute.py +138 -0
  11. dstack/_internal/core/backends/cloudrift/configurator.py +66 -0
  12. dstack/_internal/core/backends/cloudrift/models.py +40 -0
  13. dstack/_internal/core/backends/configurators.py +9 -0
  14. dstack/_internal/core/backends/models.py +7 -0
  15. dstack/_internal/core/compatibility/logs.py +15 -0
  16. dstack/_internal/core/compatibility/runs.py +31 -2
  17. dstack/_internal/core/models/backends/base.py +2 -0
  18. dstack/_internal/core/models/configurations.py +33 -2
  19. dstack/_internal/core/models/files.py +67 -0
  20. dstack/_internal/core/models/logs.py +2 -1
  21. dstack/_internal/core/models/runs.py +24 -1
  22. dstack/_internal/core/models/secrets.py +9 -2
  23. dstack/_internal/server/app.py +2 -0
  24. dstack/_internal/server/background/tasks/process_fleets.py +1 -1
  25. dstack/_internal/server/background/tasks/process_gateways.py +1 -1
  26. dstack/_internal/server/background/tasks/process_instances.py +1 -1
  27. dstack/_internal/server/background/tasks/process_placement_groups.py +1 -1
  28. dstack/_internal/server/background/tasks/process_running_jobs.py +110 -13
  29. dstack/_internal/server/background/tasks/process_runs.py +36 -5
  30. dstack/_internal/server/background/tasks/process_submitted_jobs.py +10 -4
  31. dstack/_internal/server/background/tasks/process_terminating_jobs.py +2 -2
  32. dstack/_internal/server/background/tasks/process_volumes.py +1 -1
  33. dstack/_internal/server/migrations/versions/5f1707c525d2_add_filearchivemodel.py +39 -0
  34. dstack/_internal/server/migrations/versions/644b8a114187_add_secretmodel.py +49 -0
  35. dstack/_internal/server/models.py +33 -0
  36. dstack/_internal/server/routers/files.py +67 -0
  37. dstack/_internal/server/routers/gateways.py +6 -3
  38. dstack/_internal/server/routers/projects.py +63 -0
  39. dstack/_internal/server/routers/prometheus.py +5 -5
  40. dstack/_internal/server/routers/secrets.py +57 -15
  41. dstack/_internal/server/schemas/files.py +5 -0
  42. dstack/_internal/server/schemas/logs.py +10 -1
  43. dstack/_internal/server/schemas/projects.py +12 -0
  44. dstack/_internal/server/schemas/runner.py +2 -0
  45. dstack/_internal/server/schemas/secrets.py +7 -11
  46. dstack/_internal/server/security/permissions.py +75 -2
  47. dstack/_internal/server/services/backends/__init__.py +1 -1
  48. dstack/_internal/server/services/files.py +91 -0
  49. dstack/_internal/server/services/fleets.py +1 -1
  50. dstack/_internal/server/services/gateways/__init__.py +1 -1
  51. dstack/_internal/server/services/jobs/__init__.py +19 -8
  52. dstack/_internal/server/services/jobs/configurators/base.py +27 -3
  53. dstack/_internal/server/services/jobs/configurators/dev.py +3 -3
  54. dstack/_internal/server/services/logs/aws.py +38 -38
  55. dstack/_internal/server/services/logs/filelog.py +48 -14
  56. dstack/_internal/server/services/logs/gcp.py +17 -16
  57. dstack/_internal/server/services/projects.py +164 -5
  58. dstack/_internal/server/services/prometheus/__init__.py +0 -0
  59. dstack/_internal/server/services/prometheus/client_metrics.py +52 -0
  60. dstack/_internal/server/services/proxy/repo.py +3 -0
  61. dstack/_internal/server/services/runner/client.py +8 -0
  62. dstack/_internal/server/services/runs.py +55 -10
  63. dstack/_internal/server/services/secrets.py +204 -0
  64. dstack/_internal/server/services/services/__init__.py +2 -1
  65. dstack/_internal/server/services/storage/base.py +21 -0
  66. dstack/_internal/server/services/storage/gcs.py +28 -6
  67. dstack/_internal/server/services/storage/s3.py +27 -9
  68. dstack/_internal/server/services/users.py +1 -3
  69. dstack/_internal/server/services/volumes.py +1 -1
  70. dstack/_internal/server/settings.py +2 -2
  71. dstack/_internal/server/statics/index.html +1 -1
  72. dstack/_internal/server/statics/{main-0ac1e1583684417ae4d1.js → main-d151637af20f70b2e796.js} +104 -48
  73. dstack/_internal/server/statics/{main-0ac1e1583684417ae4d1.js.map → main-d151637af20f70b2e796.js.map} +1 -1
  74. dstack/_internal/server/statics/{main-f39c418b05fe14772dd8.css → main-d48635d8fe670d53961c.css} +1 -1
  75. dstack/_internal/server/statics/static/media/google.b194b06fafd0a52aeb566922160ea514.svg +1 -0
  76. dstack/_internal/server/testing/common.py +43 -5
  77. dstack/_internal/settings.py +5 -0
  78. dstack/_internal/utils/files.py +69 -0
  79. dstack/_internal/utils/nested_list.py +47 -0
  80. dstack/_internal/utils/path.py +12 -4
  81. dstack/api/_public/runs.py +73 -12
  82. dstack/api/server/__init__.py +6 -0
  83. dstack/api/server/_files.py +18 -0
  84. dstack/api/server/_logs.py +5 -1
  85. dstack/api/server/_projects.py +24 -0
  86. dstack/api/server/_secrets.py +15 -15
  87. dstack/version.py +1 -1
  88. {dstack-0.19.15rc1.dist-info → dstack-0.19.17.dist-info}/METADATA +3 -4
  89. {dstack-0.19.15rc1.dist-info → dstack-0.19.17.dist-info}/RECORD +93 -71
  90. /dstack/_internal/server/services/{prometheus.py → prometheus/custom_metrics.py} +0 -0
  91. {dstack-0.19.15rc1.dist-info → dstack-0.19.17.dist-info}/WHEEL +0 -0
  92. {dstack-0.19.15rc1.dist-info → dstack-0.19.17.dist-info}/entry_points.txt +0 -0
  93. {dstack-0.19.15rc1.dist-info → dstack-0.19.17.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=FyZR2pNzdnR7Z385j--i8IZGCkQWzBIhLuPjA-KcwbA,105
2
+ dstack/version.py,sha256=qlnIh40j3RqdiPy2ftzWOnGZjJME36keJy8DMFGZYPc,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=aB4wf5_ISiTQILZYky2VtAy0BvAP_yD0TxaHxuzYmBA,1075
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
34
  dstack/_internal/cli/services/configurators/fleet.py,sha256=jm4tNH6QQVplLdboCTlvRYUee3nZ0UYb_qLTrvtYVYM,14049
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,14 +41,15 @@ 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
49
  dstack/_internal/core/errors.py,sha256=tJcZXwrvWvvtzIqkzLxJJMrhDuAQl8eOk0xpKCqqHzw,3313
48
- dstack/_internal/core/backends/__init__.py,sha256=fwgV8CN8Ap6MZmWklMGHHf0roliBtqne-ijjVOpWcgc,2467
49
- dstack/_internal/core/backends/configurators.py,sha256=JxGfZwcmL90akMFkAzzZ_fzPvU2No0pBaBqU_g0D-y0,3775
50
- dstack/_internal/core/backends/models.py,sha256=aKQOrDEStouuwY4MacSen7SkoyAa6HR6a6PFq5-cbNk,4088
50
+ dstack/_internal/core/backends/__init__.py,sha256=MOZt5mNbcaAaamjLuZKUk9fJCUwk7EAMn8sbE02NwD0,2765
51
+ dstack/_internal/core/backends/configurators.py,sha256=7LFad72b6zdzzDRaFUaQrJLf6PxGRsxR3tfyn15rQbA,3976
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
@@ -69,6 +71,12 @@ dstack/_internal/core/backends/base/compute.py,sha256=D4rRxUHUZOkUfAhmDE6MaS4AyH
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
74
+ dstack/_internal/core/backends/cloudrift/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
75
+ dstack/_internal/core/backends/cloudrift/api_client.py,sha256=oGIFJ3FiNVl5BvAlY_6SSWaUcQbg5pbjPf4jeixivmo,7565
76
+ dstack/_internal/core/backends/cloudrift/backend.py,sha256=Jz3nIQsa3TnMISVXK6EU43O0B7FgIMxwwaEBmd_s5BY,596
77
+ dstack/_internal/core/backends/cloudrift/compute.py,sha256=fmCaUliSRKDjAPT8YFwX-7xSk0eMnxryFsDBFBcS7VQ,5141
78
+ dstack/_internal/core/backends/cloudrift/configurator.py,sha256=wZ4HswqGeK0sffcbGvfNPIAdT_VsOt1ZKN7UXZ4WliI,2331
79
+ dstack/_internal/core/backends/cloudrift/models.py,sha256=tFpcG68OghznpzmspjdnlVEWY_GDvFPt_d41p9ceLrk,1119
72
80
  dstack/_internal/core/backends/cudo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
73
81
  dstack/_internal/core/backends/cudo/api_client.py,sha256=ygq1Gx7ZvwKaifdXtvzDSw4xR4ZH6UWd5J47BjuaGh0,3685
74
82
  dstack/_internal/core/backends/cudo/backend.py,sha256=i13YoAkUfIStc3Yyyt_3YmL30eVrKtrhwnE9_B1iBRI,546
@@ -156,31 +164,33 @@ dstack/_internal/core/backends/vultr/models.py,sha256=TkqK_lW6w5k_7wsoFiKDb6NXuT
156
164
  dstack/_internal/core/compatibility/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
157
165
  dstack/_internal/core/compatibility/fleets.py,sha256=Ndrib4Wtam-az1o2O4unBrSj3MpNwIBfU3Q8uSPNGHc,2674
158
166
  dstack/_internal/core/compatibility/gateways.py,sha256=gMAHSyhStn1ij51efEhEpUCZg7y8FPeppNITUctJqyU,1284
159
- dstack/_internal/core/compatibility/runs.py,sha256=6ZgT8Iu6KzBbyoKPWDv5e-cyK7xgWZAZBFGbooGs2oE,6017
167
+ dstack/_internal/core/compatibility/logs.py,sha256=ETqp59CXRocZrJ34L1nYQ_WfJN24I9AV03tXxWjyEho,522
168
+ dstack/_internal/core/compatibility/runs.py,sha256=0DYeBuAZ6RfkB56ez6zIfoCmnTnDEl8lA55kd8AoxBg,7105
160
169
  dstack/_internal/core/compatibility/volumes.py,sha256=WVsnAh3pWEkytFWp9irV4QPfkXCH-rfAUOcye7XDoDs,1252
161
170
  dstack/_internal/core/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
162
171
  dstack/_internal/core/models/common.py,sha256=XWd79dmFGMrdpTcStH5fVmNXCKE0s7FsIorPL0saQ8w,2138
163
172
  dstack/_internal/core/models/config.py,sha256=JJ7rT7dztzTWCY5TkoyxXxTvG5D4IFYhGe7EzwkLOWQ,581
164
- dstack/_internal/core/models/configurations.py,sha256=PA_u1gdTBCwKKIiGo7tH95Wv_ZZYX89mTCBOKs5cYko,19069
173
+ dstack/_internal/core/models/configurations.py,sha256=ikdeN0r_RkDH_pU2c79YYX-xRuw8UVj4bRqdEDImO7o,20398
165
174
  dstack/_internal/core/models/envs.py,sha256=yq84YRFBILOy4x3XnGcTgYpbZ69eFTCQPgBCr9Ndov4,4969
175
+ dstack/_internal/core/models/files.py,sha256=j6hVyOxSXQJTpoz6zh6KXHIs4w4tunCsgQuFMN_m13A,1988
166
176
  dstack/_internal/core/models/fleets.py,sha256=aqDVlZMc71NjLrzwBF3qz-dHzocQT5Qip7QWl8ZbKuA,12263
167
177
  dstack/_internal/core/models/gateways.py,sha256=_O8EWwHWLdgNoWY4P4u71KM-uEr5DDp42LXfyv1qMDI,4054
168
178
  dstack/_internal/core/models/instances.py,sha256=Vwh-D3WB_NBdG_1BPHBEaX60n4MtYksN2gf7zA-icYs,6642
169
- dstack/_internal/core/models/logs.py,sha256=Lsmtd_NrnChMjBJahUZpFb1j8Xobix9FHWf1L47FOGs,443
179
+ dstack/_internal/core/models/logs.py,sha256=vCMJFnebmTk5chodUQvghsyT1Funir1-InAcDHr-M68,483
170
180
  dstack/_internal/core/models/metrics.py,sha256=Xb8hCXUL-ncQ3PMsErIUAJTe9gwh5jyrQ4UQoZbibsc,269
171
181
  dstack/_internal/core/models/placement.py,sha256=WJVq5ENJykyRarQzL2EeYQag_9_jV7VSAtR_xoFvPVM,720
172
182
  dstack/_internal/core/models/profiles.py,sha256=SSbslQfKoa6Sg8A_Z26xDNTujGZc51we11G5rlqfBpY,11659
173
183
  dstack/_internal/core/models/projects.py,sha256=HmmlrvUSSEjfGfX7X5tmGJ-CbKeyGK6shHD5OghDNks,671
174
184
  dstack/_internal/core/models/resources.py,sha256=rsf6hAhi5bfSb_Z9VcS3UoEG0G8Ohl6ekyrOStLOAqw,14114
175
- dstack/_internal/core/models/runs.py,sha256=sq3kxtidqKIzNIgauiKoViJVbQ5K6ah6R8JQVoxZVnA,23269
176
- 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
177
187
  dstack/_internal/core/models/server.py,sha256=Hkc1v2s3KOiwslsWVmhUOAzcSeREoG-HD1SzSX9WUGg,152
178
188
  dstack/_internal/core/models/services.py,sha256=2Hpi7j0Q1shaf_0wd0C0044AJAmuYi-D3qx3PH849oI,3076
179
189
  dstack/_internal/core/models/unix.py,sha256=KxnSQELnkAjjuUgYcQKVkf-UAbYREBD8WCWDvHfOkuA,1915
180
190
  dstack/_internal/core/models/users.py,sha256=o_rd0GAmd6jufypVUs9P12NRri3rgAPDt-KxnqNNsGw,703
181
191
  dstack/_internal/core/models/volumes.py,sha256=WBqG6zNt0iE9ZqhoaBCdfkZsM9R-khJWWQEE_ImcGNY,6707
182
192
  dstack/_internal/core/models/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
183
- dstack/_internal/core/models/backends/base.py,sha256=Fbhs90NBMceXhjORwj7c2_pVriapCGSUMBFwuR-wRIg,1091
193
+ dstack/_internal/core/models/backends/base.py,sha256=4Y76IaLImBF8heXmmMKBL7APM0zzX20NkXRDbS0322g,1162
184
194
  dstack/_internal/core/models/repos/__init__.py,sha256=7Qo1QgJ852LklUuM-mlCNFodp_XrQ4iqV7uRPiX_qm0,885
185
195
  dstack/_internal/core/models/repos/base.py,sha256=nErlSR3AbG9fwDE5vuJK5DIrP8JB3fG8a7mXqosJ9gY,846
186
196
  dstack/_internal/core/models/repos/local.py,sha256=zKnEOyN7hSDQ7EKn8q9aJ3uikiTTtGdGEN_3896HTTc,2913
@@ -252,26 +262,26 @@ dstack/_internal/proxy/lib/testing/auth.py,sha256=-firWTnis9Eogoi58BURv1S-te4Hf9
252
262
  dstack/_internal/proxy/lib/testing/common.py,sha256=5e2VYboMqjBnUxkvidaWLoQ-uaBGh_hnURb_VJc38q4,1518
253
263
  dstack/_internal/server/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
254
264
  dstack/_internal/server/alembic.ini,sha256=rTauBJC8Jxlw76KUygW061OFAGV7GhwAStinlaxoYGY,3166
255
- dstack/_internal/server/app.py,sha256=QU6lzOfZslG4C4Fv58P7M3J5xXly94V2ZpfNYsoW09w,13141
265
+ dstack/_internal/server/app.py,sha256=zeSdMYgNE7nTgDBLrmfIqeg3auTVQgWSsHuAe_lUPLg,13189
256
266
  dstack/_internal/server/db.py,sha256=WjuqmjG3QAZmSMCeUaJ_ynbowlHuNAvYCZO649cTPHc,3210
257
267
  dstack/_internal/server/deps.py,sha256=31e8SU_ogPJWHIDLkgl7cuC_5V91xbJoLyAj17VanfM,670
258
268
  dstack/_internal/server/main.py,sha256=kztKhCYNoHSDyJJQScWfZXE0naNleJOCQULW6dd8SGw,109
259
- dstack/_internal/server/models.py,sha256=nRLgp9VvyRjGi9hGr9CTn2hCZJfHs3-zrW5nS6iibXc,29941
260
- dstack/_internal/server/settings.py,sha256=7f2ur03yIElq2y6XvRtWMSOWWycx1jQMqCjksx0lgro,4432
269
+ dstack/_internal/server/models.py,sha256=L7uGZT9MB5aI13kWPSPAK9YFQqAOyTyEbLu7MmTozoo,31283
270
+ dstack/_internal/server/settings.py,sha256=cZmJ9J2j4sS6qcU9p2QLXXcZ_b42PXpEF-VBN-p6o88,4434
261
271
  dstack/_internal/server/background/__init__.py,sha256=8kTbhEHCeXTibsOlHY1HwqIO6gGb4q8fUa2fcDrah1c,3893
262
272
  dstack/_internal/server/background/tasks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
263
273
  dstack/_internal/server/background/tasks/common.py,sha256=N7xSXbf2MoBWgbJ1e3AEzYBTf1Gn-pDXYND8Zr_YCJQ,970
264
- dstack/_internal/server/background/tasks/process_fleets.py,sha256=LsD3I7iCbQs_nexJ1kfnn1VPz3BffFmALRgpk5DHGO4,2985
265
- dstack/_internal/server/background/tasks/process_gateways.py,sha256=hoUI1CSqbHt_uMwnzTRAEDl-LBw0wUk_W4xobIbdvRc,7017
266
- dstack/_internal/server/background/tasks/process_instances.py,sha256=E1NLac4ubiF6jUr9M7rj8cjQf4zFZCBVr428UBgFeGI,42855
274
+ dstack/_internal/server/background/tasks/process_fleets.py,sha256=IgZcNHPl_qG22SrQvVR2rrPPDclWT06kE4agjVWhSMM,3001
275
+ dstack/_internal/server/background/tasks/process_gateways.py,sha256=C76dfaeCoiyhfmnFrY4gmNKy8IoY4P9-4kjo37xqeH8,7033
276
+ dstack/_internal/server/background/tasks/process_instances.py,sha256=iOdRCG8K7PnTPfl2Ya2rTuSz01jo6B97OkstBvrb918,42871
267
277
  dstack/_internal/server/background/tasks/process_metrics.py,sha256=aJPHnmKQE19JVxJVwGFyyK7buUcbp9Smw9CkFO2DPAk,6135
268
- dstack/_internal/server/background/tasks/process_placement_groups.py,sha256=gJ8Um3Vx-brazHVWdtVXPnov4rwvDr-0Vn1Voq1cYBQ,4108
278
+ dstack/_internal/server/background/tasks/process_placement_groups.py,sha256=SQ9DaZHC18d6koRQf2UxuDV9-gxIUJIvhLnuclodIeQ,4124
269
279
  dstack/_internal/server/background/tasks/process_prometheus_metrics.py,sha256=9VoGFqdiXcVkCi_NV1VqQdqllDkB0bHIqOHKMIZK1Fg,5183
270
- dstack/_internal/server/background/tasks/process_running_jobs.py,sha256=s8vdO2LiBLhStCmZ06lpXUuJKkrQq9BfV7QY7lc0TSo,39264
271
- dstack/_internal/server/background/tasks/process_runs.py,sha256=jVKkhUic91OaSLoGo1ZDKeZninl0usuJz8l36F8HWPc,20980
272
- dstack/_internal/server/background/tasks/process_submitted_jobs.py,sha256=tLLpdtLHN2xC6Ohc6f0we3oevw3pBt0_XrsufaFtIvE,27383
273
- dstack/_internal/server/background/tasks/process_terminating_jobs.py,sha256=0Z3Q409RwSxOL_pgK8JktBthjtESEUH3ahwTLsTdYPk,3800
274
- dstack/_internal/server/background/tasks/process_volumes.py,sha256=206rbT4ICeZtEmqh_94Rry_fgHfFLLaSEX9W-svwFk4,5089
280
+ dstack/_internal/server/background/tasks/process_running_jobs.py,sha256=Vwb99z2Y7xMaRVRX42KhECkhDqpZnUZA1YR4nhgSIqM,43311
281
+ dstack/_internal/server/background/tasks/process_runs.py,sha256=aPcIoOe1fwDsV-gqHyTOCYMtlZX71dk-PZafshi2Wpg,22353
282
+ dstack/_internal/server/background/tasks/process_submitted_jobs.py,sha256=FLThK7Xdf4llGbRyfNZEdoewX33zB7R4EVgqOqRo6Xs,27635
283
+ dstack/_internal/server/background/tasks/process_terminating_jobs.py,sha256=QrlLMrTFrdc5-YdK6lwlD4V9E_KVJPp-LDT2z0Ahk00,3832
284
+ dstack/_internal/server/background/tasks/process_volumes.py,sha256=TqeGVu4h-bcOTKgQ5C8r3rDb39DetTHS6sLXPWnaVI0,5105
275
285
  dstack/_internal/server/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
276
286
  dstack/_internal/server/migrations/env.py,sha256=RuhcN-CST86VzMatjqBMdYcG0fGGMZl_o1YgZTL-WDw,2831
277
287
  dstack/_internal/server/migrations/script.py.mako,sha256=Xi-IcoSN51tKWbAq1-nNVX7j6_89mf9AuX9DjnqUO_o,574
@@ -302,8 +312,10 @@ dstack/_internal/server/migrations/versions/555138b1f77f_change_instancemodel_fo
302
312
  dstack/_internal/server/migrations/versions/58aa5162dcc3_add_gatewaymodel_configuration.py,sha256=pT07eQypORZtWp6K9hwP-wq_K_Tx4EYeKJ9FghIHKyI,834
303
313
  dstack/_internal/server/migrations/versions/5ad8debc8fe6_fixes_for_psql.py,sha256=OoZKEtzkvLPb5v0CHeM_bhJn_I5ZxKtjXk7S1_I-wJI,9429
304
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
305
316
  dstack/_internal/server/migrations/versions/60e444118b6d_add_jobprometheusmetrics.py,sha256=PKqFqe6x6bkO8hrv73fes4uyBpzsemqwp3c-i5XzaS8,1195
306
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
307
319
  dstack/_internal/server/migrations/versions/686fb8341ea5_add_user_emails.py,sha256=0FlRf5Mis9ZIc7X6M9yqPtyFqR2SKCTUFfZeDbqAXBU,809
308
320
  dstack/_internal/server/migrations/versions/6c1a9d6530ee_add_jobmodel_exit_status.py,sha256=aYZIGWhM38hZ6SkrUsFESOmOIVhSAIbA9dbyFKsLUr8,615
309
321
  dstack/_internal/server/migrations/versions/710e5b3fac8f_add_encryption.py,sha256=nBURp4A6TpT13H1ccH4WyzkU2GGy3uDGKCNG88cAciw,1827
@@ -347,39 +359,42 @@ dstack/_internal/server/migrations/versions/fe72c4de8376_add_gateways.py,sha256=
347
359
  dstack/_internal/server/migrations/versions/ffa99edd1988_add_jobterminationreason_max_duration_.py,sha256=1wBIisgN25doZfAErnqyshoSSzoDHPt4nZfC2MmSWak,2324
348
360
  dstack/_internal/server/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
349
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
350
363
  dstack/_internal/server/routers/fleets.py,sha256=ikXeJ7phoVocU3i-_S6V5RIMygjh-KHuhEIAS5Cw1wo,5565
351
- dstack/_internal/server/routers/gateways.py,sha256=K_VG5Dt_2F_cykWjtFj4GBwtm_D3xfsE3Bf-lDgQx_w,3171
364
+ dstack/_internal/server/routers/gateways.py,sha256=CFqfwX9VHsjFCaDblh80T8LaoV6RMHd3EZ-QDDXu5cY,3226
352
365
  dstack/_internal/server/routers/instances.py,sha256=XOogTC9My2Zv0ck37_PbHKoZI-j4QeGrP2sN5wpX7Ow,1579
353
366
  dstack/_internal/server/routers/logs.py,sha256=_Euk283LbhlwHibJTKM-7YcpbeQFtWBqMfbOry3PSkU,1159
354
367
  dstack/_internal/server/routers/metrics.py,sha256=VFgWhkOvxVFDLlRM_kXHYFylLcfCD6UjXInvcd7H4dY,2314
355
- dstack/_internal/server/routers/projects.py,sha256=MIXqjfx7vY-uS2EPpVqSvAk6oUF6OwSvvujHKavo0Hc,2790
356
- dstack/_internal/server/routers/prometheus.py,sha256=uKXEDP8jozzK0SdXjiKV1Xc6b0LLWwVm-tMneKWMXcM,1099
368
+ dstack/_internal/server/routers/projects.py,sha256=lk1xDz02GSzgIC6nG9eJQ62WIB6UffhUsiR1OaY6mBU,4571
369
+ dstack/_internal/server/routers/prometheus.py,sha256=INRxPLYVJ6CTm2AwtSJ1z455RiCOpPJ3rbXMKGonGm8,1109
357
370
  dstack/_internal/server/routers/repos.py,sha256=Si27qslFefmvRBuR2khvuFyjpd88-Hys-pvIbi9YJK0,3943
358
371
  dstack/_internal/server/routers/runs.py,sha256=p44c_0bqwG1v5S_qX-HKbap1nmk1F2JVqaIXihjiUfY,5388
359
- dstack/_internal/server/routers/secrets.py,sha256=50_qJCTYRpnGSlLyS93gqoV17wWewOVmM65PcG1bT_Y,856
372
+ dstack/_internal/server/routers/secrets.py,sha256=lVhoybh86pWhNYgCDgqjcsPXITIMZBtIbbNqwHFTiCg,2330
360
373
  dstack/_internal/server/routers/server.py,sha256=8pQmfyZj0nbebeOK9JuKhw9JmYuIYfJnY0LuYynWnGY,346
361
374
  dstack/_internal/server/routers/users.py,sha256=YcQ2HTGWYemkqUydO6GTlh-Hq_2mJ_wFXT-wmufuj2g,3223
362
375
  dstack/_internal/server/routers/volumes.py,sha256=L8ThwwHNRyRVOiK-U7aNZuT3YXDpULWskZc9RvnOiFU,3583
363
376
  dstack/_internal/server/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
364
377
  dstack/_internal/server/schemas/backends.py,sha256=KC6ZunAW71OCEIE_LnPO-wScJKVFXLgcVVocrLATMi0,365
365
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
366
380
  dstack/_internal/server/schemas/fleets.py,sha256=9JcKe8VQM6p705lsgrp0xO08aTC32R88BJah7vZ-LgM,1101
367
381
  dstack/_internal/server/schemas/gateways.py,sha256=wrLQgSFkpxf-pijeyl2UjR8SpQXVshal6pW8wZf73Yk,1142
368
382
  dstack/_internal/server/schemas/instances.py,sha256=MedAVbKa_1F9zhdSPrjMmL-Og5Dp0cxxvfApKj29194,431
369
- dstack/_internal/server/schemas/logs.py,sha256=JGt39fBEFRjHhlGT1jIC6kwQhujxPO8uecjplzjTZXY,402
370
- dstack/_internal/server/schemas/projects.py,sha256=clcWvGdufczeh3ZazWME7AEz79MSWZulYDnq1b6PNKk,594
383
+ dstack/_internal/server/schemas/logs.py,sha256=IMuyFt4ZcSBE4RtQ0X_gd49BDd5QXzq-SpREA9xVrRw,739
384
+ dstack/_internal/server/schemas/projects.py,sha256=sXm9KMecLYaLemE4rPr8MzvlkHvpwzawmL5GNB87wuY,804
371
385
  dstack/_internal/server/schemas/repos.py,sha256=Sit0Tqol79VOMGGp8ncZXLLsZ4INcF-pAA_jwRchYqA,666
372
- dstack/_internal/server/schemas/runner.py,sha256=CqlP90yvPKaavAqxLOxewIMq3cHeT_NWfR0YO81JfU0,5151
386
+ dstack/_internal/server/schemas/runner.py,sha256=KCEdtGgfxoZfgxzZ_7r_RatCb_QMnA80J6_PLQc6EP0,5213
373
387
  dstack/_internal/server/schemas/runs.py,sha256=XhlTnn67g4NWVmIJFQdy2yPK_EcnSIYOCCSex0XOIes,1341
374
- dstack/_internal/server/schemas/secrets.py,sha256=mfqLSM7PqxVQ-GIWB6RfPRUOvSvvaRv-JxXAYxZ6dyY,373
388
+ dstack/_internal/server/schemas/secrets.py,sha256=pnvvtPWdv-kBnKTDJsynBksX1vREK1fSUMCYD42gyRI,281
375
389
  dstack/_internal/server/schemas/users.py,sha256=FuDqwRVe3mOmv497vOZKjI0a_d4Wt2g4ZiCJcyfHEKA,495
376
390
  dstack/_internal/server/schemas/volumes.py,sha256=9iwaQLMhA6aj9XmtdU_9jWVhpzNOtFbDByAe-WYfYh0,673
377
391
  dstack/_internal/server/security/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
378
- dstack/_internal/server/security/permissions.py,sha256=xFbvMvAIVJGvTHvAJiRB0poK29IpeNdUXR0kT2ljrDA,5994
392
+ dstack/_internal/server/security/permissions.py,sha256=7lWM9jiNt-6cMms6t5g9Fn0H3B3-MEJ7gDCtL7xZ9Lg,8187
379
393
  dstack/_internal/server/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
380
394
  dstack/_internal/server/services/config.py,sha256=yo8njslwfS7_blhbPPhOtzCMyg8N_mmFSw5aPvirSzw,10691
381
395
  dstack/_internal/server/services/docker.py,sha256=zAvjFHxIP03Td92NzbGEScz0piLjloE60tQ7vz0AeCA,5328
382
- dstack/_internal/server/services/fleets.py,sha256=9UL9mHo0IJhYrxiFHQUaLUA61PAQQ8gGwYNHpknlVqU,26599
396
+ dstack/_internal/server/services/files.py,sha256=LJYFRtIJwB-QL-FhIu1408oqVVfa2lPZZlaTuZMo6pw,2847
397
+ dstack/_internal/server/services/fleets.py,sha256=uzufBa8nHJZDkYjzgse40E1ctCt-g_rUGJFd6ra2Mc0,26613
383
398
  dstack/_internal/server/services/instances.py,sha256=4feu9RfixOIVsLoFPHiYYUe0L6sf3v3h1asTBSF5cyc,18686
384
399
  dstack/_internal/server/services/locking.py,sha256=7JUgNSplKRx7dxC4LIpmWw81agUtslEDTeDiNMPbAVg,3013
385
400
  dstack/_internal/server/services/logging.py,sha256=Nu1628kW2hqB__N0Eyr07wGWjVWxfyJnczonTJ72kSM,417
@@ -388,28 +403,28 @@ dstack/_internal/server/services/offers.py,sha256=4hhqLzmo14_IY84FSDG59Sib1DrmTA
388
403
  dstack/_internal/server/services/permissions.py,sha256=l7Ngdelmn65vjw13NcOdaC6lBYMRuSw6FbHzYwdK3nE,1005
389
404
  dstack/_internal/server/services/placement.py,sha256=U-7z4kJ6ZyrCXzkDychWoOhniz19ooFwiNI2InoTLls,2420
390
405
  dstack/_internal/server/services/plugins.py,sha256=KgBqBUqxjQirRcYNuXVetE4OQj0EPkdC7ccbrNV1WQE,3825
391
- dstack/_internal/server/services/projects.py,sha256=n-J7qgY6nmqDdIaH3Tk0YbC_Hm3UZOBCoV5GBUPAL_Y,16701
392
- dstack/_internal/server/services/prometheus.py,sha256=xq5G-Q2BJup9lS2F6__0wUVTs-k1Gr3dYclGzo2WoWo,12474
406
+ dstack/_internal/server/services/projects.py,sha256=UMcqUvT4n02iTgvPSqzlPx0CoQIoi5bWsmrN78747_k,22346
393
407
  dstack/_internal/server/services/repos.py,sha256=f9ztN7jz_2gvD9hXF5sJwWDVyG2-NHRfjIdSukowPh8,9342
394
408
  dstack/_internal/server/services/resources.py,sha256=VRFOih_cMJdc0c2m9nSGsX8vWAJQV3M6N87aqS_JXfw,699
395
- dstack/_internal/server/services/runs.py,sha256=6sHi7fcYjbrqK3Cbq-Ype6fKRAP_npu1d4gXgZtxR70,39713
396
- dstack/_internal/server/services/users.py,sha256=W-5xL7zsHNjeG7BBK54RWGvIrBOrw-FF0NcG_z9qhoE,7466
397
- dstack/_internal/server/services/volumes.py,sha256=vxjFn3ijrvwi9-aXipT0iQgNjgebdwcBRn1mKFL9zAQ,16244
398
- dstack/_internal/server/services/backends/__init__.py,sha256=Aqo1GoqhZ_FsLEkCcBrvReKSq6E5w4QbBLrDXfGjiKU,13154
409
+ dstack/_internal/server/services/runs.py,sha256=4wnfNA1f7ELi0JtrSUCrrZc31oa36bgwAXrS4X2ol50,41077
410
+ dstack/_internal/server/services/secrets.py,sha256=oVz8mv4pQv8onaDdPKft2qJYq3Xnh8-uskoMxBuyfpE,5567
411
+ dstack/_internal/server/services/users.py,sha256=eBmkvLIt5KpRo8jvSeHifu7V4G8KUzDybTNsYjIVmwo,7379
412
+ dstack/_internal/server/services/volumes.py,sha256=nGCXwXvI414vjNkU1PDOT0eLuEDPH-lMgyEpHjGVL24,16258
413
+ dstack/_internal/server/services/backends/__init__.py,sha256=UzZ-JqaUEheaE3fwNfnRJ47yK2nO23mTT3BwcYDooP4,13147
399
414
  dstack/_internal/server/services/backends/handlers.py,sha256=j-MhBxrpdepoDG7f2tApjFnE23RVO5I15-hxHyOWnew,3251
400
415
  dstack/_internal/server/services/encryption/__init__.py,sha256=3kCw_cxC3-Un1OIofdW5Gqsm0ZCXXTlGz09cULBx_uc,3155
401
416
  dstack/_internal/server/services/encryption/keys/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
402
417
  dstack/_internal/server/services/encryption/keys/aes.py,sha256=2He1p2_Rg6hnCeLIGJo-Yfdsij7so_338oY49RXuL3Q,2276
403
418
  dstack/_internal/server/services/encryption/keys/base.py,sha256=mqumJiidoexUPoqxhQG6J_SpC1WGYwkdjKm1MUWnXo8,352
404
419
  dstack/_internal/server/services/encryption/keys/identity.py,sha256=ryb_YSV6u4c7W1OsVfEpzJvZCrR4zZYlzLw_GpjpD2Q,741
405
- dstack/_internal/server/services/gateways/__init__.py,sha256=aDTpr45rkaQ2zBHnDQycwEDSQSno7bQ0buRPqTEDRxg,21536
420
+ dstack/_internal/server/services/gateways/__init__.py,sha256=XIolTvb5ZJZpMquDpuGoJB72J1ej40lhww9JuiGlQoE,21550
406
421
  dstack/_internal/server/services/gateways/client.py,sha256=XIJX3fGBbZ_AG8qZMTSE8KAB_ojq5YJFa0OXoD_dofg,7493
407
422
  dstack/_internal/server/services/gateways/connection.py,sha256=ot3lV85XdmCT45vBWeyj57nLPcLPNm316zu3jMyeWjA,5625
408
423
  dstack/_internal/server/services/gateways/pool.py,sha256=0LclTl1tyx-doS78LeaAKjr-SMp98zuwh5f9s06JSd0,1914
409
- dstack/_internal/server/services/jobs/__init__.py,sha256=diy01gm7UQWGzkD-gH3YN_frIXzhppxPV3sebCmiAbI,25603
424
+ dstack/_internal/server/services/jobs/__init__.py,sha256=mGAPKTpH9TcvMpa6LKXkWIT6UKxYd0RvBcyz49PQwSY,25964
410
425
  dstack/_internal/server/services/jobs/configurators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
411
- dstack/_internal/server/services/jobs/configurators/base.py,sha256=mkrbrOCIda8AQ9dzkpIjI4452GYfg3RurKS1sYPE1QU,12266
412
- dstack/_internal/server/services/jobs/configurators/dev.py,sha256=ufN6Sd8TwIsjQYNZE32fkAqJI7o2zjgoZThbrP-bd7U,2378
426
+ dstack/_internal/server/services/jobs/configurators/base.py,sha256=w2icnXdtD-7ZTGtkpMU4dDI_FbtaGLGMjkNzP0wI2CA,13284
427
+ dstack/_internal/server/services/jobs/configurators/dev.py,sha256=i58_LYvX__gxLoCx7GwjNj26M67FjgAIcEWyl3f8mOU,2435
413
428
  dstack/_internal/server/services/jobs/configurators/service.py,sha256=FOWrLE-6YFSMuGqjOwYTLMV4FuIM5lCMDFjS0l0CoLI,929
414
429
  dstack/_internal/server/services/jobs/configurators/task.py,sha256=0-B3oO-61Eq4-mmlLmqJPliFKHhvvIV0tqc12slcQuA,1436
415
430
  dstack/_internal/server/services/jobs/configurators/extensions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -417,28 +432,31 @@ dstack/_internal/server/services/jobs/configurators/extensions/base.py,sha256=xJ
417
432
  dstack/_internal/server/services/jobs/configurators/extensions/cursor.py,sha256=r6Cgdd-P5C63xXyrqC6E0yNKIeTX6KabRLO92VEpJRY,1719
418
433
  dstack/_internal/server/services/jobs/configurators/extensions/vscode.py,sha256=WRg_jqi4eSqbs3XRVASMFF7OQHYRDtVBNn6NCroJY1I,1694
419
434
  dstack/_internal/server/services/logs/__init__.py,sha256=NAjO1KeYvuDznN2EkfAaJt9S6Y00fo_dl3ob3WmsdGQ,3088
420
- dstack/_internal/server/services/logs/aws.py,sha256=MuRVGgYwkh0TA11Y2H0upSj56-k_Bs-vT_oa2X-5yZE,13834
435
+ dstack/_internal/server/services/logs/aws.py,sha256=Pk-awolRKnvCOOWwDWQHjPdGHwPXDjQpiHRVppoPVUI,13443
421
436
  dstack/_internal/server/services/logs/base.py,sha256=7eCB6SPF9iWviv4vZ_34SvfM_Bvi9DeVj1t7TxmrXKs,1273
422
- dstack/_internal/server/services/logs/filelog.py,sha256=2IAFQgLf5NwA1NTibe3ybn47TEddgUKZ_7b4B4yiQOY,3856
423
- dstack/_internal/server/services/logs/gcp.py,sha256=xV-BJ4NcU8bRVAEXa0dmdYpqNy93dIKC6axo0viQi5c,6867
437
+ dstack/_internal/server/services/logs/filelog.py,sha256=y7A3TqEopQWZBxZuoODeAZ8E8r_MvfFo_A6VFoYYpOI,4911
438
+ dstack/_internal/server/services/logs/gcp.py,sha256=VyxFxOPET8WX0Vu4kfdlE89twT9eic2HzmdgyaohIA4,7026
439
+ dstack/_internal/server/services/prometheus/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
440
+ dstack/_internal/server/services/prometheus/client_metrics.py,sha256=nGhvOHEoWONGAfbNh5gC23It7B46A6hfQ8mErUQIcYI,1541
441
+ dstack/_internal/server/services/prometheus/custom_metrics.py,sha256=xq5G-Q2BJup9lS2F6__0wUVTs-k1Gr3dYclGzo2WoWo,12474
424
442
  dstack/_internal/server/services/proxy/__init__.py,sha256=aklmvGaGXISztQft-nH8R98WRU6x_L0Fx3RwVDhwt3g,85
425
443
  dstack/_internal/server/services/proxy/auth.py,sha256=AVhDCnk9KvxJ7Jsd8Xmotl_29V4lNuBw8mQNBhx90Ws,485
426
444
  dstack/_internal/server/services/proxy/deps.py,sha256=u4dHHKBlTgC8Fnnl3onErgE1HGKFwyZTwvq0uT6IdQ4,846
427
- dstack/_internal/server/services/proxy/repo.py,sha256=g3Inugk_Ay1J8eiAdfwpdUHNaF7cKC82jarigrtNjw8,7112
445
+ dstack/_internal/server/services/proxy/repo.py,sha256=wh1Y_5R3NGBmvYpltLuH_LkThywpiayBn9N92oNJoyg,7269
428
446
  dstack/_internal/server/services/proxy/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
429
447
  dstack/_internal/server/services/proxy/routers/service_proxy.py,sha256=5oB-SX8f_f32tTs5aJe9ZuMycHAyVTQDO9xJcFmUKCs,1953
430
448
  dstack/_internal/server/services/proxy/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
431
449
  dstack/_internal/server/services/proxy/services/service_proxy.py,sha256=4JrSxHqhBYqU1oENii89Db-bzkFWExYrOy-0mNEhWBs,4879
432
450
  dstack/_internal/server/services/runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
433
- dstack/_internal/server/services/runner/client.py,sha256=8xcZNdnQPHtXCVS2RdVS2_KDcrCUa1K6cnqcDZsisBU,15653
451
+ dstack/_internal/server/services/runner/client.py,sha256=m2chzrQmtcRiw2JUmdfWAbcQFGVKq4CiNEFZGE21WBw,15944
434
452
  dstack/_internal/server/services/runner/ssh.py,sha256=H-X0015ZPwYq5tc31ytFF1uNaUAr9itAsABI2oPJWrk,5017
435
- dstack/_internal/server/services/services/__init__.py,sha256=tV7-WyhPf2MFtYPO6j4tC5Gtg1iz6RzP_l0Oy8oMrWw,11597
453
+ dstack/_internal/server/services/services/__init__.py,sha256=O3P-PiXpakh3cIBW8DcKu4VnaKlxFmJJr8cSz8mpk9E,11632
436
454
  dstack/_internal/server/services/services/autoscalers.py,sha256=wg3QgfdKcaBdbtyJJlAzeMlicGKQMuRGpMPZKyemK5U,4447
437
455
  dstack/_internal/server/services/services/options.py,sha256=BEpZbRY4PKFVkNNWxLtY--QISqBL1_aPPzZYLPpRgvM,2234
438
456
  dstack/_internal/server/services/storage/__init__.py,sha256=ZjlLdCQiclM7h_dKJM9HXjMJDKCFOAf3yI4iO6K3HHk,1384
439
- dstack/_internal/server/services/storage/base.py,sha256=eK6wLny_QmRuTUDXo_WaZ8zdGpqduI0VeCO1n_-Yyxc,589
440
- dstack/_internal/server/services/storage/gcs.py,sha256=XJrbYCiyd3QvxorOPxgT4cPmtDt-7xjWlNsP-ctJmfk,1094
441
- 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
442
460
  dstack/_internal/server/statics/00a6e1fb461ed2929fb9.png,sha256=OOtPkMkLAB5vm5pJZKBQWpRmXgSYgvxH8WgaXIbaJZM,427
443
461
  dstack/_internal/server/statics/0cae4d9f0a36034984a7.png,sha256=Z2vD7WPCpPCmSokeW4LcAdFaxYfOTF5UvGYPPhz6ry4,160
444
462
  dstack/_internal/server/statics/391de232cc0e30cae513.png,sha256=9JBIW86hk7re23qp3NFMRTzyQE25dJ8-K-6aK-hwfu4,109
@@ -464,10 +482,10 @@ dstack/_internal/server/statics/e467d7d60aae81ab198b.svg,sha256=_XHc9mfQZgGkcy4h
464
482
  dstack/_internal/server/statics/eb9b344b73818fe2b71a.png,sha256=2H14eOCQRyZhFGJ1Kn2LH1j70kTF1Qop4vH-tiKqyPI,85
465
483
  dstack/_internal/server/statics/f517dd626eb964120de0.png,sha256=4QQuNa8SqmcZ67HK6739OHCyjnAJseU1bkcn454KRQs,159
466
484
  dstack/_internal/server/statics/f958aecddee5d8e3222c.png,sha256=8CoZkVNgRfOAe62X1dU-AZDvwh_nESKaQblEmaX2Xrs,87
467
- dstack/_internal/server/statics/index.html,sha256=RZEf5ld8bD0jUQaSdaTE2A5SppiPKW83GnA3WDhB22c,10468
468
- dstack/_internal/server/statics/main-0ac1e1583684417ae4d1.js,sha256=5MhxVHWpjhG1yUn1_EuxaqZnTKiyxh7EvT6AewCtZR8,6640162
469
- dstack/_internal/server/statics/main-0ac1e1583684417ae4d1.js.map,sha256=ichOiyuaMldNYBY7wc5PA7fYilYXbDU-HyRuh8MBO5c,8708636
470
- dstack/_internal/server/statics/main-f39c418b05fe14772dd8.css,sha256=Rpuq_7-gUuuWprZuHa4xN0Mkk08_65nmPAF4uXzuT8k,1355497
485
+ dstack/_internal/server/statics/index.html,sha256=rPFccPPoONdjXtfZi6wH3soRy9nKhRjhyt9kv1xBBaM,10468
486
+ dstack/_internal/server/statics/main-d151637af20f70b2e796.js,sha256=z10BMY5Sv-AP2ZJ1lT0T0ArqIbn_cv9ppYBv5_e8qN8,6674133
487
+ dstack/_internal/server/statics/main-d151637af20f70b2e796.js.map,sha256=r1my-myDkiGc1zGEpLufxJIYZFY3EpkgaJTwVn7DBDo,8771742
488
+ dstack/_internal/server/statics/main-d48635d8fe670d53961c.css,sha256=Y9QIs2El-lUKbUPcgSful7pI0TNmjhptGLQ9N3pQLAE,1355031
471
489
  dstack/_internal/server/statics/manifest.json,sha256=430w2BoWVmYYVr14lDvUxx-ROPt3VjigzeMqfLeiSCM,340
472
490
  dstack/_internal/server/statics/robots.txt,sha256=kNJLw79pisHhc3OVAimMzKcq3x9WT6sF9IS4xI0crdI,67
473
491
  dstack/_internal/server/statics/assets/android-chrome-144x144.png,sha256=tB3V-95O-VVEoawN5V1XFoMQRSK0I6gthraV8bATGaw,23414
@@ -541,11 +559,12 @@ dstack/_internal/server/statics/assets/yandex-browser-50x50.png,sha256=GGaavXItF
541
559
  dstack/_internal/server/statics/assets/yandex-browser-manifest.json,sha256=wQcuGCfkNsSmCXGg2IwxcwdykLSIx7xL3Y_WtmYYLq0,147
542
560
  dstack/_internal/server/statics/static/media/entraID.d65d1f3e9486a8e56d24fc07b3230885.svg,sha256=_v0ZwN0Yi2FB4XNlplXWZ-jjOtFIFabQTcC2gyPIRE4,1302
543
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
544
563
  dstack/_internal/server/statics/static/media/logo.f602feeb138844eda97c8cb641461448.svg,sha256=z1mS8Qo_NNRDObJ41uZfbZA0ZieZUVTnROuJjoiQabE,16373
545
564
  dstack/_internal/server/statics/static/media/okta.12f178e6873a1100965f2a4dbd18fcec.svg,sha256=KqFI05gQM135zC1plF1WBRF2F7CyKL7km97WKsZjAHI,319
546
565
  dstack/_internal/server/statics/static/media/theme.3994c817bb7dda191c1c9640dee0bf42.svg,sha256=ZxFFBVZWuRLqmWH4zhwGLNtKjOzHj-5MGJRunFAtu1I,561
547
566
  dstack/_internal/server/testing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
548
- dstack/_internal/server/testing/common.py,sha256=KwM6SMDbYNovuKCuU3PUWM0-OTdO175TF8N24BpIhgY,31884
567
+ dstack/_internal/server/testing/common.py,sha256=hNlvSP_aOzazCYrCwhbE70fACHa3WGRRukLgqfHNlHY,32765
549
568
  dstack/_internal/server/testing/conf.py,sha256=-zhujfFjTHNfQDOK-hBck32By11c_kC0OeinB3esQGg,1902
550
569
  dstack/_internal/server/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
551
570
  dstack/_internal/server/utils/common.py,sha256=PbjXtqYy1taKXpyG5ys8cIrz9MXqc9dBAsR_9D1brrk,1414
@@ -557,13 +576,15 @@ dstack/_internal/utils/crypto.py,sha256=2RTSyzePuwwqc1X2HO6lwcSFyZ2kujnqluoICQ2D
557
576
  dstack/_internal/utils/dxf.py,sha256=wguK9s6-69kqSDZkxd1kFEr6VlH5ixvFRJxizyOuJ8I,3229
558
577
  dstack/_internal/utils/env.py,sha256=HRbIspHpKHh05fMZeV23-hrZoV6vVMuniefD08u6ey0,357
559
578
  dstack/_internal/utils/event_loop.py,sha256=DO2ADtWfH2z8F2hBbg_EADSWzleQYGVZ9D1XYDpH-tk,880
579
+ dstack/_internal/utils/files.py,sha256=3ILdDvPPv2_vSEHRhLI15PG0R03RnO2aq_sWXGWIvm0,2692
560
580
  dstack/_internal/utils/gpu.py,sha256=ZeWpy1nRLVh-FwBZdxbMoVjjCF0DWJlWfNoVgFhGx2w,1776
561
581
  dstack/_internal/utils/hash.py,sha256=mCERRtj9QwbpoP3vveBqbniSJiNMHG0vPSzp4fxmKv0,920
562
582
  dstack/_internal/utils/interpolator.py,sha256=kLRm_DagGcjnkLPtMC9NaHioegsUvg8uk4lom38eV3I,2922
563
583
  dstack/_internal/utils/json_schema.py,sha256=oh23z6jdl_wx3qkojk_2egyKZbdmYWZs12Gd9Bk46M8,371
564
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
565
586
  dstack/_internal/utils/network.py,sha256=vvIQulBapL6Zw50jsit7sNNbGJVKTzooqWhkVWqaAzQ,1488
566
- dstack/_internal/utils/path.py,sha256=YRjmRGe7TQFwsmJBHMjOQhOZo5bieVCVbxOT5J_cbpA,905
587
+ dstack/_internal/utils/path.py,sha256=C2l1FKPkMhhYH9kB7-mQsbk_hI39iUHeFma8K4SMjls,1119
567
588
  dstack/_internal/utils/random_names.py,sha256=lVyzAmXhaSf2bAuvRFQ_ihLy42in1ydN4gJYsMw4GG8,3537
568
589
  dstack/_internal/utils/ssh.py,sha256=R5ga40BMeSrjh-siVgP6WDTngDCjnGNz8P0ztGZ3nnI,11871
569
590
  dstack/_internal/utils/tags.py,sha256=Gx4aZM85E_UUCGuFZbCEFxHB5DNgrtJP15_1tFFEd1c,1292
@@ -572,19 +593,20 @@ dstack/api/utils.py,sha256=_la3CRk1vgrPGkInPI1SOr33e8Jvh8ziJC32fjvKnaU,4188
572
593
  dstack/api/_public/__init__.py,sha256=mbzsdV3nWUJRksc7czX5C0iPT3NA6YRpriQQRiXwIbY,3429
573
594
  dstack/api/_public/backends.py,sha256=w_cIUVU3L1tN8VoPH6-ltq-oJewlfXWTiEFXfDvm-1Q,1056
574
595
  dstack/api/_public/repos.py,sha256=2ufUtxY8WyPci9tCGYzsnyIFTXNJfTuPzDYvpTydZ6k,6133
575
- dstack/api/_public/runs.py,sha256=lm_Xa7z_dfGQquGntxOcaOmCl7T5eo5T_kNv8QkKW9I,28456
596
+ dstack/api/_public/runs.py,sha256=G3Ta_dZxua3NdCgXOMwyhPClncnRX0LIeAutxu9fJ5A,30979
576
597
  dstack/api/huggingface/__init__.py,sha256=oIrEij3wttLZ1yrywEGvCMd6zswMQrX5pPjrqdSi0UA,2201
577
- dstack/api/server/__init__.py,sha256=Zyl1M51tifn4pB150yIsh39N96qUgMjg5XplcElHDxg,6097
598
+ dstack/api/server/__init__.py,sha256=hEG4zZBocrU0bZaAqD9Kno4oR3gx0oJ1d5cyjuz-4UM,6285
578
599
  dstack/api/server/_backends.py,sha256=tSvJ4j-yp-S-4IYo7pKHluDaSsx6Xbwo08Ff6Do85fo,1639
600
+ dstack/api/server/_files.py,sha256=iOBHm1CvJiG4TqNx3t5LYOf7w3jff9I15wxYpIAg-r4,780
579
601
  dstack/api/server/_fleets.py,sha256=6Duz5-SF1HI4qIkgdJr8OikzDosYtavJZOEyMwyDu_8,2882
580
602
  dstack/api/server/_gateways.py,sha256=2wyoERBl9R-uWtBI0AiRgLFLtNRlagQxlcgOWHkAlhA,2274
581
603
  dstack/api/server/_group.py,sha256=f9a_YvwZ7s1vDTQhOWHLwm3kO84C5R_zXToD4cxAnvY,432
582
- dstack/api/server/_logs.py,sha256=ng8QvFAIaoVOVChTK6Wuu5BeM6y7gAdx30KEYRsn9xA,500
604
+ dstack/api/server/_logs.py,sha256=MOs7P_EX0qhwIodEumXeE2CK3o_5YmUVvkMd8rA_4mk,647
583
605
  dstack/api/server/_metrics.py,sha256=OPb8sLhI_U605sHOPrELgy0_6cNFLJVfpvr-qkEukRM,670
584
- dstack/api/server/_projects.py,sha256=r0v0xlrRLtXCrI3QyjWF3LD2rAQx1F2ON8lCVQ9X5Qk,1486
606
+ dstack/api/server/_projects.py,sha256=1nlsm7CRaTKqaUX93un8BY845YWEuxXFGrwg3IJvGNw,2910
585
607
  dstack/api/server/_repos.py,sha256=bqsKuZWyiNLE8UAdSZrYNtk1J3Gu5MXXnTMIoM9jxpI,1770
586
608
  dstack/api/server/_runs.py,sha256=9XjsjH05Q26iagDwv8PZ4PbzG8KfSL1mEOHkem2FZ74,3086
587
- dstack/api/server/_secrets.py,sha256=VqLfrIcmBJtPxNDRkXTG44H5SWoY788YJapScUukvdY,1576
609
+ dstack/api/server/_secrets.py,sha256=YN6smkAb1vj8jG5KKeEEEjAM1KL880bfBLlrTzGcUu4,1366
588
610
  dstack/api/server/_users.py,sha256=XzhgGKc5Tsr0-xkz3T6rGyWZ1tO7aYNhLux2eE7dAoY,1738
589
611
  dstack/api/server/_volumes.py,sha256=dL_DS0edjdXnW8vIjdDpxHhRMBdHAjjnyUhRFvQd0sE,1523
590
612
  dstack/api/server/utils.py,sha256=i1KX4CNXVeDj9CnytdzsJz0bxjvvfLRTb7xw8oqtEtQ,1040
@@ -597,8 +619,8 @@ dstack/plugins/builtin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3
597
619
  dstack/plugins/builtin/rest_plugin/__init__.py,sha256=lgTsq8Z6Km2F2UhPRChVB4vDM5ZpWtdk1iB1aa20ypA,440
598
620
  dstack/plugins/builtin/rest_plugin/_models.py,sha256=9hgVuU6OGSxidar88XhQnNo9izYWeQvVH45ciErv-Es,1910
599
621
  dstack/plugins/builtin/rest_plugin/_plugin.py,sha256=iv8TmQh959iEUZjCFTzmGnFW8fHukTVpPmD4iBzOfS4,5361
600
- dstack-0.19.15rc1.dist-info/METADATA,sha256=2GTDR6vPXhmDhlrFN_Hfeo27viDk0hrw2I2a4w0SvIs,20516
601
- dstack-0.19.15rc1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
602
- dstack-0.19.15rc1.dist-info/entry_points.txt,sha256=GnLrMS8hx3rWAySQjA7tPNhtixV6a-brRkmal1PKoHc,58
603
- dstack-0.19.15rc1.dist-info/licenses/LICENSE.md,sha256=qDABaRGjSKVOib1U8viw2P_96sIK7Puo426784oD9f8,15976
604
- dstack-0.19.15rc1.dist-info/RECORD,,
622
+ dstack-0.19.17.dist-info/METADATA,sha256=a31oa8YaBiQSghhxFCyBZOqG_MT-DbZPmq8jXmtKHPI,20532
623
+ dstack-0.19.17.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
624
+ dstack-0.19.17.dist-info/entry_points.txt,sha256=GnLrMS8hx3rWAySQjA7tPNhtixV6a-brRkmal1PKoHc,58
625
+ dstack-0.19.17.dist-info/licenses/LICENSE.md,sha256=qDABaRGjSKVOib1U8viw2P_96sIK7Puo426784oD9f8,15976
626
+ dstack-0.19.17.dist-info/RECORD,,