skypilot-nightly 1.0.0.dev20250703__tar.gz → 1.0.0.dev20250707__tar.gz

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.
Files changed (514) hide show
  1. {skypilot_nightly-1.0.0.dev20250703/skypilot_nightly.egg-info → skypilot_nightly-1.0.0.dev20250707}/PKG-INFO +3 -2
  2. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/README.md +2 -1
  3. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/__init__.py +2 -2
  4. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/backends/backend_utils.py +26 -25
  5. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/cudo_catalog.py +1 -1
  6. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/fetch_cudo.py +37 -37
  7. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/client/sdk.py +4 -6
  8. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/aws.py +1 -1
  9. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/cudo.py +1 -1
  10. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/404.html +1 -1
  11. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/clusters/[cluster]/[job].html +1 -1
  12. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/clusters/[cluster].html +1 -1
  13. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/clusters.html +1 -1
  14. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/config.html +1 -1
  15. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/index.html +1 -1
  16. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/infra/[context].html +1 -1
  17. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/infra.html +1 -1
  18. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/jobs/[job].html +1 -1
  19. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/jobs.html +1 -1
  20. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/users.html +1 -1
  21. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/volumes.html +1 -1
  22. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/workspace/new.html +1 -1
  23. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/workspaces/[name].html +1 -1
  24. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/workspaces.html +1 -1
  25. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/exceptions.py +5 -0
  26. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/client/sdk.py +3 -1
  27. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/server/core.py +3 -1
  28. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/cudo/cudo_utils.py +14 -8
  29. skypilot_nightly-1.0.0.dev20250707/sky/provision/cudo/cudo_wrapper.py +145 -0
  30. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/common.py +46 -92
  31. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/constants.py +25 -4
  32. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/executor.py +4 -1
  33. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/payloads.py +55 -10
  34. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/requests.py +6 -28
  35. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/rest.py +15 -4
  36. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/server.py +40 -7
  37. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/uvicorn.py +2 -0
  38. skypilot_nightly-1.0.0.dev20250707/sky/server/versions.py +270 -0
  39. skypilot_nightly-1.0.0.dev20250707/sky/utils/tempstore.py +51 -0
  40. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707/skypilot_nightly.egg-info}/PKG-INFO +3 -2
  41. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/skypilot_nightly.egg-info/SOURCES.txt +4 -2
  42. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_api_compatibility.py +13 -5
  43. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_cli.py +0 -27
  44. skypilot_nightly-1.0.0.dev20250703/sky/provision/cudo/cudo_wrapper.py +0 -144
  45. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/LICENSE +0 -0
  46. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/MANIFEST.in +0 -0
  47. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/pyproject.toml +0 -0
  48. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/setup.cfg +0 -0
  49. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/setup.py +0 -0
  50. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/__init__.py +0 -0
  51. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/aws.py +0 -0
  52. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/azure.py +0 -0
  53. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/cloudflare.py +0 -0
  54. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/common.py +0 -0
  55. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/cudo.py +0 -0
  56. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/do.py +0 -0
  57. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/docker.py +0 -0
  58. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/gcp.py +0 -0
  59. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/hyperbolic.py +0 -0
  60. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/ibm.py +0 -0
  61. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/kubernetes.py +0 -0
  62. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/nebius.py +0 -0
  63. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/oci.py +0 -0
  64. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/runpod.py +0 -0
  65. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/vast.py +0 -0
  66. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/adaptors/vsphere.py +0 -0
  67. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/admin_policy.py +0 -0
  68. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/authentication.py +0 -0
  69. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/backends/__init__.py +0 -0
  70. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/backends/backend.py +0 -0
  71. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/backends/cloud_vm_ray_backend.py +0 -0
  72. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/backends/docker_utils.py +0 -0
  73. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/backends/local_docker_backend.py +0 -0
  74. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/backends/monkey_patches/monkey_patch_ray_up.py +0 -0
  75. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/backends/wheel_utils.py +0 -0
  76. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/__init__.py +0 -0
  77. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/aws_catalog.py +0 -0
  78. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/azure_catalog.py +0 -0
  79. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/common.py +0 -0
  80. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/config.py +0 -0
  81. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/__init__.py +0 -0
  82. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/analyze.py +0 -0
  83. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/fetch_aws.py +0 -0
  84. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/fetch_azure.py +0 -0
  85. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/fetch_fluidstack.py +0 -0
  86. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/fetch_gcp.py +0 -0
  87. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/fetch_hyperbolic.py +0 -0
  88. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/fetch_ibm.py +0 -0
  89. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/fetch_lambda_cloud.py +0 -0
  90. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/fetch_vast.py +0 -0
  91. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/data_fetchers/fetch_vsphere.py +0 -0
  92. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/do_catalog.py +0 -0
  93. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/fluidstack_catalog.py +0 -0
  94. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/gcp_catalog.py +0 -0
  95. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/hyperbolic_catalog.py +0 -0
  96. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/ibm_catalog.py +0 -0
  97. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/kubernetes_catalog.py +0 -0
  98. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/lambda_catalog.py +0 -0
  99. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/nebius_catalog.py +0 -0
  100. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/oci_catalog.py +0 -0
  101. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/paperspace_catalog.py +0 -0
  102. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/runpod_catalog.py +0 -0
  103. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/scp_catalog.py +0 -0
  104. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/ssh_catalog.py +0 -0
  105. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/vast_catalog.py +0 -0
  106. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/catalog/vsphere_catalog.py +0 -0
  107. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/check.py +0 -0
  108. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/cli.py +0 -0
  109. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/client/__init__.py +0 -0
  110. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/client/cli/__init__.py +0 -0
  111. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/client/cli/command.py +0 -0
  112. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/client/cli/deprecation_utils.py +0 -0
  113. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/client/cli/flags.py +0 -0
  114. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/client/common.py +0 -0
  115. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/client/oauth.py +0 -0
  116. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/client/service_account_auth.py +0 -0
  117. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/cloud_stores.py +0 -0
  118. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/__init__.py +0 -0
  119. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/azure.py +0 -0
  120. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/cloud.py +0 -0
  121. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/do.py +0 -0
  122. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/fluidstack.py +0 -0
  123. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/gcp.py +0 -0
  124. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/hyperbolic.py +0 -0
  125. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/ibm.py +0 -0
  126. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/kubernetes.py +0 -0
  127. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/lambda_cloud.py +0 -0
  128. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/nebius.py +0 -0
  129. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/oci.py +0 -0
  130. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/paperspace.py +0 -0
  131. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/runpod.py +0 -0
  132. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/scp.py +0 -0
  133. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/ssh.py +0 -0
  134. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/utils/__init__.py +0 -0
  135. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/utils/aws_utils.py +0 -0
  136. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/utils/azure_utils.py +0 -0
  137. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/utils/gcp_utils.py +0 -0
  138. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/utils/oci_utils.py +0 -0
  139. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/utils/scp_utils.py +0 -0
  140. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/vast.py +0 -0
  141. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/clouds/vsphere.py +0 -0
  142. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/core.py +0 -0
  143. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dag.py +0 -0
  144. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/1043-1b39779691bb4030.js +0 -0
  145. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/1141-726e5a3f00b67185.js +0 -0
  146. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/1272-1ef0bf0237faccdb.js +0 -0
  147. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/1664-d65361e92b85e786.js +0 -0
  148. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/1691.44e378727a41f3b5.js +0 -0
  149. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/1871-80dea41717729fa5.js +0 -0
  150. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/2544.27f70672535675ed.js +0 -0
  151. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/2875.c24c6d57dc82e436.js +0 -0
  152. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/3256.7257acd01b481bed.js +0 -0
  153. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/3698-52ad1ca228faa776.js +0 -0
  154. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/3785.b3cc2bc1d49d2c3c.js +0 -0
  155. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/3937.d7f1c55d1916c7f2.js +0 -0
  156. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/3947-b059261d6fa88a1f.js +0 -0
  157. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/430.ed51037d1a4a438b.js +0 -0
  158. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/4697.f5421144224da9fc.js +0 -0
  159. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/4725.4c849b1e05c8e9ad.js +0 -0
  160. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/5230-df791914b54d91d9.js +0 -0
  161. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/5491.918ffed0ba7a5294.js +0 -0
  162. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/5739-5ea3ffa10fc884f2.js +0 -0
  163. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/616-162f3033ffcd3d31.js +0 -0
  164. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/6601-fcfad0ddf92ec7ab.js +0 -0
  165. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/6989-6ff4e45dfb49d11d.js +0 -0
  166. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/6990-d0dc765474fa0eca.js +0 -0
  167. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/804-9f5e98ce84d46bdd.js +0 -0
  168. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/8969-909d53833da080cb.js +0 -0
  169. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/8982.a2e214068f30a857.js +0 -0
  170. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/9025.a7c44babfe56ce09.js +0 -0
  171. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/938-044ad21de8b4626b.js +0 -0
  172. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/9470-21d059a1dfa03f61.js +0 -0
  173. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/9984.b56614f3c4c5961d.js +0 -0
  174. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/fd9d1056-61f2257a9cd8b32b.js +0 -0
  175. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/framework-efc06c2733009cd3.js +0 -0
  176. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/main-app-68c028b1bc5e1b72.js +0 -0
  177. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/main-c0a4f1ea606d48d2.js +0 -0
  178. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/_app-a37b06ddb64521fd.js +0 -0
  179. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/_error-c72a1f77a3c0be1b.js +0 -0
  180. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]/[job]-8135aba0712bda37.js +0 -0
  181. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-1159f362b960e2b8.js +0 -0
  182. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/clusters-9744c271a1642f76.js +0 -0
  183. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/config-a2673b256b6d416f.js +0 -0
  184. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/index-927ddeebe57a8ac3.js +0 -0
  185. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/infra/[context]-8b0809f59034d509.js +0 -0
  186. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/infra-ae9d2f705ce582c9.js +0 -0
  187. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-c4d5cfac7fbc0668.js +0 -0
  188. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/jobs-5bbdc71878f0a068.js +0 -0
  189. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/users-cd43fb3c122eedde.js +0 -0
  190. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/volumes-4ebf6484f7216387.js +0 -0
  191. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/workspace/new-5629d4e551dba1ee.js +0 -0
  192. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/workspaces/[name]-7c0187f43757a548.js +0 -0
  193. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/pages/workspaces-06bde99155fa6292.js +0 -0
  194. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js +0 -0
  195. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/chunks/webpack-9a81ea998672c303.js +0 -0
  196. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/_next/static/css/0da6afe66176678a.css +0 -0
  197. {skypilot_nightly-1.0.0.dev20250703/sky/dashboard/out/_next/static/A-fbCEgJE_q2cV8biIOIr → skypilot_nightly-1.0.0.dev20250707/sky/dashboard/out/_next/static/wEkAg9F21A-COXJLf20VU}/_buildManifest.js +0 -0
  198. {skypilot_nightly-1.0.0.dev20250703/sky/dashboard/out/_next/static/A-fbCEgJE_q2cV8biIOIr → skypilot_nightly-1.0.0.dev20250707/sky/dashboard/out/_next/static/wEkAg9F21A-COXJLf20VU}/_ssgManifest.js +0 -0
  199. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/favicon.ico +0 -0
  200. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/skypilot.svg +0 -0
  201. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/dashboard/out/videos/cursor-small.mp4 +0 -0
  202. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/data/__init__.py +0 -0
  203. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/data/data_transfer.py +0 -0
  204. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/data/data_utils.py +0 -0
  205. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/data/mounting_utils.py +0 -0
  206. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/data/storage.py +0 -0
  207. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/data/storage_utils.py +0 -0
  208. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/execution.py +0 -0
  209. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/global_user_state.py +0 -0
  210. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/__init__.py +0 -0
  211. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/client/__init__.py +0 -0
  212. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/constants.py +0 -0
  213. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/controller.py +0 -0
  214. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/recovery_strategy.py +0 -0
  215. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/scheduler.py +0 -0
  216. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/server/__init__.py +0 -0
  217. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/server/server.py +0 -0
  218. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/state.py +0 -0
  219. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/jobs/utils.py +0 -0
  220. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/logs/__init__.py +0 -0
  221. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/logs/agent.py +0 -0
  222. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/logs/gcp.py +0 -0
  223. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/metrics/__init__.py +0 -0
  224. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/metrics/utils.py +0 -0
  225. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/models.py +0 -0
  226. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/optimizer.py +0 -0
  227. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/__init__.py +0 -0
  228. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/aws/__init__.py +0 -0
  229. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/aws/config.py +0 -0
  230. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/aws/instance.py +0 -0
  231. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/aws/utils.py +0 -0
  232. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/azure/__init__.py +0 -0
  233. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/azure/azure-config-template.json +0 -0
  234. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/azure/config.py +0 -0
  235. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/azure/instance.py +0 -0
  236. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/common.py +0 -0
  237. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/constants.py +0 -0
  238. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/cudo/__init__.py +0 -0
  239. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/cudo/config.py +0 -0
  240. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/cudo/cudo_machine_type.py +0 -0
  241. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/cudo/instance.py +0 -0
  242. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/do/__init__.py +0 -0
  243. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/do/config.py +0 -0
  244. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/do/constants.py +0 -0
  245. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/do/instance.py +0 -0
  246. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/do/utils.py +0 -0
  247. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/docker_utils.py +0 -0
  248. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/fluidstack/__init__.py +0 -0
  249. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/fluidstack/config.py +0 -0
  250. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/fluidstack/fluidstack_utils.py +0 -0
  251. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/fluidstack/instance.py +0 -0
  252. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/gcp/__init__.py +0 -0
  253. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/gcp/config.py +0 -0
  254. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/gcp/constants.py +0 -0
  255. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/gcp/instance.py +0 -0
  256. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/gcp/instance_utils.py +0 -0
  257. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/gcp/mig_utils.py +0 -0
  258. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/gcp/volume_utils.py +0 -0
  259. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/hyperbolic/__init__.py +0 -0
  260. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/hyperbolic/config.py +0 -0
  261. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/hyperbolic/instance.py +0 -0
  262. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/hyperbolic/utils.py +0 -0
  263. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/instance_setup.py +0 -0
  264. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/kubernetes/__init__.py +0 -0
  265. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/kubernetes/config.py +0 -0
  266. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/kubernetes/constants.py +0 -0
  267. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/kubernetes/instance.py +0 -0
  268. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/kubernetes/manifests/fusermount-server-daemonset.yaml +0 -0
  269. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/kubernetes/network.py +0 -0
  270. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/kubernetes/network_utils.py +0 -0
  271. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/kubernetes/utils.py +0 -0
  272. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/kubernetes/volume.py +0 -0
  273. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/lambda_cloud/__init__.py +0 -0
  274. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/lambda_cloud/config.py +0 -0
  275. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/lambda_cloud/instance.py +0 -0
  276. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/lambda_cloud/lambda_utils.py +0 -0
  277. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/logging.py +0 -0
  278. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/metadata_utils.py +0 -0
  279. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/nebius/__init__.py +0 -0
  280. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/nebius/config.py +0 -0
  281. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/nebius/constants.py +0 -0
  282. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/nebius/instance.py +0 -0
  283. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/nebius/utils.py +0 -0
  284. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/oci/__init__.py +0 -0
  285. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/oci/config.py +0 -0
  286. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/oci/instance.py +0 -0
  287. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/oci/query_utils.py +0 -0
  288. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/paperspace/__init__.py +0 -0
  289. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/paperspace/config.py +0 -0
  290. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/paperspace/constants.py +0 -0
  291. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/paperspace/instance.py +0 -0
  292. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/paperspace/utils.py +0 -0
  293. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/provisioner.py +0 -0
  294. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/runpod/__init__.py +0 -0
  295. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/runpod/api/__init__.py +0 -0
  296. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/runpod/api/commands.py +0 -0
  297. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/runpod/api/pods.py +0 -0
  298. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/runpod/config.py +0 -0
  299. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/runpod/instance.py +0 -0
  300. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/runpod/utils.py +0 -0
  301. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/scp/__init__.py +0 -0
  302. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/scp/config.py +0 -0
  303. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/scp/instance.py +0 -0
  304. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/ssh/__init__.py +0 -0
  305. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vast/__init__.py +0 -0
  306. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vast/config.py +0 -0
  307. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vast/instance.py +0 -0
  308. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vast/utils.py +0 -0
  309. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/__init__.py +0 -0
  310. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/common/__init__.py +0 -0
  311. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/common/cls_api_client.py +0 -0
  312. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/common/cls_api_helper.py +0 -0
  313. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/common/custom_script.py +0 -0
  314. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/common/id_generator.py +0 -0
  315. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/common/metadata_utils.py +0 -0
  316. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/common/service_manager.py +0 -0
  317. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/common/service_manager_factory.py +0 -0
  318. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/common/ssl_helper.py +0 -0
  319. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/common/vapiconnect.py +0 -0
  320. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/common/vim_utils.py +0 -0
  321. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/config.py +0 -0
  322. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/instance.py +0 -0
  323. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/provision/vsphere/vsphere_utils.py +0 -0
  324. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/resources.py +0 -0
  325. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/__init__.py +0 -0
  326. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/autoscalers.py +0 -0
  327. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/client/__init__.py +0 -0
  328. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/client/sdk.py +0 -0
  329. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/constants.py +0 -0
  330. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/controller.py +0 -0
  331. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/load_balancer.py +0 -0
  332. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/load_balancing_policies.py +0 -0
  333. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/replica_managers.py +0 -0
  334. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/serve_state.py +0 -0
  335. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/serve_utils.py +0 -0
  336. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/server/__init__.py +0 -0
  337. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/server/core.py +0 -0
  338. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/server/server.py +0 -0
  339. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/service.py +0 -0
  340. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/service_spec.py +0 -0
  341. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/serve/spot_placer.py +0 -0
  342. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/__init__.py +0 -0
  343. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/config.py +0 -0
  344. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/html/log.html +0 -0
  345. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/html/token_page.html +0 -0
  346. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/metrics.py +0 -0
  347. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/__init__.py +0 -0
  348. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/event_loop.py +0 -0
  349. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/preconditions.py +0 -0
  350. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/process.py +0 -0
  351. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/queues/__init__.py +0 -0
  352. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/queues/local_queue.py +0 -0
  353. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/queues/mp_queue.py +0 -0
  354. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/serializers/__init__.py +0 -0
  355. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/serializers/decoders.py +0 -0
  356. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/requests/serializers/encoders.py +0 -0
  357. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/state.py +0 -0
  358. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/server/stream_utils.py +0 -0
  359. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/setup_files/MANIFEST.in +0 -0
  360. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/setup_files/dependencies.py +0 -0
  361. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/setup_files/setup.py +0 -0
  362. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/sky_logging.py +0 -0
  363. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/LICENSE +0 -0
  364. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/__init__.py +0 -0
  365. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/attempt_skylet.py +0 -0
  366. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/autostop_lib.py +0 -0
  367. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/configs.py +0 -0
  368. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/constants.py +0 -0
  369. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/events.py +0 -0
  370. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/job_lib.py +0 -0
  371. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/log_lib.py +0 -0
  372. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/log_lib.pyi +0 -0
  373. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/providers/__init__.py +0 -0
  374. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/providers/command_runner.py +0 -0
  375. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/providers/ibm/__init__.py +0 -0
  376. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/providers/ibm/node_provider.py +0 -0
  377. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/providers/ibm/utils.py +0 -0
  378. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/providers/ibm/vpc_provider.py +0 -0
  379. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/ray_patches/__init__.py +0 -0
  380. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/ray_patches/autoscaler.py.patch +0 -0
  381. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/ray_patches/cli.py.patch +0 -0
  382. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/ray_patches/command_runner.py.patch +0 -0
  383. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/ray_patches/log_monitor.py.patch +0 -0
  384. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/ray_patches/resource_demand_scheduler.py.patch +0 -0
  385. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/ray_patches/updater.py.patch +0 -0
  386. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/ray_patches/worker.py.patch +0 -0
  387. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/skylet.py +0 -0
  388. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skylet/subprocess_daemon.py +0 -0
  389. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/skypilot_config.py +0 -0
  390. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/ssh_node_pools/__init__.py +0 -0
  391. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/ssh_node_pools/core.py +0 -0
  392. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/ssh_node_pools/server.py +0 -0
  393. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/task.py +0 -0
  394. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/aws-ray.yml.j2 +0 -0
  395. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/azure-ray.yml.j2 +0 -0
  396. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/cudo-ray.yml.j2 +0 -0
  397. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/do-ray.yml.j2 +0 -0
  398. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/fluidstack-ray.yml.j2 +0 -0
  399. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/gcp-ray.yml.j2 +0 -0
  400. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/hyperbolic-ray.yml.j2 +0 -0
  401. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/ibm-ray.yml.j2 +0 -0
  402. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/jobs-controller.yaml.j2 +0 -0
  403. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/kubernetes-ingress.yml.j2 +0 -0
  404. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/kubernetes-loadbalancer.yml.j2 +0 -0
  405. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/kubernetes-port-forward-proxy-command.sh +0 -0
  406. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/kubernetes-ray.yml.j2 +0 -0
  407. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/kubernetes-ssh-jump.yml.j2 +0 -0
  408. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/lambda-ray.yml.j2 +0 -0
  409. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/local-ray.yml.j2 +0 -0
  410. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/nebius-ray.yml.j2 +0 -0
  411. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/oci-ray.yml.j2 +0 -0
  412. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/paperspace-ray.yml.j2 +0 -0
  413. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/runpod-ray.yml.j2 +0 -0
  414. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/scp-ray.yml.j2 +0 -0
  415. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/sky-serve-controller.yaml.j2 +0 -0
  416. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/skypilot-server-kubernetes-proxy.sh +0 -0
  417. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/vast-ray.yml.j2 +0 -0
  418. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/vsphere-ray.yml.j2 +0 -0
  419. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/templates/websocket_proxy.py +0 -0
  420. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/usage/__init__.py +0 -0
  421. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/usage/constants.py +0 -0
  422. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/usage/usage_lib.py +0 -0
  423. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/users/__init__.py +0 -0
  424. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/users/model.conf +0 -0
  425. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/users/permission.py +0 -0
  426. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/users/rbac.py +0 -0
  427. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/users/server.py +0 -0
  428. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/users/token_service.py +0 -0
  429. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/__init__.py +0 -0
  430. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/accelerator_registry.py +0 -0
  431. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/admin_policy_utils.py +0 -0
  432. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/annotations.py +0 -0
  433. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/atomic.py +0 -0
  434. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/aws/__init__.py +0 -0
  435. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/aws/get_default_security_group.py +0 -0
  436. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/cli_utils/__init__.py +0 -0
  437. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/cli_utils/status_utils.py +0 -0
  438. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/cluster_utils.py +0 -0
  439. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/command_runner.py +0 -0
  440. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/command_runner.pyi +0 -0
  441. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/common.py +0 -0
  442. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/common_utils.py +0 -0
  443. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/config_utils.py +0 -0
  444. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/context.py +0 -0
  445. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/context_utils.py +0 -0
  446. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/control_master_utils.py +0 -0
  447. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/controller_utils.py +0 -0
  448. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/dag_utils.py +0 -0
  449. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/db_utils.py +0 -0
  450. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/env_options.py +0 -0
  451. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/infra_utils.py +0 -0
  452. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/__init__.py +0 -0
  453. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/cleanup-tunnel.sh +0 -0
  454. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/config_map_utils.py +0 -0
  455. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/create_cluster.sh +0 -0
  456. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/delete_cluster.sh +0 -0
  457. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/deploy_remote_cluster.py +0 -0
  458. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/exec_kubeconfig_converter.py +0 -0
  459. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/generate_kind_config.py +0 -0
  460. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/generate_kubeconfig.sh +0 -0
  461. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/gpu_labeler.py +0 -0
  462. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/k8s_gpu_labeler_job.yaml +0 -0
  463. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/k8s_gpu_labeler_setup.yaml +0 -0
  464. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/kubernetes_deploy_utils.py +0 -0
  465. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/rsync_helper.sh +0 -0
  466. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/ssh-tunnel.sh +0 -0
  467. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/ssh_jump_lifecycle_manager.py +0 -0
  468. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes/ssh_utils.py +0 -0
  469. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/kubernetes_enums.py +0 -0
  470. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/log_utils.py +0 -0
  471. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/message_utils.py +0 -0
  472. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/registry.py +0 -0
  473. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/resource_checker.py +0 -0
  474. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/resources_utils.py +0 -0
  475. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/rich_console_utils.py +0 -0
  476. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/rich_utils.py +0 -0
  477. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/schemas.py +0 -0
  478. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/status_lib.py +0 -0
  479. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/subprocess_utils.py +0 -0
  480. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/timeline.py +0 -0
  481. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/ux_utils.py +0 -0
  482. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/utils/validator.py +0 -0
  483. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/volumes/__init__.py +0 -0
  484. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/volumes/client/__init__.py +0 -0
  485. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/volumes/client/sdk.py +0 -0
  486. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/volumes/server/__init__.py +0 -0
  487. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/volumes/server/core.py +0 -0
  488. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/volumes/server/server.py +0 -0
  489. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/volumes/utils.py +0 -0
  490. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/volumes/volume.py +0 -0
  491. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/workspaces/__init__.py +0 -0
  492. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/workspaces/core.py +0 -0
  493. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/workspaces/server.py +0 -0
  494. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/sky/workspaces/utils.py +0 -0
  495. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/skypilot_nightly.egg-info/dependency_links.txt +0 -0
  496. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/skypilot_nightly.egg-info/entry_points.txt +0 -0
  497. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/skypilot_nightly.egg-info/requires.txt +0 -0
  498. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/skypilot_nightly.egg-info/top_level.txt +0 -0
  499. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_api.py +0 -0
  500. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_config.py +0 -0
  501. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_db_utils.py +0 -0
  502. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_failover.py +0 -0
  503. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_global_user_state.py +0 -0
  504. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_jobs.py +0 -0
  505. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_jobs_and_serve.py +0 -0
  506. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_list_accelerators.py +0 -0
  507. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_no_parellel.py +0 -0
  508. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_optimizer_dryruns.py +0 -0
  509. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_optimizer_random_dag.py +0 -0
  510. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_serve_autoscaler.py +0 -0
  511. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_smoke.py +0 -0
  512. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_storage.py +0 -0
  513. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_wheels.py +0 -0
  514. {skypilot_nightly-1.0.0.dev20250703 → skypilot_nightly-1.0.0.dev20250707}/tests/test_yaml_parser.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: skypilot-nightly
