skypilot-nightly 1.0.0.dev20250403__tar.gz → 1.0.0.dev20250405__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 (378) hide show
  1. {skypilot_nightly-1.0.0.dev20250403/skypilot_nightly.egg-info → skypilot_nightly-1.0.0.dev20250405}/PKG-INFO +1 -1
  2. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/__init__.py +2 -2
  3. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/backends/cloud_vm_ray_backend.py +4 -1
  4. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/check.py +7 -1
  5. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/cli.py +5 -0
  6. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/client/cli.py +5 -0
  7. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/kubernetes.py +2 -10
  8. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/__init__.py +1 -1
  9. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/kubernetes/utils.py +40 -13
  10. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/requests/executor.py +6 -0
  11. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405/skypilot_nightly.egg-info}/PKG-INFO +1 -1
  12. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/LICENSE +0 -0
  13. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/MANIFEST.in +0 -0
  14. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/README.md +0 -0
  15. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/pyproject.toml +0 -0
  16. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/setup.cfg +0 -0
  17. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/setup.py +0 -0
  18. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/__init__.py +0 -0
  19. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/aws.py +0 -0
  20. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/azure.py +0 -0
  21. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/cloudflare.py +0 -0
  22. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/common.py +0 -0
  23. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/cudo.py +0 -0
  24. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/do.py +0 -0
  25. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/docker.py +0 -0
  26. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/gcp.py +0 -0
  27. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/ibm.py +0 -0
  28. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/kubernetes.py +0 -0
  29. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/nebius.py +0 -0
  30. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/oci.py +0 -0
  31. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/runpod.py +0 -0
  32. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/vast.py +0 -0
  33. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/adaptors/vsphere.py +0 -0
  34. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/admin_policy.py +0 -0
  35. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/authentication.py +0 -0
  36. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/backends/__init__.py +0 -0
  37. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/backends/backend.py +0 -0
  38. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/backends/backend_utils.py +0 -0
  39. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/backends/docker_utils.py +0 -0
  40. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/backends/local_docker_backend.py +0 -0
  41. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/backends/monkey_patches/monkey_patch_ray_up.py +0 -0
  42. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/backends/wheel_utils.py +0 -0
  43. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/benchmark/__init__.py +0 -0
  44. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/benchmark/benchmark_state.py +0 -0
  45. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/benchmark/benchmark_utils.py +0 -0
  46. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/client/__init__.py +0 -0
  47. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/client/common.py +0 -0
  48. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/client/sdk.py +0 -0
  49. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/cloud_stores.py +0 -0
  50. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/__init__.py +0 -0
  51. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/aws.py +0 -0
  52. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/azure.py +0 -0
  53. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/cloud.py +0 -0
  54. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/cudo.py +0 -0
  55. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/do.py +0 -0
  56. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/fluidstack.py +0 -0
  57. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/gcp.py +0 -0
  58. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/ibm.py +0 -0
  59. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/lambda_cloud.py +0 -0
  60. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/nebius.py +0 -0
  61. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/oci.py +0 -0
  62. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/paperspace.py +0 -0
  63. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/runpod.py +0 -0
  64. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/scp.py +0 -0
  65. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/aws_catalog.py +0 -0
  66. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/azure_catalog.py +0 -0
  67. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/common.py +0 -0
  68. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/config.py +0 -0
  69. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/constants.py +0 -0
  70. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/cudo_catalog.py +0 -0
  71. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/data_fetchers/__init__.py +0 -0
  72. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/data_fetchers/fetch_aws.py +0 -0
  73. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/data_fetchers/fetch_azure.py +0 -0
  74. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/data_fetchers/fetch_cudo.py +0 -0
  75. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/data_fetchers/fetch_fluidstack.py +0 -0
  76. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/data_fetchers/fetch_gcp.py +0 -0
  77. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/data_fetchers/fetch_ibm.py +0 -0
  78. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/data_fetchers/fetch_lambda_cloud.py +0 -0
  79. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/data_fetchers/fetch_vast.py +0 -0
  80. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/data_fetchers/fetch_vsphere.py +0 -0
  81. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/do_catalog.py +0 -0
  82. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/fluidstack_catalog.py +0 -0
  83. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/gcp_catalog.py +0 -0
  84. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/ibm_catalog.py +0 -0
  85. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/kubernetes_catalog.py +0 -0
  86. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/lambda_catalog.py +0 -0
  87. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/nebius_catalog.py +0 -0
  88. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/oci_catalog.py +0 -0
  89. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/paperspace_catalog.py +0 -0
  90. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/runpod_catalog.py +0 -0
  91. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/scp_catalog.py +0 -0
  92. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/vast_catalog.py +0 -0
  93. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/service_catalog/vsphere_catalog.py +0 -0
  94. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/utils/__init__.py +0 -0
  95. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/utils/aws_utils.py +0 -0
  96. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/utils/azure_utils.py +0 -0
  97. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/utils/gcp_utils.py +0 -0
  98. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/utils/oci_utils.py +0 -0
  99. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/utils/scp_utils.py +0 -0
  100. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/vast.py +0 -0
  101. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/clouds/vsphere.py +0 -0
  102. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/core.py +0 -0
  103. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/dag.py +0 -0
  104. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/data/__init__.py +0 -0
  105. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/data/data_transfer.py +0 -0
  106. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/data/data_utils.py +0 -0
  107. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/data/mounting_utils.py +0 -0
  108. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/data/storage.py +0 -0
  109. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/data/storage_utils.py +0 -0
  110. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/exceptions.py +0 -0
  111. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/execution.py +0 -0
  112. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/global_user_state.py +0 -0
  113. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/__init__.py +0 -0
  114. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/client/__init__.py +0 -0
  115. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/client/sdk.py +0 -0
  116. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/constants.py +0 -0
  117. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/controller.py +0 -0
  118. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/dashboard/dashboard.py +0 -0
  119. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/dashboard/static/favicon.ico +0 -0
  120. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/dashboard/templates/index.html +0 -0
  121. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/recovery_strategy.py +0 -0
  122. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/scheduler.py +0 -0
  123. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/server/__init__.py +0 -0
  124. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/server/core.py +0 -0
  125. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/server/dashboard_utils.py +0 -0
  126. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/server/server.py +0 -0
  127. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/state.py +0 -0
  128. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/jobs/utils.py +0 -0
  129. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/models.py +0 -0
  130. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/optimizer.py +0 -0
  131. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/__init__.py +0 -0
  132. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/aws/__init__.py +0 -0
  133. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/aws/config.py +0 -0
  134. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/aws/instance.py +0 -0
  135. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/aws/utils.py +0 -0
  136. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/azure/__init__.py +0 -0
  137. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/azure/azure-config-template.json +0 -0
  138. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/azure/config.py +0 -0
  139. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/azure/instance.py +0 -0
  140. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/common.py +0 -0
  141. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/constants.py +0 -0
  142. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/cudo/__init__.py +0 -0
  143. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/cudo/config.py +0 -0
  144. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/cudo/cudo_machine_type.py +0 -0
  145. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/cudo/cudo_utils.py +0 -0
  146. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/cudo/cudo_wrapper.py +0 -0
  147. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/cudo/instance.py +0 -0
  148. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/do/__init__.py +0 -0
  149. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/do/config.py +0 -0
  150. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/do/constants.py +0 -0
  151. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/do/instance.py +0 -0
  152. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/do/utils.py +0 -0
  153. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/docker_utils.py +0 -0
  154. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/fluidstack/__init__.py +0 -0
  155. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/fluidstack/config.py +0 -0
  156. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/fluidstack/fluidstack_utils.py +0 -0
  157. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/fluidstack/instance.py +0 -0
  158. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/gcp/__init__.py +0 -0
  159. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/gcp/config.py +0 -0
  160. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/gcp/constants.py +0 -0
  161. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/gcp/instance.py +0 -0
  162. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/gcp/instance_utils.py +0 -0
  163. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/gcp/mig_utils.py +0 -0
  164. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/instance_setup.py +0 -0
  165. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/kubernetes/__init__.py +0 -0
  166. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/kubernetes/config.py +0 -0
  167. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/kubernetes/constants.py +0 -0
  168. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/kubernetes/instance.py +0 -0
  169. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/kubernetes/manifests/smarter-device-manager-configmap.yaml +0 -0
  170. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/kubernetes/manifests/smarter-device-manager-daemonset.yaml +0 -0
  171. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/kubernetes/network.py +0 -0
  172. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/kubernetes/network_utils.py +0 -0
  173. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/lambda_cloud/__init__.py +0 -0
  174. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/lambda_cloud/config.py +0 -0
  175. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/lambda_cloud/instance.py +0 -0
  176. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/lambda_cloud/lambda_utils.py +0 -0
  177. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/logging.py +0 -0
  178. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/metadata_utils.py +0 -0
  179. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/nebius/__init__.py +0 -0
  180. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/nebius/config.py +0 -0
  181. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/nebius/instance.py +0 -0
  182. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/nebius/utils.py +0 -0
  183. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/oci/__init__.py +0 -0
  184. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/oci/config.py +0 -0
  185. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/oci/instance.py +0 -0
  186. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/oci/query_utils.py +0 -0
  187. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/paperspace/__init__.py +0 -0
  188. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/paperspace/config.py +0 -0
  189. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/paperspace/constants.py +0 -0
  190. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/paperspace/instance.py +0 -0
  191. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/paperspace/utils.py +0 -0
  192. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/provisioner.py +0 -0
  193. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/runpod/__init__.py +0 -0
  194. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/runpod/api/__init__.py +0 -0
  195. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/runpod/api/commands.py +0 -0
  196. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/runpod/api/pods.py +0 -0
  197. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/runpod/config.py +0 -0
  198. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/runpod/instance.py +0 -0
  199. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/runpod/utils.py +0 -0
  200. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vast/__init__.py +0 -0
  201. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vast/config.py +0 -0
  202. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vast/instance.py +0 -0
  203. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vast/utils.py +0 -0
  204. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/__init__.py +0 -0
  205. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/common/__init__.py +0 -0
  206. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/common/cls_api_client.py +0 -0
  207. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/common/cls_api_helper.py +0 -0
  208. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/common/custom_script.py +0 -0
  209. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/common/id_generator.py +0 -0
  210. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/common/metadata_utils.py +0 -0
  211. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/common/service_manager.py +0 -0
  212. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/common/service_manager_factory.py +0 -0
  213. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/common/ssl_helper.py +0 -0
  214. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/common/vapiconnect.py +0 -0
  215. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/common/vim_utils.py +0 -0
  216. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/config.py +0 -0
  217. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/instance.py +0 -0
  218. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/provision/vsphere/vsphere_utils.py +0 -0
  219. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/resources.py +0 -0
  220. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/__init__.py +0 -0
  221. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/autoscalers.py +0 -0
  222. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/client/__init__.py +0 -0
  223. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/client/sdk.py +0 -0
  224. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/constants.py +0 -0
  225. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/controller.py +0 -0
  226. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/load_balancer.py +0 -0
  227. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/load_balancing_policies.py +0 -0
  228. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/replica_managers.py +0 -0
  229. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/serve_state.py +0 -0
  230. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/serve_utils.py +0 -0
  231. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/server/__init__.py +0 -0
  232. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/server/core.py +0 -0
  233. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/server/server.py +0 -0
  234. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/service.py +0 -0
  235. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/service_spec.py +0 -0
  236. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/serve/spot_placer.py +0 -0
  237. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/__init__.py +0 -0
  238. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/common.py +0 -0
  239. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/constants.py +0 -0
  240. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/html/log.html +0 -0
  241. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/requests/__init__.py +0 -0
  242. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/requests/event_loop.py +0 -0
  243. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/requests/payloads.py +0 -0
  244. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/requests/preconditions.py +0 -0
  245. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/requests/queues/__init__.py +0 -0
  246. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/requests/queues/mp_queue.py +0 -0
  247. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/requests/requests.py +0 -0
  248. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/requests/serializers/__init__.py +0 -0
  249. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/requests/serializers/decoders.py +0 -0
  250. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/requests/serializers/encoders.py +0 -0
  251. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/server.py +0 -0
  252. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/stream_utils.py +0 -0
  253. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/server/uvicorn.py +0 -0
  254. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/setup_files/MANIFEST.in +0 -0
  255. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/setup_files/dependencies.py +0 -0
  256. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/setup_files/setup.py +0 -0
  257. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/sky_logging.py +0 -0
  258. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/LICENSE +0 -0
  259. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/__init__.py +0 -0
  260. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/attempt_skylet.py +0 -0
  261. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/autostop_lib.py +0 -0
  262. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/configs.py +0 -0
  263. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/constants.py +0 -0
  264. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/events.py +0 -0
  265. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/job_lib.py +0 -0
  266. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/log_lib.py +0 -0
  267. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/log_lib.pyi +0 -0
  268. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/providers/__init__.py +0 -0
  269. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/providers/command_runner.py +0 -0
  270. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/providers/ibm/__init__.py +0 -0
  271. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/providers/ibm/node_provider.py +0 -0
  272. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/providers/ibm/utils.py +0 -0
  273. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/providers/ibm/vpc_provider.py +0 -0
  274. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/providers/scp/__init__.py +0 -0
  275. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/providers/scp/config.py +0 -0
  276. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/providers/scp/node_provider.py +0 -0
  277. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/ray_patches/__init__.py +0 -0
  278. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/ray_patches/autoscaler.py.patch +0 -0
  279. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/ray_patches/cli.py.patch +0 -0
  280. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/ray_patches/command_runner.py.patch +0 -0
  281. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/ray_patches/log_monitor.py.patch +0 -0
  282. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/ray_patches/resource_demand_scheduler.py.patch +0 -0
  283. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/ray_patches/updater.py.patch +0 -0
  284. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/ray_patches/worker.py.patch +0 -0
  285. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/skylet.py +0 -0
  286. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skylet/subprocess_daemon.py +0 -0
  287. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/skypilot_config.py +0 -0
  288. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/task.py +0 -0
  289. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/aws-ray.yml.j2 +0 -0
  290. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/azure-ray.yml.j2 +0 -0
  291. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/cudo-ray.yml.j2 +0 -0
  292. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/do-ray.yml.j2 +0 -0
  293. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/fluidstack-ray.yml.j2 +0 -0
  294. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/gcp-ray.yml.j2 +0 -0
  295. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/ibm-ray.yml.j2 +0 -0
  296. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/jobs-controller.yaml.j2 +0 -0
  297. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/kubernetes-ingress.yml.j2 +0 -0
  298. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/kubernetes-loadbalancer.yml.j2 +0 -0
  299. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/kubernetes-port-forward-proxy-command.sh +0 -0
  300. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/kubernetes-ray.yml.j2 +0 -0
  301. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/kubernetes-ssh-jump.yml.j2 +0 -0
  302. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/lambda-ray.yml.j2 +0 -0
  303. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/local-ray.yml.j2 +0 -0
  304. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/nebius-ray.yml.j2 +0 -0
  305. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/oci-ray.yml.j2 +0 -0
  306. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/paperspace-ray.yml.j2 +0 -0
  307. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/runpod-ray.yml.j2 +0 -0
  308. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/scp-ray.yml.j2 +0 -0
  309. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/sky-serve-controller.yaml.j2 +0 -0
  310. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/skypilot-server-kubernetes-proxy.sh +0 -0
  311. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/vast-ray.yml.j2 +0 -0
  312. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/vsphere-ray.yml.j2 +0 -0
  313. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/templates/websocket_proxy.py +0 -0
  314. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/usage/__init__.py +0 -0
  315. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/usage/constants.py +0 -0
  316. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/usage/usage_lib.py +0 -0
  317. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/__init__.py +0 -0
  318. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/accelerator_registry.py +0 -0
  319. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/admin_policy_utils.py +0 -0
  320. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/annotations.py +0 -0
  321. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/cli_utils/__init__.py +0 -0
  322. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/cli_utils/status_utils.py +0 -0
  323. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/cluster_utils.py +0 -0
  324. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/command_runner.py +0 -0
  325. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/command_runner.pyi +0 -0
  326. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/common.py +0 -0
  327. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/common_utils.py +0 -0
  328. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/config_utils.py +0 -0
  329. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/control_master_utils.py +0 -0
  330. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/controller_utils.py +0 -0
  331. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/dag_utils.py +0 -0
  332. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/db_utils.py +0 -0
  333. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/env_options.py +0 -0
  334. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/__init__.py +0 -0
  335. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/create_cluster.sh +0 -0
  336. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/delete_cluster.sh +0 -0
  337. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/deploy_remote_cluster.sh +0 -0
  338. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/exec_kubeconfig_converter.py +0 -0
  339. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/generate_kind_config.py +0 -0
  340. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/generate_kubeconfig.sh +0 -0
  341. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/gpu_labeler.py +0 -0
  342. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/k8s_gpu_labeler_job.yaml +0 -0
  343. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/k8s_gpu_labeler_setup.yaml +0 -0
  344. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/kubernetes_deploy_utils.py +0 -0
  345. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/rsync_helper.sh +0 -0
  346. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes/ssh_jump_lifecycle_manager.py +0 -0
  347. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/kubernetes_enums.py +0 -0
  348. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/log_utils.py +0 -0
  349. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/message_utils.py +0 -0
  350. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/registry.py +0 -0
  351. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/resources_utils.py +0 -0
  352. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/rich_console_utils.py +0 -0
  353. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/rich_utils.py +0 -0
  354. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/schemas.py +0 -0
  355. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/status_lib.py +0 -0
  356. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/subprocess_utils.py +0 -0
  357. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/timeline.py +0 -0
  358. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/ux_utils.py +0 -0
  359. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/sky/utils/validator.py +0 -0
  360. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/skypilot_nightly.egg-info/SOURCES.txt +0 -0
  361. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/skypilot_nightly.egg-info/dependency_links.txt +0 -0
  362. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/skypilot_nightly.egg-info/entry_points.txt +0 -0
  363. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/skypilot_nightly.egg-info/requires.txt +0 -0
  364. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/skypilot_nightly.egg-info/top_level.txt +0 -0
  365. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_api.py +0 -0
  366. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_cli.py +0 -0
  367. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_config.py +0 -0
  368. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_global_user_state.py +0 -0
  369. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_jobs.py +0 -0
  370. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_jobs_and_serve.py +0 -0
  371. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_list_accelerators.py +0 -0
  372. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_optimizer_dryruns.py +0 -0
  373. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_optimizer_random_dag.py +0 -0
  374. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_serve_autoscaler.py +0 -0
  375. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_smoke.py +0 -0
  376. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_storage.py +0 -0
  377. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/tests/test_wheels.py +0 -0
  378. {skypilot_nightly-1.0.0.dev20250403 → skypilot_nightly-1.0.0.dev20250405}/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.dev20250403
