skypilot-nightly 1.0.0.dev20250624__tar.gz → 1.0.0.dev20250625__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.
- {skypilot_nightly-1.0.0.dev20250624/skypilot_nightly.egg-info → skypilot_nightly-1.0.0.dev20250625}/PKG-INFO +2 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/__init__.py +2 -2
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/backends/backend_utils.py +26 -11
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/backends/cloud_vm_ray_backend.py +16 -5
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/client/cli/command.py +222 -4
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/client/sdk.py +110 -82
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/aws.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/azure.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/cloud.py +2 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/cudo.py +2 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/do.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/fluidstack.py +2 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/gcp.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/hyperbolic.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/ibm.py +2 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/kubernetes.py +26 -9
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/lambda_cloud.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/nebius.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/oci.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/paperspace.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/runpod.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/scp.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/vast.py +10 -7
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/vsphere.py +2 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/core.py +1 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dag.py +14 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/404.html +1 -1
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/ZWdSYkqVe3WjnFR8ocqoG/_buildManifest.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/230-d6e363362017ff3a.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/310.2671028c20e892c7.js +16 -0
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/37-4650f214e2119168.js → skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/37-1f1e94f5a561202a.js +2 -2
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/42.bc85e5b1a4debf22.js +6 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/470-92dd1614396389be.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/544.110e53813fb98e2e.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/645.961f08e39b8ce447.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/66-66ae330df2d3c1c7.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/682.00e56a220dd26fe1.js +6 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/697.6460bf72e760addd.js +20 -0
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/856-bfddc18e16f3873c.js → skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/856-cdf66268ec878d0c.js +1 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/_app-ce31493da9747ef4.js → skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/_app-0ef7418d1a3822f3.js +1 -1
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]/[job]-aff040d7bc5d0086.js +6 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-32ce4f49f2261f55.js +6 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/clusters-4aa031d1f42723d8.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/config-3102d02a188f04b3.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/infra/[context]-6f1e02e31eecb5ce.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/infra-fd5dc8a91bd9169a.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-e4b23128db0774cd.js +16 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/jobs-26da173e20af16e4.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/users-ce29e7420385563d.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/volumes-476b670ef33d1ecd.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/workspace/new-09ae0f6f972aa871.js +1 -0
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/workspaces/[name]-ecc5a7003776cfa7.js → skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/workspaces/[name]-0b4c662a25e4747a.js +1 -1
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/pages/workspaces-862b120406461b10.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/webpack-6133dc1e928bd0b5.js +1 -0
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/css/b23cb0257bf96c51.css +3 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/clusters/[cluster]/[job].html +1 -1
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/clusters/[cluster].html +1 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/clusters.html +1 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/config.html +1 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/index.html +1 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/infra/[context].html +1 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/infra.html +1 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/jobs/[job].html +1 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/jobs.html +1 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/users.html +1 -1
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/volumes.html +1 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/workspace/new.html +1 -1
- skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/workspaces/[name].html +1 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/workspaces.html +1 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/data/storage_utils.py +2 -4
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/exceptions.py +15 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/execution.py +5 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/global_user_state.py +129 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/client/sdk.py +13 -11
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/server/core.py +4 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/models.py +16 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/__init__.py +26 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/kubernetes/__init__.py +3 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/kubernetes/instance.py +38 -77
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/kubernetes/utils.py +52 -2
- skypilot_nightly-1.0.0.dev20250625/sky/provision/kubernetes/volume.py +147 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/resources.py +20 -76
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/client/sdk.py +13 -13
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/server/core.py +5 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/common.py +40 -5
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/constants.py +5 -1
- skypilot_nightly-1.0.0.dev20250625/sky/server/metrics.py +105 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/executor.py +30 -14
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/payloads.py +16 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/requests.py +35 -1
- skypilot_nightly-1.0.0.dev20250625/sky/server/rest.py +152 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/server.py +66 -16
- skypilot_nightly-1.0.0.dev20250625/sky/server/state.py +20 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/stream_utils.py +8 -3
- skypilot_nightly-1.0.0.dev20250625/sky/server/uvicorn.py +231 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/setup_files/dependencies.py +2 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/constants.py +14 -3
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/task.py +141 -18
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/kubernetes-ray.yml.j2 +30 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/users/permission.py +2 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/context.py +3 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/resources_utils.py +66 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/rich_utils.py +6 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/schemas.py +146 -3
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/status_lib.py +10 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/validator.py +11 -1
- skypilot_nightly-1.0.0.dev20250625/sky/volumes/client/__init__.py +0 -0
- skypilot_nightly-1.0.0.dev20250625/sky/volumes/client/sdk.py +64 -0
- skypilot_nightly-1.0.0.dev20250625/sky/volumes/server/__init__.py +0 -0
- skypilot_nightly-1.0.0.dev20250625/sky/volumes/server/core.py +199 -0
- skypilot_nightly-1.0.0.dev20250625/sky/volumes/server/server.py +85 -0
- skypilot_nightly-1.0.0.dev20250625/sky/volumes/utils.py +158 -0
- skypilot_nightly-1.0.0.dev20250625/sky/volumes/volume.py +198 -0
- skypilot_nightly-1.0.0.dev20250625/sky/workspaces/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625/skypilot_nightly.egg-info}/PKG-INFO +2 -1
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/skypilot_nightly.egg-info/SOURCES.txt +45 -30
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/skypilot_nightly.egg-info/requires.txt +1 -0
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/350.9e123a4551f68b0d.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/42.2273cc2415291ceb.js +0 -6
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/470-1494c899266cf5c9.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/641.c8e452bc5070a630.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/682.4dd5dc116f740b5f.js +0 -6
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/760-a89d354797ce7af5.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/901-b424d293275e1fd7.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/984.ae8c08791d274ca0.js +0 -50
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]/[job]-4e065c812a52460b.js +0 -6
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-520ec1ab65e2f2a4.js +0 -6
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/clusters-7e9736af1c6345a6.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/config-e4f473661889e7cd.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/infra/[context]-00fd23b9577492ca.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/infra-8a4bf7370d4d9bb7.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-171c27f4ca94861c.js +0 -16
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/jobs-55e5bcb16d563231.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/users-c9f4d785cdaa52d8.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/workspace/new-31aa8bdcb7592635.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/pages/workspaces-f00cba35691483b1.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/webpack-c85998e6a5722f21.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/css/6ab927686b492a4a.css +0 -3
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/zsALxITkbP8J8NVwSDwMo/_buildManifest.js +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/clusters/[cluster].html +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/workspaces/[name].html +0 -1
- skypilot_nightly-1.0.0.dev20250624/sky/server/uvicorn.py +0 -91
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/LICENSE +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/MANIFEST.in +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/README.md +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/pyproject.toml +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/setup.cfg +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/setup.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/aws.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/azure.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/cloudflare.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/common.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/cudo.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/do.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/docker.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/gcp.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/hyperbolic.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/ibm.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/kubernetes.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/nebius.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/oci.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/runpod.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/vast.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/adaptors/vsphere.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/admin_policy.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/authentication.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/backends/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/backends/backend.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/backends/docker_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/backends/local_docker_backend.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/backends/monkey_patches/monkey_patch_ray_up.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/backends/wheel_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/aws_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/azure_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/common.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/cudo_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/analyze.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/fetch_aws.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/fetch_azure.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/fetch_cudo.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/fetch_fluidstack.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/fetch_gcp.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/fetch_hyperbolic.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/fetch_ibm.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/fetch_lambda_cloud.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/fetch_vast.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/data_fetchers/fetch_vsphere.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/do_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/fluidstack_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/gcp_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/hyperbolic_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/ibm_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/kubernetes_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/lambda_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/nebius_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/oci_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/paperspace_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/runpod_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/scp_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/ssh_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/vast_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/catalog/vsphere_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/check.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/cli.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/client/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/client/cli/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/client/cli/deprecation_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/client/cli/flags.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/client/common.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/client/oauth.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/cloud_stores.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/ssh.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/utils/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/utils/aws_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/utils/azure_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/utils/gcp_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/utils/oci_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/clouds/utils/scp_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/zsALxITkbP8J8NVwSDwMo → skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/ZWdSYkqVe3WjnFR8ocqoG}/_ssgManifest.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/211.692afc57e812ae1a.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/443.b2242d0efcdf5f47.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/491.b3d264269613fe09.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/513.309df9e18a9ff005.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/616-d6128fa9e7cae6e6.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/664-047bc03493fda379.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/798-c0525dc3f21e488d.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/799-3625946b2ec2eb30.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/804-4c9fc53aa74bc191.js +0 -0
- /skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/843-bde186946d353355.js → /skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/843-07d25a7e64462fd8.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/937.3759f538f11a0953.js +0 -0
- /skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/938-ce7991c156584b06.js → /skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/938-068520cc11738deb.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/947-6620842ef80ae879.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/969-d3a0b53f728d280a.js +0 -0
- /skypilot_nightly-1.0.0.dev20250624/sky/dashboard/out/_next/static/chunks/973-56412c7976b4655b.js → /skypilot_nightly-1.0.0.dev20250625/sky/dashboard/out/_next/static/chunks/973-5b5019ba333e8d62.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/989-db34c16ad7ea6155.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/fd9d1056-2821b0f0cabcd8bd.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/framework-87d061ee6ed71b28.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/main-app-241eb28595532291.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/main-e0e2335212e72357.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/pages/_error-1be831200e60c5c0.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/pages/index-6b0d9e5031b70c58.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/favicon.ico +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/skypilot.svg +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/dashboard/out/videos/cursor-small.mp4 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/data/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/data/data_transfer.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/data/data_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/data/mounting_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/data/storage.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/client/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/controller.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/recovery_strategy.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/scheduler.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/server/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/server/server.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/state.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/jobs/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/logs/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/logs/agent.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/logs/gcp.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/optimizer.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/aws/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/aws/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/aws/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/aws/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/azure/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/azure/azure-config-template.json +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/azure/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/azure/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/common.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/cudo/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/cudo/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/cudo/cudo_machine_type.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/cudo/cudo_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/cudo/cudo_wrapper.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/cudo/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/do/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/do/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/do/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/do/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/do/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/docker_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/fluidstack/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/fluidstack/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/fluidstack/fluidstack_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/fluidstack/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/gcp/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/gcp/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/gcp/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/gcp/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/gcp/instance_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/gcp/mig_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/gcp/volume_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/hyperbolic/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/hyperbolic/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/hyperbolic/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/hyperbolic/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/instance_setup.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/kubernetes/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/kubernetes/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/kubernetes/manifests/fusermount-server-daemonset.yaml +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/kubernetes/network.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/kubernetes/network_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/lambda_cloud/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/lambda_cloud/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/lambda_cloud/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/lambda_cloud/lambda_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/logging.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/metadata_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/nebius/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/nebius/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/nebius/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/nebius/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/nebius/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/oci/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/oci/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/oci/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/oci/query_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/paperspace/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/paperspace/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/paperspace/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/paperspace/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/paperspace/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/provisioner.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/runpod/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/runpod/api/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/runpod/api/commands.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/runpod/api/pods.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/runpod/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/runpod/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/runpod/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/scp/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/scp/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/scp/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/ssh/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vast/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vast/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vast/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vast/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/common/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/common/cls_api_client.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/common/cls_api_helper.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/common/custom_script.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/common/id_generator.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/common/metadata_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/common/service_manager.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/common/service_manager_factory.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/common/ssl_helper.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/common/vapiconnect.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/common/vim_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/provision/vsphere/vsphere_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/autoscalers.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/client/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/controller.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/load_balancer.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/load_balancing_policies.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/replica_managers.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/serve_state.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/serve_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/server/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/server/server.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/service.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/service_spec.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/serve/spot_placer.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/html/log.html +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/html/token_page.html +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/event_loop.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/preconditions.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/process.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/queues/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/queues/local_queue.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/queues/mp_queue.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/serializers/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/serializers/decoders.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/server/requests/serializers/encoders.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/setup_files/MANIFEST.in +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/setup_files/setup.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/sky_logging.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/LICENSE +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/attempt_skylet.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/autostop_lib.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/configs.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/events.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/job_lib.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/log_lib.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/log_lib.pyi +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/providers/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/providers/command_runner.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/providers/ibm/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/providers/ibm/node_provider.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/providers/ibm/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/providers/ibm/vpc_provider.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/ray_patches/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/ray_patches/autoscaler.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/ray_patches/cli.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/ray_patches/command_runner.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/ray_patches/log_monitor.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/ray_patches/resource_demand_scheduler.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/ray_patches/updater.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/ray_patches/worker.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/skylet.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skylet/subprocess_daemon.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/skypilot_config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/aws-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/azure-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/cudo-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/do-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/fluidstack-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/gcp-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/hyperbolic-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/ibm-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/jobs-controller.yaml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/kubernetes-ingress.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/kubernetes-loadbalancer.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/kubernetes-port-forward-proxy-command.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/kubernetes-ssh-jump.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/lambda-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/local-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/nebius-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/oci-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/paperspace-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/runpod-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/scp-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/sky-serve-controller.yaml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/skypilot-server-kubernetes-proxy.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/vast-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/vsphere-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/templates/websocket_proxy.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/usage/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/usage/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/usage/usage_lib.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/users/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/users/model.conf +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/users/rbac.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/users/server.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/accelerator_registry.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/admin_policy_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/annotations.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/atomic.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/aws/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/aws/get_default_security_group.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/cli_utils/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/cli_utils/status_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/cluster_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/command_runner.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/command_runner.pyi +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/common.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/common_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/config_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/context_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/control_master_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/controller_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/dag_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/db_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/env_options.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/infra_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/cleanup-tunnel.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/config_map_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/create_cluster.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/delete_cluster.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/deploy_remote_cluster.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/exec_kubeconfig_converter.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/generate_kind_config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/generate_kubeconfig.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/gpu_labeler.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/k8s_gpu_labeler_job.yaml +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/k8s_gpu_labeler_setup.yaml +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/kubernetes_deploy_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/rsync_helper.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/ssh-tunnel.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes/ssh_jump_lifecycle_manager.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/kubernetes_enums.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/log_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/message_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/registry.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/rich_console_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/subprocess_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/timeline.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/utils/ux_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624/sky/workspaces → skypilot_nightly-1.0.0.dev20250625/sky/volumes}/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/workspaces/core.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/workspaces/server.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/workspaces/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/skypilot_nightly.egg-info/dependency_links.txt +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/skypilot_nightly.egg-info/entry_points.txt +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/skypilot_nightly.egg-info/top_level.txt +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_api.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_api_compatibility.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_cli.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_db_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_failover.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_global_user_state.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_jobs.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_jobs_and_serve.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_list_accelerators.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_no_parellel.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_optimizer_dryruns.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_optimizer_random_dag.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_serve_autoscaler.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_smoke.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_storage.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/tests/test_wheels.py +0 -0
- {skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/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.
|
3
|
+
Version: 1.0.0.dev20250625
|
4
4
|
Summary: SkyPilot: Run AI on Any Infra — Unified, Faster, Cheaper.
|
5
5
|
Author: SkyPilot Team
|
6
6
|
License: Apache 2.0
|
@@ -51,6 +51,7 @@ Requires-Dist: sqlalchemy
|
|
51
51
|
Requires-Dist: psycopg2-binary
|
52
52
|
Requires-Dist: casbin
|
53
53
|
Requires-Dist: sqlalchemy_adapter
|
54
|
+
Requires-Dist: prometheus_client>=0.8.0
|
54
55
|
Requires-Dist: passlib
|
55
56
|
Provides-Extra: aws
|
56
57
|
Requires-Dist: awscli>=1.27.10; extra == "aws"
|
@@ -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 = '
|
8
|
+
_SKYPILOT_COMMIT_SHA = 'cc8dbb73a2d26e8c017a788b0bbfc63041c78bae'
|
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.
|
38
|
+
__version__ = '1.0.0.dev20250625'
|
39
39
|
__root_dir__ = os.path.dirname(os.path.abspath(__file__))
|
40
40
|
|
41
41
|
|
@@ -66,6 +66,7 @@ if typing.TYPE_CHECKING:
|
|
66
66
|
from sky import task as task_lib
|
67
67
|
from sky.backends import cloud_vm_ray_backend
|
68
68
|
from sky.backends import local_docker_backend
|
69
|
+
from sky.volumes import volume as volume_lib
|
69
70
|
else:
|
70
71
|
yaml = adaptors_common.LazyImport('yaml')
|
71
72
|
requests = adaptors_common.LazyImport('requests')
|
@@ -541,16 +542,18 @@ def get_expirable_clouds(
|
|
541
542
|
# TODO: too many things happening here - leaky abstraction. Refactor.
|
542
543
|
@timeline.event
|
543
544
|
def write_cluster_config(
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
552
|
-
|
553
|
-
|
545
|
+
to_provision: 'resources_lib.Resources',
|
546
|
+
num_nodes: int,
|
547
|
+
cluster_config_template: str,
|
548
|
+
cluster_name: str,
|
549
|
+
local_wheel_path: pathlib.Path,
|
550
|
+
wheel_hash: str,
|
551
|
+
region: clouds.Region,
|
552
|
+
zones: Optional[List[clouds.Zone]] = None,
|
553
|
+
dryrun: bool = False,
|
554
|
+
keep_launch_fields_in_existing_config: bool = True,
|
555
|
+
volume_mounts: Optional[List['volume_lib.VolumeMount']] = None,
|
556
|
+
) -> Dict[str, str]:
|
554
557
|
"""Fills in cluster configuration templates and writes them out.
|
555
558
|
|
556
559
|
Returns:
|
@@ -598,7 +601,7 @@ def write_cluster_config(
|
|
598
601
|
resources_utils.ClusterName(
|
599
602
|
cluster_name,
|
600
603
|
cluster_name_on_cloud,
|
601
|
-
), region, zones, num_nodes, dryrun)
|
604
|
+
), region, zones, num_nodes, dryrun, volume_mounts)
|
602
605
|
config_dict = {}
|
603
606
|
|
604
607
|
specific_reservations = set(
|
@@ -731,6 +734,15 @@ def write_cluster_config(
|
|
731
734
|
high_availability_specified = controller_utils.high_availability_specified(
|
732
735
|
cluster_name)
|
733
736
|
|
737
|
+
volume_mount_vars = []
|
738
|
+
if volume_mounts is not None:
|
739
|
+
for vol in volume_mounts:
|
740
|
+
volume_mount_vars.append({
|
741
|
+
'name': vol.volume_name,
|
742
|
+
'path': vol.path,
|
743
|
+
'volume_name_on_cloud': vol.volume_config.name_on_cloud,
|
744
|
+
})
|
745
|
+
|
734
746
|
# Use a tmp file path to avoid incomplete YAML file being re-used in the
|
735
747
|
# future.
|
736
748
|
tmp_yaml_path = yaml_path + '.tmp'
|
@@ -821,6 +833,9 @@ def write_cluster_config(
|
|
821
833
|
|
822
834
|
# High availability
|
823
835
|
'high_availability': high_availability_specified,
|
836
|
+
|
837
|
+
# Volume mounts
|
838
|
+
'volume_mounts': volume_mount_vars,
|
824
839
|
}),
|
825
840
|
output_path=tmp_yaml_path)
|
826
841
|
config_dict['cluster_name'] = cluster_name
|
@@ -73,6 +73,7 @@ from sky.utils import status_lib
|
|
73
73
|
from sky.utils import subprocess_utils
|
74
74
|
from sky.utils import timeline
|
75
75
|
from sky.utils import ux_utils
|
76
|
+
from sky.volumes import volume as volume_lib
|
76
77
|
|
77
78
|
if typing.TYPE_CHECKING:
|
78
79
|
from sky import dag
|
@@ -1327,6 +1328,7 @@ class RetryingVmProvisioner(object):
|
|
1327
1328
|
prev_handle: Optional['CloudVmRayResourceHandle'],
|
1328
1329
|
prev_cluster_ever_up: bool,
|
1329
1330
|
skip_if_config_hash_matches: Optional[str],
|
1331
|
+
volume_mounts: Optional[List[volume_lib.VolumeMount]],
|
1330
1332
|
) -> Dict[str, Any]:
|
1331
1333
|
"""The provision retry loop.
|
1332
1334
|
|
@@ -1432,7 +1434,9 @@ class RetryingVmProvisioner(object):
|
|
1432
1434
|
region=region,
|
1433
1435
|
zones=zones,
|
1434
1436
|
dryrun=dryrun,
|
1435
|
-
keep_launch_fields_in_existing_config=cluster_exists
|
1437
|
+
keep_launch_fields_in_existing_config=cluster_exists,
|
1438
|
+
volume_mounts=volume_mounts,
|
1439
|
+
)
|
1436
1440
|
except exceptions.ResourcesUnavailableError as e:
|
1437
1441
|
# Failed due to catalog issue, e.g. image not found, or
|
1438
1442
|
# GPUs are requested in a Kubernetes cluster but the cluster
|
@@ -2081,7 +2085,9 @@ class RetryingVmProvisioner(object):
|
|
2081
2085
|
prev_cluster_status=prev_cluster_status,
|
2082
2086
|
prev_handle=prev_handle,
|
2083
2087
|
prev_cluster_ever_up=prev_cluster_ever_up,
|
2084
|
-
skip_if_config_hash_matches=skip_if_config_hash_matches
|
2088
|
+
skip_if_config_hash_matches=skip_if_config_hash_matches,
|
2089
|
+
volume_mounts=task.volume_mounts,
|
2090
|
+
)
|
2085
2091
|
if dryrun:
|
2086
2092
|
return config_dict
|
2087
2093
|
except (exceptions.InvalidClusterNameError,
|
@@ -2435,9 +2441,14 @@ class CloudVmRayResourceHandle(backends.backend.ResourceHandle):
|
|
2435
2441
|
zip(cluster_internal_ips, cluster_feasible_ips))
|
2436
2442
|
|
2437
2443
|
# Ensure head node is the first element, then sort based on the
|
2438
|
-
# external IPs for stableness
|
2439
|
-
|
2440
|
-
|
2444
|
+
# external IPs for stableness. Skip for k8s nodes since pods
|
2445
|
+
# worker ids are already mapped.
|
2446
|
+
if (cluster_info is not None and
|
2447
|
+
cluster_info.provider_name == 'kubernetes'):
|
2448
|
+
stable_internal_external_ips = internal_external_ips
|
2449
|
+
else:
|
2450
|
+
stable_internal_external_ips = [internal_external_ips[0]] + sorted(
|
2451
|
+
internal_external_ips[1:], key=lambda x: x[1])
|
2441
2452
|
self.stable_internal_external_ips = stable_internal_external_ips
|
2442
2453
|
|
2443
2454
|
@context_utils.cancellation_guard
|
{skypilot_nightly-1.0.0.dev20250624 → skypilot_nightly-1.0.0.dev20250625}/sky/client/cli/command.py
RENAMED
@@ -81,6 +81,8 @@ from sky.utils import subprocess_utils
|
|
81
81
|
from sky.utils import timeline
|
82
82
|
from sky.utils import ux_utils
|
83
83
|
from sky.utils.cli_utils import status_utils
|
84
|
+
from sky.volumes import utils as volumes_utils
|
85
|
+
from sky.volumes.client import sdk as volumes_sdk
|
84
86
|
|
85
87
|
if typing.TYPE_CHECKING:
|
86
88
|
import types
|
@@ -202,13 +204,14 @@ def _get_cluster_records_and_set_ssh_config(
|
|
202
204
|
|
203
205
|
|
204
206
|
def _get_glob_matches(candidate_names: List[str],
|
205
|
-
glob_patterns: List[str]
|
207
|
+
glob_patterns: List[str],
|
208
|
+
resource_type: str = 'Storage') -> List[str]:
|
206
209
|
"""Returns a list of names that match the glob pattern."""
|
207
210
|
glob_storages = []
|
208
211
|
for glob_pattern in glob_patterns:
|
209
212
|
glob_storage = fnmatch.filter(candidate_names, glob_pattern)
|
210
213
|
if not glob_storage:
|
211
|
-
click.echo(f'
|
214
|
+
click.echo(f'{resource_type} {glob_pattern} not found.')
|
212
215
|
glob_storages.extend(glob_storage)
|
213
216
|
return list(set(glob_storages))
|
214
217
|
|
@@ -290,6 +293,19 @@ def _complete_storage_name(ctx: click.Context, param: click.Parameter,
|
|
290
293
|
return response.json()
|
291
294
|
|
292
295
|
|
296
|
+
def _complete_volume_name(ctx: click.Context, param: click.Parameter,
|
297
|
+
incomplete: str) -> List[str]:
|
298
|
+
"""Handle shell completion for volume names."""
|
299
|
+
del ctx, param # Unused.
|
300
|
+
response = requests_lib.get(
|
301
|
+
f'{server_common.get_server_url()}'
|
302
|
+
f'/api/completion/volume_name?incomplete={incomplete}',
|
303
|
+
timeout=2.0,
|
304
|
+
)
|
305
|
+
response.raise_for_status()
|
306
|
+
return response.json()
|
307
|
+
|
308
|
+
|
293
309
|
def _complete_file_name(ctx: click.Context, param: click.Parameter,
|
294
310
|
incomplete: str) -> List[str]:
|
295
311
|
"""Handle shell completion for file names.
|
@@ -531,8 +547,9 @@ def _parse_override_params(
|
|
531
547
|
return override_params
|
532
548
|
|
533
549
|
|
534
|
-
def
|
535
|
-
|
550
|
+
def _check_yaml_only(
|
551
|
+
entrypoint: str) -> Tuple[bool, Optional[Dict[str, Any]], bool, str]:
|
552
|
+
"""Checks if entrypoint is a readable YAML file without confirmation.
|
536
553
|
|
537
554
|
Args:
|
538
555
|
entrypoint: Path to a YAML file.
|
@@ -580,6 +597,17 @@ def _check_yaml(entrypoint: str) -> Tuple[bool, Optional[Dict[str, Any]]]:
|
|
580
597
|
invalid_reason = ('yaml.safe_load() failed. Please check if the'
|
581
598
|
' path is correct.')
|
582
599
|
is_yaml = False
|
600
|
+
return is_yaml, result, yaml_file_provided, invalid_reason
|
601
|
+
|
602
|
+
|
603
|
+
def _check_yaml(entrypoint: str) -> Tuple[bool, Optional[Dict[str, Any]]]:
|
604
|
+
"""Checks if entrypoint is a readable YAML file.
|
605
|
+
|
606
|
+
Args:
|
607
|
+
entrypoint: Path to a YAML file.
|
608
|
+
"""
|
609
|
+
is_yaml, result, yaml_file_provided, invalid_reason = _check_yaml_only(
|
610
|
+
entrypoint)
|
583
611
|
if not is_yaml:
|
584
612
|
if yaml_file_provided:
|
585
613
|
click.confirm(
|
@@ -3767,6 +3795,196 @@ def storage_delete(names: List[str], all: bool, yes: bool, async_call: bool): #
|
|
3767
3795
|
f'{colorama.Style.RESET_ALL}')
|
3768
3796
|
|
3769
3797
|
|
3798
|
+
@cli.group(cls=_NaturalOrderGroup)
|
3799
|
+
def volumes():
|
3800
|
+
"""SkyPilot Volumes CLI."""
|
3801
|
+
pass
|
3802
|
+
|
3803
|
+
|
3804
|
+
@volumes.command('apply', cls=_DocumentedCodeCommand)
|
3805
|
+
@flags.config_option(expose_value=False)
|
3806
|
+
@click.argument('entrypoint',
|
3807
|
+
required=False,
|
3808
|
+
type=str,
|
3809
|
+
nargs=-1,
|
3810
|
+
**_get_shell_complete_args(_complete_file_name))
|
3811
|
+
@click.option('--name',
|
3812
|
+
'-n',
|
3813
|
+
required=False,
|
3814
|
+
type=str,
|
3815
|
+
help='Volume name. Override the name defined in the YAML.')
|
3816
|
+
@click.option('--infra',
|
3817
|
+
required=False,
|
3818
|
+
type=str,
|
3819
|
+
help='Infra. Format: k8s, k8s/context-name. '
|
3820
|
+
'Override the infra defined in the YAML.')
|
3821
|
+
@click.option(
|
3822
|
+
'--type',
|
3823
|
+
required=False,
|
3824
|
+
type=str,
|
3825
|
+
help='Volume type. Format: pvc. Override the type defined in the YAML.')
|
3826
|
+
@click.option('--size',
|
3827
|
+
required=False,
|
3828
|
+
type=str,
|
3829
|
+
help='Volume size. Override the size defined in the YAML.')
|
3830
|
+
@click.option('--yes',
|
3831
|
+
'-y',
|
3832
|
+
is_flag=True,
|
3833
|
+
default=False,
|
3834
|
+
required=False,
|
3835
|
+
help='Skip confirmation prompt.')
|
3836
|
+
@_add_click_options(flags.COMMON_OPTIONS)
|
3837
|
+
@usage_lib.entrypoint
|
3838
|
+
def volumes_apply(
|
3839
|
+
entrypoint: Optional[Tuple[str, ...]],
|
3840
|
+
name: Optional[str],
|
3841
|
+
infra: Optional[str],
|
3842
|
+
type: Optional[str], # pylint: disable=redefined-builtin
|
3843
|
+
size: Optional[str],
|
3844
|
+
yes: bool,
|
3845
|
+
async_call: bool):
|
3846
|
+
"""Apply a volume.
|
3847
|
+
|
3848
|
+
Examples:
|
3849
|
+
|
3850
|
+
.. code-block:: bash
|
3851
|
+
|
3852
|
+
# Apply a volume from a YAML file.
|
3853
|
+
sky volumes apply volume.yaml
|
3854
|
+
\b
|
3855
|
+
# Apply a volume from a command.
|
3856
|
+
sky volumes apply --name pvc1 --infra k8s --type pvc --size 100Gi
|
3857
|
+
"""
|
3858
|
+
# pylint: disable=import-outside-toplevel
|
3859
|
+
from sky.volumes import volume as volume_lib
|
3860
|
+
|
3861
|
+
volume_config_dict: Dict[str, Any] = {}
|
3862
|
+
if entrypoint is not None and len(entrypoint) > 0:
|
3863
|
+
entrypoint_str = ' '.join(entrypoint)
|
3864
|
+
is_yaml, yaml_config, yaml_file_provided, invalid_reason = (
|
3865
|
+
_check_yaml_only(entrypoint_str))
|
3866
|
+
if not is_yaml:
|
3867
|
+
if yaml_file_provided:
|
3868
|
+
raise click.BadParameter(f'{entrypoint_str!r} looks like a '
|
3869
|
+
f'yaml path but {invalid_reason}')
|
3870
|
+
else:
|
3871
|
+
raise click.BadParameter(
|
3872
|
+
f'{entrypoint_str!r} needs to be a YAML file')
|
3873
|
+
if yaml_config is not None:
|
3874
|
+
volume_config_dict = yaml_config.copy()
|
3875
|
+
|
3876
|
+
# Create Volume instance
|
3877
|
+
volume = volume_lib.Volume.from_dict(volume_config_dict)
|
3878
|
+
|
3879
|
+
# Normalize the volume config with CLI options
|
3880
|
+
volume.normalize_config(name=name, infra=infra, type=type, size=size)
|
3881
|
+
|
3882
|
+
logger.debug(f'Volume config: {volume.to_dict()}')
|
3883
|
+
|
3884
|
+
if not yes:
|
3885
|
+
click.confirm(f'Proceed to create volume {volume.name!r}?',
|
3886
|
+
default=True,
|
3887
|
+
abort=True,
|
3888
|
+
show_default=True)
|
3889
|
+
|
3890
|
+
# Call SDK to create volume
|
3891
|
+
try:
|
3892
|
+
request_id = volumes_sdk.apply(volume)
|
3893
|
+
_async_call_or_wait(request_id, async_call, 'sky.volumes.apply')
|
3894
|
+
except RuntimeError as e:
|
3895
|
+
logger.error(f'{colorama.Fore.RED}Error applying volume: '
|
3896
|
+
f'{common_utils.format_exception(e, use_bracket=True)}'
|
3897
|
+
f'{colorama.Style.RESET_ALL}')
|
3898
|
+
|
3899
|
+
|
3900
|
+
@volumes.command('ls', cls=_DocumentedCodeCommand)
|
3901
|
+
@flags.config_option(expose_value=False)
|
3902
|
+
@click.option('--verbose',
|
3903
|
+
'-v',
|
3904
|
+
default=False,
|
3905
|
+
is_flag=True,
|
3906
|
+
required=False,
|
3907
|
+
help='Show all information in full.')
|
3908
|
+
@usage_lib.entrypoint
|
3909
|
+
def volumes_ls(verbose: bool):
|
3910
|
+
"""List volumes managed by SkyPilot."""
|
3911
|
+
request_id = volumes_sdk.ls()
|
3912
|
+
all_volumes = sdk.stream_and_get(request_id)
|
3913
|
+
volume_table = volumes_utils.format_volume_table(all_volumes,
|
3914
|
+
show_all=verbose)
|
3915
|
+
click.echo(volume_table)
|
3916
|
+
|
3917
|
+
|
3918
|
+
@volumes.command('delete', cls=_DocumentedCodeCommand)
|
3919
|
+
@flags.config_option(expose_value=False)
|
3920
|
+
@click.argument('names',
|
3921
|
+
required=False,
|
3922
|
+
type=str,
|
3923
|
+
nargs=-1,
|
3924
|
+
**_get_shell_complete_args(_complete_volume_name))
|
3925
|
+
@click.option('--all',
|
3926
|
+
'-a',
|
3927
|
+
default=False,
|
3928
|
+
is_flag=True,
|
3929
|
+
required=False,
|
3930
|
+
help='Delete all volumes.')
|
3931
|
+
@click.option('--yes',
|
3932
|
+
'-y',
|
3933
|
+
default=False,
|
3934
|
+
is_flag=True,
|
3935
|
+
required=False,
|
3936
|
+
help='Skip confirmation prompt.')
|
3937
|
+
@_add_click_options(flags.COMMON_OPTIONS)
|
3938
|
+
@usage_lib.entrypoint
|
3939
|
+
def volumes_delete(names: List[str], all: bool, yes: bool, async_call: bool): # pylint: disable=redefined-builtin
|
3940
|
+
"""Delete volumes.
|
3941
|
+
|
3942
|
+
Examples:
|
3943
|
+
|
3944
|
+
.. code-block:: bash
|
3945
|
+
|
3946
|
+
# Delete two volumes.
|
3947
|
+
sky volumes delete pvc1 pvc2
|
3948
|
+
\b
|
3949
|
+
# Delete all volumes matching glob pattern 'pvc*'.
|
3950
|
+
sky volumes delete "pvc*"
|
3951
|
+
\b
|
3952
|
+
# Delete all volumes.
|
3953
|
+
sky volumes delete -a
|
3954
|
+
"""
|
3955
|
+
if sum([bool(names), all]) != 1:
|
3956
|
+
raise click.UsageError('Either --all or a name must be specified.')
|
3957
|
+
all_volumes = sdk.get(volumes_sdk.ls())
|
3958
|
+
if all:
|
3959
|
+
if not all_volumes:
|
3960
|
+
click.echo('No volumes to delete.')
|
3961
|
+
return
|
3962
|
+
names = [volume['name'] for volume in all_volumes]
|
3963
|
+
else:
|
3964
|
+
existing_volume_names = [volume['name'] for volume in all_volumes]
|
3965
|
+
names = _get_glob_matches(existing_volume_names,
|
3966
|
+
names,
|
3967
|
+
resource_type='Volume')
|
3968
|
+
if names:
|
3969
|
+
if not yes:
|
3970
|
+
volume_names = ', '.join(names)
|
3971
|
+
volume_str = 'volumes' if len(names) > 1 else 'volume'
|
3972
|
+
click.confirm(
|
3973
|
+
f'Deleting {len(names)} {volume_str}: '
|
3974
|
+
f'{volume_names}. Proceed?',
|
3975
|
+
default=True,
|
3976
|
+
abort=True,
|
3977
|
+
show_default=True)
|
3978
|
+
|
3979
|
+
try:
|
3980
|
+
_async_call_or_wait(volumes_sdk.delete(names), async_call,
|
3981
|
+
'sky.volumes.delete')
|
3982
|
+
except Exception as e: # pylint: disable=broad-except
|
3983
|
+
logger.error(f'{colorama.Fore.RED}Error deleting volumes {names}: '
|
3984
|
+
f'{common_utils.format_exception(e, use_bracket=True)}'
|
3985
|
+
f'{colorama.Style.RESET_ALL}')
|
3986
|
+
|
3987
|
+
|
3770
3988
|
@cli.group(cls=_NaturalOrderGroup)
|
3771
3989
|
def jobs():
|
3772
3990
|
"""Managed Jobs CLI (jobs with auto-recovery)."""
|