3
- Version: 1.0.0.dev20250703
3
+ Version: 1.0.0.dev20250707
4
4
  Summary: SkyPilot: Run AI on Any Infra — Unified, Faster, Cheaper.
5
5
  Author: SkyPilot Team
6
6
  License: Apache 2.0
@@ -305,7 +305,8 @@ workdir: ~/torch_examples
305
305
  # Commands to be run before executing the job.
306
306
  # Typical use: pip install -r requirements.txt, git clone, etc.
307
307
  setup: |
308
- pip install "torch<2.2" torchvision --index-url https://download.pytorch.org/whl/cu121
308
+ cd mnist
309
+ pip install -r requirements.txt
309
310
 
310
311
  # Commands to run as a job.
311
312
  # Typical use: launch the main program.
@@ -117,7 +117,8 @@ workdir: ~/torch_examples
117
117
  # Commands to be run before executing the job.
118
118
  # Typical use: pip install -r requirements.txt, git clone, etc.
119
119
  setup: |
120
- pip install "torch<2.2" torchvision --index-url https://download.pytorch.org/whl/cu121
120
+ cd mnist
121
+ pip install -r requirements.txt
121
122
 
122
123
  # Commands to run as a job.
123
124
  # Typical use: launch the main program.
@@ -5,7 +5,7 @@ from typing import Optional
5
5
  import urllib.request