3
+ Version: 1.0.0.dev20250405
4
4
  Summary: SkyPilot: An intercloud broker for the clouds
5
5
  Author: SkyPilot Team
6
6
  License: Apache 2.0
@@ -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 = '7149e721d257cfc890526c9738290724882ce82e'
8
+ _SKYPILOT_COMMIT_SHA = '5025c819176d48aa8643fe9ec058158ce2bece9a'
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.dev20250403'
38
+ __version__ = '1.0.0.dev20250405'
39
39
  __root_dir__ = os.path.dirname(os.path.abspath(__file__))
40
40
 
41
41
 
@@ -655,7 +655,10 @@ class RayCodeGen:
655
655
  rclone_flush_script = {rclone_flush_script!r}
656
656
  if run_fn is not None:
657
657
  script = run_fn({gang_scheduling_id}, gang_scheduling_id_to_ip)
658
- script += rclone_flush_script
658
+ if script is not None:
659
+ script += rclone_flush_script
660
+ else:
661
+ script = rclone_flush_script
659
662
 
660
663
  if script is not None:
661
664
  sky_env_vars_dict['{constants.SKYPILOT_NUM_GPUS_PER_NODE}'] = {int(math.ceil(num_gpus))!r}
@@ -289,6 +289,12 @@ def _print_checked_cloud(
289
289
  cloud_tuple: The cloud to print the capabilities for.
290
290
  cloud_capabilities: The capabilities for the cloud.
291
291
  """
292
+
293
+ def _yellow_color(str_to_format: str) -> str:
294
+ return (f'{colorama.Fore.LIGHTYELLOW_EX}'
295
+ f'{str_to_format}'
296
+ f'{colorama.Style.RESET_ALL}')
297
+
292
298
  cloud_repr, cloud = cloud_tuple
293
299
  # Print the capabilities for the cloud.
294
300
  # consider cloud enabled if any capability is enabled.
@@ -319,7 +325,7 @@ def _print_checked_cloud(
319
325
  if activated_account is not None:
320
326
  echo(f' Activated account: {activated_account}')
321
327
  for reason, caps in hints_to_capabilities.items():
322
- echo(f' Hint [{", ".join(caps)}]: {reason}')
328
+ echo(f' Hint [{", ".join(caps)}]: {_yellow_color(reason)}')
323
329
  for reason, caps in reasons_to_capabilities.items():
324
330
  echo(f' Reason [{", ".join(caps)}]: {reason}')
325
331
 
@@ -3062,10 +3062,15 @@ def _down_or_stop_clusters(
3062
3062
  'Letting --all take effect.')
3063
3063
  # We should not remove controllers when --all is specified.
3064
3064
  # Otherwise, it would be very easy to accidentally delete a controller.
3065
+
3066
+ # do not select already stopped clusters for stop command.
3067
+ # stopped clusters are still included for down or autostop commands.
3065
3068
  names = [
3066
3069
  record['name']
3067
3070
  for record in all_clusters
3068
3071
  if controller_utils.Controllers.from_name(record['name']) is None
3072
+ and (down or idle_minutes_to_autostop is not None or
3073
+ record['status'] != status_lib.ClusterStatus.STOPPED)
3069
3074
  ]
3070
3075
 
3071
3076
  clusters = names
@@ -3062,10 +3062,15 @@ def _down_or_stop_clusters(
3062
3062
  'Letting --all take effect.')
3063
3063
  # We should not remove controllers when --all is specified.
3064
3064
  # Otherwise, it would be very easy to accidentally delete a controller.
3065
+
3066
+ # do not select already stopped clusters for stop command.
3067
+ # stopped clusters are still included for down or autostop commands.
3065
3068
  names = [
3066
3069
  record['name']
3067
3070
  for record in all_clusters
3068
3071
  if controller_utils.Controllers.from_name(record['name']) is None
3072
+ and (down or idle_minutes_to_autostop is not None or
3073
+ record['status'] != status_lib.ClusterStatus.STOPPED)
3069
3074
  ]
3070
3075
 
3071
3076
  clusters = names
@@ -679,7 +679,8 @@ class Kubernetes(clouds.Cloud):
679
679
  success = False
680
680
  for context in existing_allowed_contexts:
681
681
  try:
682
- check_result = kubernetes_utils.check_credentials(context)
682
+ check_result = kubernetes_utils.check_credentials(
683
+ context, run_optional_checks=True)
683
684
  if check_result[0]:
684
685
  success = True
685
686
  if check_result[1] is not None:
@@ -689,15 +690,6 @@ class Kubernetes(clouds.Cloud):
689
690
  except Exception as e: # pylint: disable=broad-except
690
691
  return (False, f'Credential check failed for {context}: '
691
692
  f'{common_utils.format_exception(e)}')
692
- unlabeled_nodes = kubernetes_utils.get_unlabeled_accelerator_nodes(
693
- context)
694
- if len(unlabeled_nodes) > 0:
695
- hints.append(f'Context {context} has {len(unlabeled_nodes)} '
696
- f'unlabeled nodes with accelerators. '
697
- f'To label these nodes, run '
698
- f'`python -m sky.utils.kubernetes.gpu_labeler '
699
- f'--context {context}` from the project root '
700
- f'directory.')
701
693
  if success:
702
694
  return (True, cls._format_credential_check_results(hints, reasons))
703
695
  return (False, 'Failed to find available context with working '
@@ -328,9 +328,9 @@ def get_common_gpus() -> List[str]:
328
328
  'A100',
329
329
  'A100-80GB',
330
330
  'H100',
331
+ 'H200',
331
332
  'L4',
332
333
  'L40S',
333
- 'P100',
334
334
  'T4',
335
335
  'V100',
336
336
  'V100-32GB',
@@ -272,7 +272,8 @@ def get_gke_accelerator_name(accelerator: str) -> str:
272
272
  if accelerator == 'H100':
273
273
  # H100 is named as H100-80GB in GKE.
274
274
  accelerator = 'H100-80GB'
275
- if accelerator in ('A100-80GB', 'L4', 'H100-80GB', 'H100-MEGA-80GB'):
275
+ if accelerator in ('A100-80GB', 'L4', 'H100-80GB', 'H100-MEGA-80GB',
276
+ 'B200'):
276
277
  # A100-80GB, L4, H100-80GB and H100-MEGA-80GB
277
278
  # have a different name pattern.
278
279
  return 'nvidia-{}'.format(accelerator.lower())
@@ -1096,7 +1097,9 @@ def get_accelerator_label_key_value(
1096
1097
  ResourcesUnavailableError: Can be raised from the following conditions:
1097
1098
  - The cluster does not have GPU/TPU resources
1098
1099
  (nvidia.com/gpu, google.com/tpu)
1099
- - The cluster does not have GPU/TPU labels setup correctly
1100
+ - The cluster has GPU/TPU resources, but no node in the cluster has
1101
+ an accelerator label.
1102
+ - The cluster has a node with an invalid accelerator label value.
1100
1103
  - The cluster doesn't have any nodes with acc_type GPU/TPU
1101
1104
  """
1102
1105
  # Check if the cluster has GPU resources
@@ -1291,7 +1294,8 @@ def get_external_ip(network_mode: Optional[
1291
1294
 
1292
1295
 
1293
1296
  def check_credentials(context: Optional[str],
1294
- timeout: int = kubernetes.API_TIMEOUT) -> \
1297
+ timeout: int = kubernetes.API_TIMEOUT,
1298
+ run_optional_checks: bool = False) -> \
1295
1299
  Tuple[bool, Optional[str]]:
1296
1300
  """Check if the credentials in kubeconfig file are valid
1297
1301
 
@@ -1333,6 +1337,9 @@ def check_credentials(context: Optional[str],
1333
1337
  f'{common_utils.format_exception(e, use_bracket=True)}')
1334
1338
 
1335
1339
  # If we reach here, the credentials are valid and Kubernetes cluster is up.
1340
+ if not run_optional_checks:
1341
+ return True, None
1342
+
1336
1343
  # We now do softer checks to check if exec based auth is used and to
1337
1344
  # see if the cluster is GPU-enabled.
1338
1345
 
@@ -1344,16 +1351,36 @@ def check_credentials(context: Optional[str],
1344
1351
  # `sky launch --gpus <gpu>` and the optimizer does not list Kubernetes as a
1345
1352
  # provider if their cluster GPUs are not setup correctly.
1346
1353
  gpu_msg = ''
1347
- try:
1348
- get_accelerator_label_key_value(context,
1349
- acc_type='',
1350
- acc_count=0,
1351
- check_mode=True)
1352
- except exceptions.ResourcesUnavailableError as e:
1353
- # If GPUs are not available, we return cluster as enabled (since it can
1354
- # be a CPU-only cluster) but we also return the exception message which
1355
- # serves as a hint for how to enable GPU access.
1356
- gpu_msg = str(e)
1354
+ unlabeled_nodes = get_unlabeled_accelerator_nodes(context)
1355
+ if unlabeled_nodes:
1356
+ gpu_msg = (f'Cluster has {len(unlabeled_nodes)} nodes with '
1357
+ f'accelerators that are not labeled. '
1358
+ f'To label the nodes, run '
1359
+ f'`python -m sky.utils.kubernetes.gpu_labeler '
1360
+ f'--context {context}`')
1361
+ else:
1362
+ try:
1363
+ # This function raises a ResourcesUnavailableError in three cases:
1364
+ # 1. If no node in cluster has GPU/TPU resource in its capacity.
1365
+ # (e.g. google.com/tpu, nvidia.com/gpu)
1366
+ # 2. If at least one node in cluster has GPU/TPU resource in its
1367
+ # capacity, but no node in the cluster has an accelerator label.
1368
+ # 3. If an accelerator label on a node is invalid.
1369
+ # Exception 2 is a special case of a cluster having at least one
1370
+ # unlabelled node, which is caught in
1371
+ # `get_unlabeled_accelerator_nodes`.
1372
+ # Therefore, if `get_unlabeled_accelerator_nodes` detects unlabelled
1373
+ # nodes, we skip this check.
1374
+ get_accelerator_label_key_value(context,
1375
+ acc_type='',
1376
+ acc_count=0,
1377
+ check_mode=True)
1378
+ except exceptions.ResourcesUnavailableError as e:
1379
+ # If GPUs are not available, we return cluster as enabled
1380
+ # (since it can be a CPU-only cluster) but we also return the
1381
+ # exception message which serves as a hint for how to enable
1382
+ # GPU access.
1383
+ gpu_msg = str(e)
1357
1384
  if exec_msg and gpu_msg:
1358
1385
  return True, f'{gpu_msg}\n Additionally, {exec_msg}'
1359
1386
  elif gpu_msg:
@@ -260,6 +260,12 @@ def _request_execution_wrapper(request_id: str,
260
260
  f.flush()
261
261
  except KeyboardInterrupt:
262
262
  logger.info(f'Request {request_id} cancelled by user')
263
+ # Kill all children processes related to this request.
264
+ # Each executor handles a single request, so we can safely kill all
265
+ # children processes related to this request.
266
+ # This is required as python does not pass the KeyboardInterrupt
267
+ # to the threads that are not main thread.
268
+ subprocess_utils.kill_children_processes()
263
269
  _restore_output(original_stdout, original_stderr)
264
270
  return
265
271
  except (Exception, SystemExit) as e: # pylint: disable=broad-except
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: skypilot-nightly
3
- Version: 1.0.0.dev20250403
3
+ Version: 1.0.0.dev20250405
4
4
  Summary: SkyPilot: An intercloud broker for the clouds
5
5
  Author: SkyPilot Team
6
6
  License: Apache 2.0