6
6
 
7
7
  # Replaced with the current commit when building the wheels.
8
- _SKYPILOT_COMMIT_SHA = 'f6a1308da44ddf1545f4f48964adf426ef47a682'
8
+ _SKYPILOT_COMMIT_SHA = '37ee86178d5bc23c6dc4fd69f0294b15075a64b8'
9
9
 
10
10
 
11
11
  def _get_git_commit():
@@ -35,7 +35,7 @@ def _get_git_commit():
35
35
 
36
36
 
37
37
  __commit__ = _get_git_commit()
38
- __version__ = '1.0.0.dev20250703'
38
+ __version__ = '1.0.0.dev20250707'
39
39
  __root_dir__ = os.path.dirname(os.path.abspath(__file__))
40
40
 
41
41
 
@@ -51,6 +51,7 @@ from sky.utils import rich_utils
51
51
  from sky.utils import schemas
52
52
  from sky.utils import status_lib
53
53
  from sky.utils import subprocess_utils
54
+ from sky.utils import tempstore
54
55
  from sky.utils import timeline
55
56
  from sky.utils import ux_utils
56
57
  from sky.workspaces import core as workspaces_core
@@ -247,7 +248,7 @@ def _optimize_file_mounts(tmp_yaml_path: str) -> None:
247
248
  # - use a remote command to move all runtime files to their right places.
248
249
 
249
250
  # Local tmp dir holding runtime files.
250
- local_runtime_files_dir = tempfile.mkdtemp()
251
+ local_runtime_files_dir = tempstore.mkdtemp()
251
252
  new_file_mounts = {_REMOTE_RUNTIME_FILES_DIR: local_runtime_files_dir}
252
253
 
253
254
  # Generate local_src -> unique_name.
@@ -2767,27 +2768,29 @@ def get_clusters(
2767
2768
  logger.info(f'Cluster(s) not found: {bright}{clusters_str}{reset}.')
2768
2769
  records = new_records
2769
2770
 
2770
- def _update_record_with_resources(record: Optional[Dict[str, Any]]) -> None:
2771
+ def _update_records_with_resources(
2772
+ records: List[Optional[Dict[str, Any]]]) -> None:
2771
2773
  """Add the resources to the record."""
2772
- if record is None:
2773
- return
2774
- handle = record['handle']
2775
- if handle is None:
2776
- return
2777
- record['nodes'] = handle.launched_nodes
2778
- if handle.launched_resources is None:
2779
- return
2780
- record['cloud'] = (f'{handle.launched_resources.cloud}'
2781
- if handle.launched_resources.cloud else None)
2782
- record['region'] = (f'{handle.launched_resources.region}'
2783
- if handle.launched_resources.region else None)
2784
- record['cpus'] = (f'{handle.launched_resources.cpus}'
2785
- if handle.launched_resources.cpus else None)
2786
- record['memory'] = (f'{handle.launched_resources.memory}'
2787
- if handle.launched_resources.memory else None)
2788
- record['accelerators'] = (f'{handle.launched_resources.accelerators}'
2789
- if handle.launched_resources.accelerators else
2790
- None)
2774
+ for record in records:
2775
+ if record is None:
2776
+ continue
2777
+ handle = record['handle']
2778
+ if handle is None:
2779
+ continue
2780
+ record['nodes'] = handle.launched_nodes
2781
+ if handle.launched_resources is None:
2782
+ continue
2783
+ record['cloud'] = (f'{handle.launched_resources.cloud}'
2784
+ if handle.launched_resources.cloud else None)
2785
+ record['region'] = (f'{handle.launched_resources.region}'
2786
+ if handle.launched_resources.region else None)
2787
+ record['cpus'] = (f'{handle.launched_resources.cpus}'
2788
+ if handle.launched_resources.cpus else None)
2789
+ record['memory'] = (f'{handle.launched_resources.memory}'
2790
+ if handle.launched_resources.memory else None)
2791
+ record['accelerators'] = (
2792
+ f'{handle.launched_resources.accelerators}'
2793
+ if handle.launched_resources.accelerators else None)
2791
2794
 
2792
2795
  # Add auth_config to the records
2793
2796
  for record in records:
@@ -2795,8 +2798,7 @@ def get_clusters(
2795
2798
 
2796
2799
  if refresh == common.StatusRefreshMode.NONE:
2797
2800
  # Add resources to the records
2798
- for record in records:
2799
- _update_record_with_resources(record)
2801
+ _update_records_with_resources(records)
2800
2802
  return records
2801
2803
 
2802
2804
  plural = 's' if len(records) > 1 else ''
@@ -2873,8 +2875,7 @@ def get_clusters(
2873
2875
  logger.warning(f' {bright}{cluster_name}{reset}: {e}')
2874
2876
 
2875
2877
  # Add resources to the records
2876
- for record in kept_records:
2877
- _update_record_with_resources(record)
2878
+ _update_records_with_resources(kept_records)
2878
2879
  return kept_records
2879
2880
 
2880
2881
 
@@ -10,7 +10,7 @@ from sky.utils import ux_utils
10
10
  if typing.TYPE_CHECKING:
11
11
  from sky.clouds import cloud
12
12
 
13
- _PULL_FREQUENCY_HOURS = 1
13
+ _PULL_FREQUENCY_HOURS = 7
14
14
  _df = common.read_catalog(cudo_mt.VMS_CSV,
15
15
  pull_frequency_hours=_PULL_FREQUENCY_HOURS)
16
16
 
@@ -14,13 +14,6 @@ import sky.provision.cudo.cudo_utils as utils
14
14
  VMS_CSV = 'cudo/vms.csv'
15
15
 
16
16
 
17
- def cudo_api():
18
- configuration = cudo_compute.Configuration()
19
- configuration.host = 'https://rest.compute.cudo.org'
20
- client = cudo_compute.ApiClient(configuration)
21
- return cudo_compute.VirtualMachinesApi(client)
22
-
23
-
24
17
  def get_gpu_info(count, model):
25
18
  mem = utils.cudo_gpu_mem[model]
26
19
  # pylint: disable=line-too-long
@@ -45,39 +38,46 @@ def get_instance_type(machine_type, vcpu, mem, gpu):
45
38
  mem) + 'gb'
46
39
 
47
40
 
48
- def machine_types(gpu_model, mem_gib, vcpu_count, gpu_count):
49
- try:
50
- api = cudo_api()
51
- types = api.list_vm_machine_types(mem_gib,
52
- vcpu_count,
53
- gpu=gpu_count,
54
- gpu_model=gpu_model)
55
- return types.to_dict()
56
- except cudo_compute.rest.ApiException as e:
57
- raise e
58
-
59
-
60
41
  def update_prices():
61
42
  rows = []
43
+
44
+ api = cudo_compute.cudo_api.virtual_machines()
45
+ all_types = api.list_vm_machine_types2()
46
+ all_machine_types = all_types.to_dict()['machine_types']
47
+
62
48
  for spec in utils.machine_specs:
63
- mts = machine_types('', spec['mem'], spec['vcpu'], spec['gpu'])
64
- for hc in mts['host_configs']:
65
- if not utils.gpu_exists(hc['gpu_model']):
66
- continue
67
- accelerator_name = utils.cudo_gpu_to_skypilot_gpu(hc['gpu_model'])
68
- row = {
69
- 'instance_type': get_instance_type(hc['machine_type'],
70
- spec['vcpu'], spec['mem'],
71
- spec['gpu']),
72
- 'accelerator_name': accelerator_name,
73
- 'accelerator_count': str(spec['gpu']) + '.0',
74
- 'vcpus': str(spec['vcpu']),
75
- 'memory_gib': str(spec['mem']),
76
- 'price': hc['total_price_hr']['value'],
77
- 'region': hc['data_center_id'],
78
- 'gpu_info': get_gpu_info(spec['gpu'], accelerator_name),
79
- }
80
- rows.append(row)
49
+ for machine_type in all_machine_types:
50
+ if (machine_type['min_vcpu'] <= spec['vcpu'] and
51
+ machine_type['min_memory_gib'] <= spec['mem'] and
52
+ utils.gpu_exists(machine_type['gpu_model'])):
53
+
54
+ accelerator_name = utils.cudo_gpu_to_skypilot_gpu(
55
+ machine_type['gpu_model'])
56
+
57
+ # Calculate total price per hour based on the given spec
58
+ vcpu_price = float(
59
+ machine_type['vcpu_price_hr']['value']) * spec['vcpu']
60
+ memory_price = float(
61
+ machine_type['memory_gib_price_hr']['value']) * spec['mem']
62
+ gpu_price = float(
63
+ machine_type['gpu_price_hr']['value']) * spec['gpu']
64
+ # Note: Not including storage and IPv4 prices
65
+ # for now as they may be optional
66
+ total_price = vcpu_price + memory_price + gpu_price
67
+
68
+ row = {
69
+ 'instance_type': get_instance_type(
70
+ machine_type['machine_type'], spec['vcpu'], spec['mem'],
71
+ spec['gpu']),
72
+ 'accelerator_name': accelerator_name,
73
+ 'accelerator_count': str(spec['gpu']) + '.0',
74
+ 'vcpus': str(spec['vcpu']),
75
+ 'memory_gib': str(spec['mem']),
76
+ 'price': str(total_price),
77
+ 'region': machine_type['data_center_id'],
78
+ 'gpu_info': get_gpu_info(spec['gpu'], accelerator_name),
79
+ }
80
+ rows.append(row)
81
81
  path = VMS_CSV
82
82
  with open(path, 'w', encoding='utf-8') as file:
83
83
  file.write(
@@ -1710,11 +1710,11 @@ def get(request_id: str) -> Any:
1710
1710
  request_task = None
1711
1711
  if response.status_code == 200:
1712
1712
  request_task = requests_lib.Request.decode(
1713
- requests_lib.RequestPayload(**response.json()))
1713
+ payloads.RequestPayload(**response.json()))
1714
1714
  elif response.status_code == 500:
1715
1715
  try:
1716
1716
  request_task = requests_lib.Request.decode(
1717
- requests_lib.RequestPayload(**response.json().get('detail')))
1717
+ payloads.RequestPayload(**response.json().get('detail')))
1718
1718
  logger.debug(f'Got request with error: {request_task.name}')
1719
1719
  except Exception: # pylint: disable=broad-except
1720
1720
  request_task = None
@@ -1855,7 +1855,7 @@ def api_status(
1855
1855
  request_ids: Optional[List[str]] = None,
1856
1856
  # pylint: disable=redefined-builtin
1857
1857
  all_status: bool = False
1858
- ) -> List[requests_lib.RequestPayload]:
1858
+ ) -> List[payloads.RequestPayload]:
1859
1859
  """Lists all requests.
1860
1860
 
1861
1861
  Args:
@@ -1876,9 +1876,7 @@ def api_status(
1876
1876
  timeout=(client_common.API_SERVER_REQUEST_CONNECTION_TIMEOUT_SECONDS,
1877
1877
  None))
1878
1878
  server_common.handle_request_error(response)
1879
- return [
1880
- requests_lib.RequestPayload(**request) for request in response.json()
1881
- ]
1879
+ return [payloads.RequestPayload(**request) for request in response.json()]
1882
1880
 
1883
1881
 
1884
1882
  # === API server management APIs ===
@@ -734,7 +734,7 @@ class AWS(clouds.Cloud):
734
734
  shell=True,
735
735
  check=False,
736
736
  stdout=subprocess.PIPE,
737
- stderr=subprocess.PIPE)
737
+ stderr=subprocess.DEVNULL)
738
738
  if proc.returncode != 0:
739
739
  return None
740
740
  return proc.stdout
@@ -298,7 +298,7 @@ class Cudo(clouds.Cloud):
298
298
  from cudo_compute import cudo_api
299
299
  from cudo_compute.rest import ApiException
300
300
  try:
301
- _, error = cudo_api.client()
301
+ _, error = cudo_api.make_client()
302
302
  except FileNotFoundError as e:
303
303
  return False, (
304
304
  'Cudo credentials are not set. '
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_error-c72a1f77a3c0be1b.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_error-c72a1f77a3c0be1b.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/616-162f3033ffcd3d31.js" defer=""></script><script src="/dashboard/_next/static/chunks/5230-df791914b54d91d9.js" defer=""></script><script src="/dashboard/_next/static/chunks/5739-5ea3ffa10fc884f2.js" defer=""></script><script src="/dashboard/_next/static/chunks/1664-d65361e92b85e786.js" defer=""></script><script src="/dashboard/_next/static/chunks/804-9f5e98ce84d46bdd.js" defer=""></script><script src="/dashboard/_next/static/chunks/6989-6ff4e45dfb49d11d.js" defer=""></script><script src="/dashboard/_next/static/chunks/3698-52ad1ca228faa776.js" defer=""></script><script src="/dashboard/_next/static/chunks/9470-21d059a1dfa03f61.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/clusters/%5Bcluster%5D/%5Bjob%5D-8135aba0712bda37.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/clusters/[cluster]/[job]","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/616-162f3033ffcd3d31.js" defer=""></script><script src="/dashboard/_next/static/chunks/5230-df791914b54d91d9.js" defer=""></script><script src="/dashboard/_next/static/chunks/5739-5ea3ffa10fc884f2.js" defer=""></script><script src="/dashboard/_next/static/chunks/1664-d65361e92b85e786.js" defer=""></script><script src="/dashboard/_next/static/chunks/804-9f5e98ce84d46bdd.js" defer=""></script><script src="/dashboard/_next/static/chunks/6989-6ff4e45dfb49d11d.js" defer=""></script><script src="/dashboard/_next/static/chunks/3698-52ad1ca228faa776.js" defer=""></script><script src="/dashboard/_next/static/chunks/9470-21d059a1dfa03f61.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/clusters/%5Bcluster%5D/%5Bjob%5D-8135aba0712bda37.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/clusters/[cluster]/[job]","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/616-162f3033ffcd3d31.js" defer=""></script><script src="/dashboard/_next/static/chunks/5230-df791914b54d91d9.js" defer=""></script><script src="/dashboard/_next/static/chunks/5739-5ea3ffa10fc884f2.js" defer=""></script><script src="/dashboard/_next/static/chunks/1664-d65361e92b85e786.js" defer=""></script><script src="/dashboard/_next/static/chunks/804-9f5e98ce84d46bdd.js" defer=""></script><script src="/dashboard/_next/static/chunks/1272-1ef0bf0237faccdb.js" defer=""></script><script src="/dashboard/_next/static/chunks/3947-b059261d6fa88a1f.js" defer=""></script><script src="/dashboard/_next/static/chunks/6989-6ff4e45dfb49d11d.js" defer=""></script><script src="/dashboard/_next/static/chunks/3698-52ad1ca228faa776.js" defer=""></script><script src="/dashboard/_next/static/chunks/9470-21d059a1dfa03f61.js" defer=""></script><script src="/dashboard/_next/static/chunks/6990-d0dc765474fa0eca.js" defer=""></script><script src="/dashboard/_next/static/chunks/8969-909d53833da080cb.js" defer=""></script><script src="/dashboard/_next/static/chunks/1043-1b39779691bb4030.js" defer=""></script><script src="/dashboard/_next/static/chunks/6601-fcfad0ddf92ec7ab.js" defer=""></script><script src="/dashboard/_next/static/chunks/938-044ad21de8b4626b.js" defer=""></script><script src="/dashboard/_next/static/chunks/1871-80dea41717729fa5.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/clusters/%5Bcluster%5D-1159f362b960e2b8.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/clusters/[cluster]","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/616-162f3033ffcd3d31.js" defer=""></script><script src="/dashboard/_next/static/chunks/5230-df791914b54d91d9.js" defer=""></script><script src="/dashboard/_next/static/chunks/5739-5ea3ffa10fc884f2.js" defer=""></script><script src="/dashboard/_next/static/chunks/1664-d65361e92b85e786.js" defer=""></script><script src="/dashboard/_next/static/chunks/804-9f5e98ce84d46bdd.js" defer=""></script><script src="/dashboard/_next/static/chunks/1272-1ef0bf0237faccdb.js" defer=""></script><script src="/dashboard/_next/static/chunks/3947-b059261d6fa88a1f.js" defer=""></script><script src="/dashboard/_next/static/chunks/6989-6ff4e45dfb49d11d.js" defer=""></script><script src="/dashboard/_next/static/chunks/3698-52ad1ca228faa776.js" defer=""></script><script src="/dashboard/_next/static/chunks/9470-21d059a1dfa03f61.js" defer=""></script><script src="/dashboard/_next/static/chunks/6990-d0dc765474fa0eca.js" defer=""></script><script src="/dashboard/_next/static/chunks/8969-909d53833da080cb.js" defer=""></script><script src="/dashboard/_next/static/chunks/1043-1b39779691bb4030.js" defer=""></script><script src="/dashboard/_next/static/chunks/6601-fcfad0ddf92ec7ab.js" defer=""></script><script src="/dashboard/_next/static/chunks/938-044ad21de8b4626b.js" defer=""></script><script src="/dashboard/_next/static/chunks/1871-80dea41717729fa5.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/clusters/%5Bcluster%5D-1159f362b960e2b8.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/clusters/[cluster]","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/clusters-9744c271a1642f76.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/clusters","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/clusters-9744c271a1642f76.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/clusters","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/config-a2673b256b6d416f.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/config","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/config-a2673b256b6d416f.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/config","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/index-927ddeebe57a8ac3.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/index-927ddeebe57a8ac3.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/infra/%5Bcontext%5D-8b0809f59034d509.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/infra/[context]","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/infra/%5Bcontext%5D-8b0809f59034d509.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/infra/[context]","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/infra-ae9d2f705ce582c9.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/infra","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/infra-ae9d2f705ce582c9.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/infra","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/616-162f3033ffcd3d31.js" defer=""></script><script src="/dashboard/_next/static/chunks/5230-df791914b54d91d9.js" defer=""></script><script src="/dashboard/_next/static/chunks/5739-5ea3ffa10fc884f2.js" defer=""></script><script src="/dashboard/_next/static/chunks/1664-d65361e92b85e786.js" defer=""></script><script src="/dashboard/_next/static/chunks/804-9f5e98ce84d46bdd.js" defer=""></script><script src="/dashboard/_next/static/chunks/1272-1ef0bf0237faccdb.js" defer=""></script><script src="/dashboard/_next/static/chunks/6989-6ff4e45dfb49d11d.js" defer=""></script><script src="/dashboard/_next/static/chunks/3698-52ad1ca228faa776.js" defer=""></script><script src="/dashboard/_next/static/chunks/9470-21d059a1dfa03f61.js" defer=""></script><script src="/dashboard/_next/static/chunks/8969-909d53833da080cb.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/jobs/%5Bjob%5D-c4d5cfac7fbc0668.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/jobs/[job]","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/616-162f3033ffcd3d31.js" defer=""></script><script src="/dashboard/_next/static/chunks/5230-df791914b54d91d9.js" defer=""></script><script src="/dashboard/_next/static/chunks/5739-5ea3ffa10fc884f2.js" defer=""></script><script src="/dashboard/_next/static/chunks/1664-d65361e92b85e786.js" defer=""></script><script src="/dashboard/_next/static/chunks/804-9f5e98ce84d46bdd.js" defer=""></script><script src="/dashboard/_next/static/chunks/1272-1ef0bf0237faccdb.js" defer=""></script><script src="/dashboard/_next/static/chunks/6989-6ff4e45dfb49d11d.js" defer=""></script><script src="/dashboard/_next/static/chunks/3698-52ad1ca228faa776.js" defer=""></script><script src="/dashboard/_next/static/chunks/9470-21d059a1dfa03f61.js" defer=""></script><script src="/dashboard/_next/static/chunks/8969-909d53833da080cb.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/jobs/%5Bjob%5D-c4d5cfac7fbc0668.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/jobs/[job]","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/jobs-5bbdc71878f0a068.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/jobs","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/jobs-5bbdc71878f0a068.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/jobs","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/users-cd43fb3c122eedde.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/users","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/users-cd43fb3c122eedde.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/users","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/volumes-4ebf6484f7216387.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/volumes","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/volumes-4ebf6484f7216387.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/volumes","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/workspace/new-5629d4e551dba1ee.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/workspace/new","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/workspace/new-5629d4e551dba1ee.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/workspace/new","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/616-162f3033ffcd3d31.js" defer=""></script><script src="/dashboard/_next/static/chunks/5230-df791914b54d91d9.js" defer=""></script><script src="/dashboard/_next/static/chunks/5739-5ea3ffa10fc884f2.js" defer=""></script><script src="/dashboard/_next/static/chunks/1664-d65361e92b85e786.js" defer=""></script><script src="/dashboard/_next/static/chunks/804-9f5e98ce84d46bdd.js" defer=""></script><script src="/dashboard/_next/static/chunks/1272-1ef0bf0237faccdb.js" defer=""></script><script src="/dashboard/_next/static/chunks/3947-b059261d6fa88a1f.js" defer=""></script><script src="/dashboard/_next/static/chunks/6989-6ff4e45dfb49d11d.js" defer=""></script><script src="/dashboard/_next/static/chunks/3698-52ad1ca228faa776.js" defer=""></script><script src="/dashboard/_next/static/chunks/9470-21d059a1dfa03f61.js" defer=""></script><script src="/dashboard/_next/static/chunks/6990-d0dc765474fa0eca.js" defer=""></script><script src="/dashboard/_next/static/chunks/8969-909d53833da080cb.js" defer=""></script><script src="/dashboard/_next/static/chunks/1043-1b39779691bb4030.js" defer=""></script><script src="/dashboard/_next/static/chunks/6601-fcfad0ddf92ec7ab.js" defer=""></script><script src="/dashboard/_next/static/chunks/938-044ad21de8b4626b.js" defer=""></script><script src="/dashboard/_next/static/chunks/1141-726e5a3f00b67185.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/workspaces/%5Bname%5D-7c0187f43757a548.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/workspaces/[name]","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/616-162f3033ffcd3d31.js" defer=""></script><script src="/dashboard/_next/static/chunks/5230-df791914b54d91d9.js" defer=""></script><script src="/dashboard/_next/static/chunks/5739-5ea3ffa10fc884f2.js" defer=""></script><script src="/dashboard/_next/static/chunks/1664-d65361e92b85e786.js" defer=""></script><script src="/dashboard/_next/static/chunks/804-9f5e98ce84d46bdd.js" defer=""></script><script src="/dashboard/_next/static/chunks/1272-1ef0bf0237faccdb.js" defer=""></script><script src="/dashboard/_next/static/chunks/3947-b059261d6fa88a1f.js" defer=""></script><script src="/dashboard/_next/static/chunks/6989-6ff4e45dfb49d11d.js" defer=""></script><script src="/dashboard/_next/static/chunks/3698-52ad1ca228faa776.js" defer=""></script><script src="/dashboard/_next/static/chunks/9470-21d059a1dfa03f61.js" defer=""></script><script src="/dashboard/_next/static/chunks/6990-d0dc765474fa0eca.js" defer=""></script><script src="/dashboard/_next/static/chunks/8969-909d53833da080cb.js" defer=""></script><script src="/dashboard/_next/static/chunks/1043-1b39779691bb4030.js" defer=""></script><script src="/dashboard/_next/static/chunks/6601-fcfad0ddf92ec7ab.js" defer=""></script><script src="/dashboard/_next/static/chunks/938-044ad21de8b4626b.js" defer=""></script><script src="/dashboard/_next/static/chunks/1141-726e5a3f00b67185.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/workspaces/%5Bname%5D-7c0187f43757a548.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/workspaces/[name]","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/workspaces-06bde99155fa6292.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/A-fbCEgJE_q2cV8biIOIr/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/workspaces","query":{},"buildId":"A-fbCEgJE_q2cV8biIOIr","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/0da6afe66176678a.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/0da6afe66176678a.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-9a81ea998672c303.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-a37b06ddb64521fd.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/workspaces-06bde99155fa6292.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/wEkAg9F21A-COXJLf20VU/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/workspaces","query":{},"buildId":"wEkAg9F21A-COXJLf20VU","assetPrefix":"/dashboard","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -509,6 +509,11 @@ class APIVersionMismatchError(RuntimeError):
509
509
  pass
510
510
 
511
511
 
512
+ class APINotSupportedError(RuntimeError):
513
+ """Raised when the API is not supported by the remote peer."""
514
+ pass
515
+
516
+
512
517
  class JobExitCode(enum.IntEnum):
513
518
  """Job exit code enum.
514
519
 
@@ -122,11 +122,13 @@ def queue(refresh: bool,
122
122
  'resources': (str) resources of the job,
123
123
  'submitted_at': (float) timestamp of submission,
124
124
  'end_at': (float) timestamp of end,
125
- 'duration': (float) duration in seconds,
125
+ 'job_duration': (float) duration in seconds,
126
126
  'recovery_count': (int) Number of retries,
127
127
  'status': (sky.jobs.ManagedJobStatus) of the job,
128
128
  'cluster_resources': (str) resources of the cluster,
129
129
  'region': (str) region of the cluster,
130
+ 'task_id': (int), set to 0 (except in pipelines, which may have multiple tasks), # pylint: disable=line-too-long
131
+ 'task_name': (str), same as job_name (except in pipelines, which may have multiple tasks), # pylint: disable=line-too-long
130
132
  }
131
133
  ]
132
134
 
@@ -494,13 +494,15 @@ def queue(refresh: bool,
494
494
  'resources': str,
495
495
  'submitted_at': (float) timestamp of submission,
496
496
  'end_at': (float) timestamp of end,
497
- 'duration': (float) duration in seconds,
497
+ 'job_duration': (float) duration in seconds,
498
498
  'recovery_count': (int) Number of retries,
499
499
  'status': (sky.jobs.ManagedJobStatus) of the job,
500
500
  'cluster_resources': (str) resources of the cluster,
501
501
  'region': (str) region of the cluster,
502
502
  'user_name': (Optional[str]) job creator's user name,
503
503
  'user_hash': (str) job creator's user hash,
504
+ 'task_id': (int), set to 0 (except in pipelines, which may have multiple tasks), # pylint: disable=line-too-long
505
+ 'task_name': (str), same as job_name (except in pipelines, which may have multiple tasks), # pylint: disable=line-too-long
504
506
  }
505
507
  ]
506
508
  Raises: