skypilot-nightly 1.0.0.dev20250723__tar.gz → 1.0.0.dev20250725__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.
Potentially problematic release.
This version of skypilot-nightly might be problematic. Click here for more details.
- {skypilot_nightly-1.0.0.dev20250723/skypilot_nightly.egg-info → skypilot_nightly-1.0.0.dev20250725}/PKG-INFO +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/__init__.py +2 -2
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/backends/backend_utils.py +27 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/client/cli/command.py +61 -21
- skypilot_nightly-1.0.0.dev20250725/sky/client/sdk.pyi +296 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/utils/oci_utils.py +16 -40
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/404.html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/clusters/[cluster]/[job].html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/clusters/[cluster].html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/clusters.html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/config.html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/index.html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/infra/[context].html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/infra.html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/jobs/[job].html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/jobs.html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/users.html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/volumes.html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/workspace/new.html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/workspaces/[name].html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/workspaces.html +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/exceptions.py +8 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/global_user_state.py +12 -23
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/state.py +12 -24
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/logs/__init__.py +4 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/logs/agent.py +14 -0
- skypilot_nightly-1.0.0.dev20250725/sky/logs/aws.py +276 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/common.py +14 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/payloads.py +20 -4
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/rest.py +6 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/server.py +5 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/aws-ray.yml.j2 +7 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/azure-ray.yml.j2 +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/do-ray.yml.j2 +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/lambda-ray.yml.j2 +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/nebius-ray.yml.j2 +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/paperspace-ray.yml.j2 +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/runpod-ray.yml.j2 +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/config_utils.py +6 -4
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/db/migration_utils.py +60 -19
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/rich_utils.py +2 -3
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/schemas.py +67 -22
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725/skypilot_nightly.egg-info}/PKG-INFO +1 -1
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/skypilot_nightly.egg-info/SOURCES.txt +4 -2
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_cli.py +216 -3
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_config.py +69 -9
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_smoke.py +1 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/LICENSE +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/MANIFEST.in +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/README.md +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/pyproject.toml +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/setup.cfg +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/setup.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/aws.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/azure.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/cloudflare.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/common.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/cudo.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/do.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/docker.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/gcp.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/hyperbolic.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/ibm.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/kubernetes.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/nebius.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/oci.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/runpod.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/vast.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/adaptors/vsphere.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/admin_policy.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/authentication.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/backends/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/backends/backend.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/backends/cloud_vm_ray_backend.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/backends/docker_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/backends/local_docker_backend.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/backends/monkey_patches/monkey_patch_ray_up.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/backends/wheel_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/aws_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/azure_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/common.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/cudo_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/analyze.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/fetch_aws.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/fetch_azure.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/fetch_cudo.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/fetch_fluidstack.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/fetch_gcp.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/fetch_hyperbolic.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/fetch_ibm.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/fetch_lambda_cloud.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/fetch_nebius.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/fetch_vast.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/data_fetchers/fetch_vsphere.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/do_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/fluidstack_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/gcp_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/hyperbolic_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/ibm_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/kubernetes_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/lambda_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/nebius_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/oci_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/paperspace_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/runpod_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/scp_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/ssh_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/vast_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/catalog/vsphere_catalog.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/check.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/cli.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/client/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/client/cli/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/client/cli/deprecation_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/client/cli/flags.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/client/cli/git.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/client/common.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/client/oauth.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/client/sdk.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/client/service_account_auth.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/cloud_stores.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/aws.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/azure.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/cloud.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/cudo.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/do.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/fluidstack.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/gcp.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/hyperbolic.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/ibm.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/kubernetes.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/lambda_cloud.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/nebius.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/oci.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/paperspace.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/runpod.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/scp.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/ssh.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/utils/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/utils/aws_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/utils/azure_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/utils/gcp_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/utils/scp_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/vast.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/clouds/vsphere.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/core.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dag.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723/sky/dashboard/out/_next/static/mym3Ciwp-zqU7ZpOLGnrW → skypilot_nightly-1.0.0.dev20250725/sky/dashboard/out/_next/static/SiA7c33x_DqO42M373Okd}/_buildManifest.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723/sky/dashboard/out/_next/static/mym3Ciwp-zqU7ZpOLGnrW → skypilot_nightly-1.0.0.dev20250725/sky/dashboard/out/_next/static/SiA7c33x_DqO42M373Okd}/_ssgManifest.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/1043-869d9c78bf5dd3df.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/1141-e49a159c30a6c4a7.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/1272-1ef0bf0237faccdb.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/1559-18717d96ef2fcbe9.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/1664-d65361e92b85e786.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/1871-ea0e7283886407ca.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/2003.b82e6db40ec4c463.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/2350.23778a2b19aabd33.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/2369.2d6e4757f8dfc2b7.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/2641.74c19c4d45a2c034.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/3698-9fa11dafb5cad4a6.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/3785.59705416215ff08b.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/3937.d7f1c55d1916c7f2.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/4725.66125dcd9832aa5d.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/4869.da729a7db3a31f43.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/4937.d75809403fc264ac.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/5230-df791914b54d91d9.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/5739-5ea3ffa10fc884f2.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/6135-2abbd0352f8ee061.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/616-162f3033ffcd3d31.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/6601-d4a381403a8bae91.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/691.488b4aef97c28727.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/6989-eab0e9c16b64fd9f.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/6990-f64e03df359e04f7.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/7411-2cc31dc0fdf2a9ad.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/8969-8e0b2055bf5dd499.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/9025.4a9099bdf3ed4875.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/938-7ee806653aef0609.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/9847.387abf8a14d722db.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/9984.0460de9d3adf5582.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/fd9d1056-61f2257a9cd8b32b.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/framework-efc06c2733009cd3.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/main-app-68c028b1bc5e1b72.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/main-c0a4f1ea606d48d2.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/_app-da491665d4289aae.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/_error-c72a1f77a3c0be1b.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]/[job]-2186770cc2de1623.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-95afb019ab85801c.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/clusters-3d4be4961e1c94eb.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/config-a2673b256b6d416f.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/index-89e7daf7b7df02e0.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/infra/[context]-a90b4fe4616dc501.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/infra-0d3d1f890c5d188a.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-dc0299ffefebcdbe.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/jobs-49f790d12a85027c.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/users-6790fcefd5487b13.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/volumes-61ea7ba7e56f8d06.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/workspace/new-5629d4e551dba1ee.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/workspaces/[name]-6bcd4b20914d76c9.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/pages/workspaces-5f7fe4b7d55b8612.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/chunks/webpack-a305898dc479711e.js +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/_next/static/css/b3227360726f12eb.css +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/favicon.ico +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/skypilot.svg +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/videos/cursor-small.mp4 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/data/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/data/data_transfer.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/data/data_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/data/mounting_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/data/storage.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/data/storage_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/execution.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/client/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/client/sdk.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/controller.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/recovery_strategy.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/scheduler.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/server/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/server/core.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/server/server.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/server/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/jobs/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/logs/gcp.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/metrics/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/metrics/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/models.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/optimizer.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/aws/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/aws/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/aws/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/aws/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/azure/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/azure/azure-config-template.json +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/azure/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/azure/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/common.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/cudo/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/cudo/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/cudo/cudo_machine_type.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/cudo/cudo_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/cudo/cudo_wrapper.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/cudo/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/do/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/do/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/do/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/do/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/do/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/docker_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/fluidstack/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/fluidstack/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/fluidstack/fluidstack_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/fluidstack/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/gcp/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/gcp/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/gcp/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/gcp/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/gcp/instance_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/gcp/mig_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/gcp/volume_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/hyperbolic/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/hyperbolic/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/hyperbolic/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/hyperbolic/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/instance_setup.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/kubernetes/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/kubernetes/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/kubernetes/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/kubernetes/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/kubernetes/manifests/fusermount-server-daemonset.yaml +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/kubernetes/network.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/kubernetes/network_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/kubernetes/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/kubernetes/volume.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/lambda_cloud/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/lambda_cloud/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/lambda_cloud/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/lambda_cloud/lambda_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/logging.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/metadata_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/nebius/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/nebius/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/nebius/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/nebius/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/nebius/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/oci/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/oci/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/oci/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/oci/query_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/paperspace/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/paperspace/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/paperspace/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/paperspace/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/paperspace/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/provisioner.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/runpod/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/runpod/api/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/runpod/api/commands.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/runpod/api/pods.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/runpod/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/runpod/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/runpod/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/scp/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/scp/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/scp/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/ssh/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vast/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vast/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vast/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vast/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/common/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/common/cls_api_client.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/common/cls_api_helper.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/common/custom_script.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/common/id_generator.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/common/metadata_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/common/service_manager.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/common/service_manager_factory.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/common/ssl_helper.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/common/vapiconnect.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/common/vim_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/instance.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/provision/vsphere/vsphere_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/resources.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/schemas/db/README +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/schemas/db/env.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/schemas/db/global_user_state/001_initial_schema.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/schemas/db/script.py.mako +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/schemas/db/spot_jobs/001_initial_schema.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/autoscalers.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/client/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/client/sdk.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/controller.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/load_balancer.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/load_balancing_policies.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/replica_managers.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/serve_state.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/serve_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/server/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/server/core.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/server/server.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/service.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/service_spec.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/serve/spot_placer.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/html/log.html +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/html/token_page.html +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/metrics.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/event_loop.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/executor.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/preconditions.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/process.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/queues/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/queues/local_queue.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/queues/mp_queue.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/requests.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/serializers/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/serializers/decoders.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/requests/serializers/encoders.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/state.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/stream_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/uvicorn.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/server/versions.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/setup_files/MANIFEST.in +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/setup_files/alembic.ini +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/setup_files/dependencies.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/setup_files/setup.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/sky_logging.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/LICENSE +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/attempt_skylet.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/autostop_lib.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/configs.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/events.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/job_lib.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/log_lib.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/log_lib.pyi +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/providers/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/providers/command_runner.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/providers/ibm/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/providers/ibm/node_provider.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/providers/ibm/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/providers/ibm/vpc_provider.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/ray_patches/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/ray_patches/autoscaler.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/ray_patches/cli.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/ray_patches/command_runner.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/ray_patches/log_monitor.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/ray_patches/resource_demand_scheduler.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/ray_patches/updater.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/ray_patches/worker.py.patch +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/skylet.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skylet/subprocess_daemon.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/skypilot_config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/ssh_node_pools/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/ssh_node_pools/core.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/ssh_node_pools/server.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/task.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/cudo-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/fluidstack-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/gcp-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/hyperbolic-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/ibm-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/jobs-controller.yaml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/kubernetes-ingress.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/kubernetes-loadbalancer.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/kubernetes-port-forward-proxy-command.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/kubernetes-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/kubernetes-ssh-jump.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/local-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/oci-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/scp-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/sky-serve-controller.yaml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/skypilot-server-kubernetes-proxy.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/vast-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/vsphere-ray.yml.j2 +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/templates/websocket_proxy.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/usage/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/usage/constants.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/usage/usage_lib.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/users/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/users/model.conf +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/users/permission.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/users/rbac.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/users/server.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/users/token_service.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/accelerator_registry.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/admin_policy_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/annotations.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/atomic.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/aws/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/aws/get_default_security_group.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/cli_utils/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/cli_utils/status_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/cluster_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/command_runner.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/command_runner.pyi +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/common.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/common_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/context.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/context_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/control_master_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/controller_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/dag_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/db/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/db/db_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/env_options.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/git.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/git_clone.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/infra_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/cleanup-tunnel.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/config_map_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/create_cluster.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/delete_cluster.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/deploy_remote_cluster.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/exec_kubeconfig_converter.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/generate_kind_config.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/generate_kubeconfig.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/gpu_labeler.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/k8s_gpu_labeler_job.yaml +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/k8s_gpu_labeler_setup.yaml +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/kubernetes_deploy_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/rsync_helper.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/ssh-tunnel.sh +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/ssh_jump_lifecycle_manager.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes/ssh_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/kubernetes_enums.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/locks.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/log_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/message_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/registry.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/resource_checker.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/resources_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/rich_console_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/status_lib.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/subprocess_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/tempstore.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/timeline.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/ux_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/utils/validator.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/volumes/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/volumes/client/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/volumes/client/sdk.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/volumes/server/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/volumes/server/core.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/volumes/server/server.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/volumes/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/volumes/volume.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/workspaces/__init__.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/workspaces/core.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/workspaces/server.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/workspaces/utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/skypilot_nightly.egg-info/dependency_links.txt +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/skypilot_nightly.egg-info/entry_points.txt +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/skypilot_nightly.egg-info/requires.txt +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/skypilot_nightly.egg-info/top_level.txt +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_api.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_api_compatibility.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_db_utils.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_failover.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_global_user_state.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_jobs.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_jobs_and_serve.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_list_accelerators.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_no_parellel.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_optimizer_dryruns.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_optimizer_random_dag.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_serve_autoscaler.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_storage.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_wheels.py +0 -0
- {skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/tests/test_yaml_parser.py +0 -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 = '
|
|
8
|
+
_SKYPILOT_COMMIT_SHA = 'c8383b047969b0b18ca50a7ad02ea9d8cf77d236'
|
|
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.dev20250725'
|
|
39
39
|
__root_dir__ = os.path.dirname(os.path.abspath(__file__))
|
|
40
40
|
|
|
41
41
|
|
|
@@ -35,6 +35,7 @@ from sky.adaptors import common as adaptors_common
|
|
|
35
35
|
from sky.jobs import utils as managed_job_utils
|
|
36
36
|
from sky.provision import instance_setup
|
|
37
37
|
from sky.provision.kubernetes import utils as kubernetes_utils
|
|
38
|
+
from sky.server.requests import requests as requests_lib
|
|
38
39
|
from sky.skylet import constants
|
|
39
40
|
from sky.usage import usage_lib
|
|
40
41
|
from sky.utils import cluster_utils
|
|
@@ -798,6 +799,12 @@ def write_cluster_config(
|
|
|
798
799
|
'volume_name_on_cloud': vol.volume_config.name_on_cloud,
|
|
799
800
|
})
|
|
800
801
|
|
|
802
|
+
runcmd = skypilot_config.get_effective_region_config(
|
|
803
|
+
cloud=str(to_provision.cloud).lower(),
|
|
804
|
+
region=to_provision.region,
|
|
805
|
+
keys=('post_provision_runcmd',),
|
|
806
|
+
default_value=None)
|
|
807
|
+
|
|
801
808
|
# Use a tmp file path to avoid incomplete YAML file being re-used in the
|
|
802
809
|
# future.
|
|
803
810
|
tmp_yaml_path = yaml_path + '.tmp'
|
|
@@ -833,7 +840,7 @@ def write_cluster_config(
|
|
|
833
840
|
# User-supplied remote_identity
|
|
834
841
|
'remote_identity': remote_identity,
|
|
835
842
|
# The reservation pools that specified by the user. This is
|
|
836
|
-
# currently only used by GCP.
|
|
843
|
+
# currently only used by AWS and GCP.
|
|
837
844
|
'specific_reservations': specific_reservations,
|
|
838
845
|
|
|
839
846
|
# Conda setup
|
|
@@ -896,6 +903,10 @@ def write_cluster_config(
|
|
|
896
903
|
|
|
897
904
|
# Volume mounts
|
|
898
905
|
'volume_mounts': volume_mount_vars,
|
|
906
|
+
|
|
907
|
+
# runcmd to append to the cloud-init cloud config passed to the
|
|
908
|
+
# machine's UserData. This is currently only used by AWS.
|
|
909
|
+
'runcmd': runcmd,
|
|
899
910
|
}),
|
|
900
911
|
output_path=tmp_yaml_path)
|
|
901
912
|
config_dict['cluster_name'] = cluster_name
|
|
@@ -2831,6 +2842,21 @@ def get_clusters(
|
|
|
2831
2842
|
force_refresh_statuses = None
|
|
2832
2843
|
|
|
2833
2844
|
def _refresh_cluster(cluster_name):
|
|
2845
|
+
# TODO(syang): we should try not to leak
|
|
2846
|
+
# request info in backend_utils.py.
|
|
2847
|
+
# Refactor this to use some other info to
|
|
2848
|
+
# determine if a launch is in progress.
|
|
2849
|
+
request = requests_lib.get_request_tasks(
|
|
2850
|
+
status=[requests_lib.RequestStatus.RUNNING],
|
|
2851
|
+
cluster_names=[cluster_name],
|
|
2852
|
+
include_request_names=['sky.launch'])
|
|
2853
|
+
if len(request) > 0:
|
|
2854
|
+
# There is an active launch request on the cluster,
|
|
2855
|
+
# so we don't want to update the cluster status until
|
|
2856
|
+
# the request is completed.
|
|
2857
|
+
logger.debug(f'skipping refresh for cluster {cluster_name} '
|
|
2858
|
+
'as there is an active launch request')
|
|
2859
|
+
return global_user_state.get_cluster_from_name(cluster_name)
|
|
2834
2860
|
try:
|
|
2835
2861
|
record = refresh_cluster_record(
|
|
2836
2862
|
cluster_name,
|
{skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/client/cli/command.py
RENAMED
|
@@ -24,6 +24,7 @@ listed in "sky --help". Take care to put logically connected commands close to
|
|
|
24
24
|
each other.
|
|
25
25
|
"""
|
|
26
26
|
import collections
|
|
27
|
+
import concurrent.futures
|
|
27
28
|
import fnmatch
|
|
28
29
|
import os
|
|
29
30
|
import pathlib
|
|
@@ -358,6 +359,9 @@ def _install_shell_completion(ctx: click.Context, param: click.Parameter,
|
|
|
358
359
|
bashrc_diff = ('\n# For SkyPilot shell completion'
|
|
359
360
|
'\n. ~/.sky/.sky-complete.bash')
|
|
360
361
|
|
|
362
|
+
cmd: Optional[str] = None
|
|
363
|
+
reload_cmd: Optional[str] = None
|
|
364
|
+
|
|
361
365
|
if value == 'bash':
|
|
362
366
|
install_cmd = f'_SKY_COMPLETE=bash_source sky > \
|
|
363
367
|
~/.sky/.sky-complete.bash && \
|
|
@@ -389,6 +393,7 @@ def _install_shell_completion(ctx: click.Context, param: click.Parameter,
|
|
|
389
393
|
click.secho(f'Unsupported shell: {value}', fg='red')
|
|
390
394
|
ctx.exit()
|
|
391
395
|
|
|
396
|
+
assert cmd is not None # This should never be None due to ctx.exit() above
|
|
392
397
|
try:
|
|
393
398
|
subprocess.run(cmd,
|
|
394
399
|
shell=True,
|
|
@@ -420,6 +425,9 @@ def _uninstall_shell_completion(ctx: click.Context, param: click.Parameter,
|
|
|
420
425
|
else:
|
|
421
426
|
value = os.path.basename(os.environ['SHELL'])
|
|
422
427
|
|
|
428
|
+
cmd: Optional[str] = None
|
|
429
|
+
reload_cmd: Optional[str] = None
|
|
430
|
+
|
|
423
431
|
if value == 'bash':
|
|
424
432
|
cmd = 'sed -i"" -e "/# For SkyPilot shell completion/d" ~/.bashrc && \
|
|
425
433
|
sed -i"" -e "/sky-complete.bash/d" ~/.bashrc && \
|
|
@@ -444,6 +452,7 @@ def _uninstall_shell_completion(ctx: click.Context, param: click.Parameter,
|
|
|
444
452
|
click.secho(f'Unsupported shell: {value}', fg='red')
|
|
445
453
|
ctx.exit()
|
|
446
454
|
|
|
455
|
+
assert cmd is not None # This should never be None due to ctx.exit() above
|
|
447
456
|
try:
|
|
448
457
|
subprocess.run(cmd, shell=True, check=True)
|
|
449
458
|
click.secho(f'Shell completion uninstalled for {value}', fg='green')
|
|
@@ -1745,19 +1754,16 @@ def status(verbose: bool, refresh: bool, ip: bool, endpoints: bool,
|
|
|
1745
1754
|
# Do not show job queue if user specifies clusters, and if user
|
|
1746
1755
|
# specifies --ip or --endpoint(s).
|
|
1747
1756
|
show_managed_jobs = show_managed_jobs and not any([clusters, ip, endpoints])
|
|
1748
|
-
if show_managed_jobs:
|
|
1749
|
-
managed_jobs_queue_request_id = managed_jobs.queue(refresh=False,
|
|
1750
|
-
skip_finished=True,
|
|
1751
|
-
all_users=all_users)
|
|
1752
1757
|
show_endpoints = endpoints or endpoint is not None
|
|
1753
1758
|
show_single_endpoint = endpoint is not None
|
|
1754
1759
|
show_services = show_services and not any([clusters, ip, endpoints])
|
|
1755
|
-
if show_services:
|
|
1756
|
-
# Run the sky serve service query in parallel to speed up the
|
|
1757
|
-
# status query.
|
|
1758
|
-
service_status_request_id = serve_lib.status(service_names=None)
|
|
1759
1760
|
|
|
1760
|
-
|
|
1761
|
+
query_clusters: Optional[List[str]] = None if not clusters else clusters
|
|
1762
|
+
refresh_mode = common.StatusRefreshMode.NONE
|
|
1763
|
+
if refresh:
|
|
1764
|
+
refresh_mode = common.StatusRefreshMode.FORCE
|
|
1765
|
+
|
|
1766
|
+
# Phase 1: Validate arguments for IP/endpoint queries
|
|
1761
1767
|
if ip or show_endpoints:
|
|
1762
1768
|
if refresh:
|
|
1763
1769
|
raise click.UsageError(
|
|
@@ -1791,9 +1797,19 @@ def status(verbose: bool, refresh: bool, ip: bool, endpoints: bool,
|
|
|
1791
1797
|
flag='ip' if ip else
|
|
1792
1798
|
('endpoint port'
|
|
1793
1799
|
if show_single_endpoint else 'endpoints')))
|
|
1794
|
-
|
|
1800
|
+
|
|
1801
|
+
# Phase 2: Parallel submission of all API requests
|
|
1802
|
+
def submit_managed_jobs():
|
|
1803
|
+
return managed_jobs.queue(refresh=False,
|
|
1804
|
+
skip_finished=True,
|
|
1805
|
+
all_users=all_users)
|
|
1806
|
+
|
|
1807
|
+
def submit_services() -> Optional[str]:
|
|
1808
|
+
return serve_lib.status(service_names=None)
|
|
1809
|
+
|
|
1810
|
+
def submit_workspace() -> Optional[str]:
|
|
1795
1811
|
try:
|
|
1796
|
-
|
|
1812
|
+
return sdk.workspaces()
|
|
1797
1813
|
except RuntimeError:
|
|
1798
1814
|
# Backward compatibility for API server before #5660.
|
|
1799
1815
|
# TODO(zhwu): remove this after 0.10.0.
|
|
@@ -1802,12 +1818,35 @@ def status(verbose: bool, refresh: bool, ip: bool, endpoints: bool,
|
|
|
1802
1818
|
'workspaces. Update with: sky api stop; '
|
|
1803
1819
|
'sky api start'
|
|
1804
1820
|
f'{colorama.Style.RESET_ALL}')
|
|
1805
|
-
|
|
1821
|
+
return None
|
|
1806
1822
|
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1823
|
+
managed_jobs_queue_request_id = None
|
|
1824
|
+
service_status_request_id = None
|
|
1825
|
+
workspace_request_id = None
|
|
1826
|
+
|
|
1827
|
+
# Submit all requests in parallel
|
|
1828
|
+
with concurrent.futures.ThreadPoolExecutor(max_workers=1) as executor:
|
|
1829
|
+
if show_managed_jobs:
|
|
1830
|
+
managed_jobs_request_future = executor.submit(submit_managed_jobs)
|
|
1831
|
+
if show_services:
|
|
1832
|
+
services_request_future = executor.submit(submit_services)
|
|
1833
|
+
if not (ip or show_endpoints):
|
|
1834
|
+
workspace_request_future = executor.submit(submit_workspace)
|
|
1835
|
+
|
|
1836
|
+
# Get the request IDs
|
|
1837
|
+
if show_managed_jobs:
|
|
1838
|
+
managed_jobs_queue_request_id = managed_jobs_request_future.result()
|
|
1839
|
+
if show_services:
|
|
1840
|
+
service_status_request_id = services_request_future.result()
|
|
1841
|
+
if not (ip or show_endpoints):
|
|
1842
|
+
workspace_request_id = workspace_request_future.result()
|
|
1843
|
+
|
|
1844
|
+
managed_jobs_queue_request_id = '' if not managed_jobs_queue_request_id \
|
|
1845
|
+
else managed_jobs_queue_request_id
|
|
1846
|
+
service_status_request_id = '' if not service_status_request_id \
|
|
1847
|
+
else service_status_request_id
|
|
1848
|
+
|
|
1849
|
+
# Phase 3: Get cluster records and handle special cases
|
|
1811
1850
|
cluster_records = _get_cluster_records_and_set_ssh_config(
|
|
1812
1851
|
query_clusters, refresh_mode, all_users)
|
|
1813
1852
|
|
|
@@ -2143,7 +2182,9 @@ def logs(
|
|
|
2143
2182
|
if sync_down:
|
|
2144
2183
|
with rich_utils.client_status(
|
|
2145
2184
|
ux_utils.spinner_message('Downloading logs')):
|
|
2146
|
-
log_local_path_dict = sdk.download_logs(
|
|
2185
|
+
log_local_path_dict = sdk.download_logs(
|
|
2186
|
+
cluster,
|
|
2187
|
+
list(job_ids) if job_ids else None)
|
|
2147
2188
|
style = colorama.Style
|
|
2148
2189
|
fore = colorama.Fore
|
|
2149
2190
|
for job, log_local_path in log_local_path_dict.items():
|
|
@@ -2195,8 +2236,7 @@ def logs(
|
|
|
2195
2236
|
f'{colorama.Style.RESET_ALL}')
|
|
2196
2237
|
|
|
2197
2238
|
# Stream logs from the server.
|
|
2198
|
-
|
|
2199
|
-
sys.exit(returncode)
|
|
2239
|
+
sys.exit(sdk.tail_logs(cluster, job_id, follow, tail=tail))
|
|
2200
2240
|
|
|
2201
2241
|
|
|
2202
2242
|
@cli.command()
|
|
@@ -3244,7 +3284,7 @@ def show_gpus(
|
|
|
3244
3284
|
infra: Optional[str],
|
|
3245
3285
|
cloud: Optional[str],
|
|
3246
3286
|
region: Optional[str],
|
|
3247
|
-
all_regions:
|
|
3287
|
+
all_regions: bool):
|
|
3248
3288
|
"""Show supported GPU/TPU/accelerators and their prices.
|
|
3249
3289
|
|
|
3250
3290
|
The names and counts shown can be set in the ``accelerators`` field in task
|
|
@@ -5398,7 +5438,7 @@ def api():
|
|
|
5398
5438
|
required=False,
|
|
5399
5439
|
help='Enable basic authentication in the SkyPilot API server.')
|
|
5400
5440
|
@usage_lib.entrypoint
|
|
5401
|
-
def api_start(deploy: bool, host:
|
|
5441
|
+
def api_start(deploy: bool, host: str, foreground: bool,
|
|
5402
5442
|
enable_basic_auth: bool):
|
|
5403
5443
|
"""Starts the SkyPilot API server locally."""
|
|
5404
5444
|
sdk.api_start(deploy=deploy,
|
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
"""Stub for sky.client.sdk, generated by stubgen."""
|
|
2
|
+
import io
|
|
3
|
+
from typing import Any, Dict, List, Optional, Tuple, Union
|
|
4
|
+
|
|
5
|
+
from _typeshed import Incomplete
|
|
6
|
+
import requests
|
|
7
|
+
|
|
8
|
+
import sky
|
|
9
|
+
from sky import admin_policy as admin_policy
|
|
10
|
+
from sky import backends as backends
|
|
11
|
+
from sky import exceptions as exceptions
|
|
12
|
+
from sky import sky_logging as sky_logging
|
|
13
|
+
from sky import skypilot_config as skypilot_config
|
|
14
|
+
from sky.server import common as server_common
|
|
15
|
+
from sky.server import rest as rest
|
|
16
|
+
from sky.server.requests import payloads as payloads
|
|
17
|
+
from sky.skylet import constants as constants
|
|
18
|
+
from sky.usage import usage_lib as usage_lib
|
|
19
|
+
from sky.utils import admin_policy_utils as admin_policy_utils
|
|
20
|
+
from sky.utils import annotations as annotations
|
|
21
|
+
from sky.utils import cluster_utils as cluster_utils
|
|
22
|
+
from sky.utils import common as common
|
|
23
|
+
from sky.utils import common_utils as common_utils
|
|
24
|
+
from sky.utils import dag_utils as dag_utils
|
|
25
|
+
from sky.utils import env_options as env_options
|
|
26
|
+
from sky.utils import infra_utils as infra_utils
|
|
27
|
+
from sky.utils import rich_utils as rich_utils
|
|
28
|
+
from sky.utils import status_lib as status_lib
|
|
29
|
+
from sky.utils import subprocess_utils as subprocess_utils
|
|
30
|
+
from sky.utils import ux_utils as ux_utils
|
|
31
|
+
from sky.utils.kubernetes import ssh_utils as ssh_utils
|
|
32
|
+
|
|
33
|
+
logger: Incomplete
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def reload_config() -> None:
|
|
37
|
+
...
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
def stream_response(request_id: Optional[str],
|
|
41
|
+
response: requests.Response,
|
|
42
|
+
output_stream: Optional['io.TextIOBase'] = ...,
|
|
43
|
+
resumable: bool = ...) -> Any:
|
|
44
|
+
...
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
def check(infra_list: Optional[Tuple[str, ...]],
|
|
48
|
+
verbose: bool,
|
|
49
|
+
workspace: Optional[str] = ...) -> server_common.RequestId:
|
|
50
|
+
...
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
def enabled_clouds(workspace: Optional[str] = ...,
|
|
54
|
+
expand: bool = ...) -> server_common.RequestId:
|
|
55
|
+
...
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
def list_accelerators(gpus_only: bool = ...,
|
|
59
|
+
name_filter: Optional[str] = ...,
|
|
60
|
+
region_filter: Optional[str] = ...,
|
|
61
|
+
quantity_filter: Optional[int] = ...,
|
|
62
|
+
clouds: Optional[Union[List[str], str]] = ...,
|
|
63
|
+
all_regions: bool = ...,
|
|
64
|
+
require_price: bool = ...,
|
|
65
|
+
case_sensitive: bool = ...) -> server_common.RequestId:
|
|
66
|
+
...
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
def list_accelerator_counts(
|
|
70
|
+
gpus_only: bool = ...,
|
|
71
|
+
name_filter: Optional[str] = ...,
|
|
72
|
+
region_filter: Optional[str] = ...,
|
|
73
|
+
quantity_filter: Optional[int] = ...,
|
|
74
|
+
clouds: Optional[Union[List[str],
|
|
75
|
+
str]] = ...) -> server_common.RequestId:
|
|
76
|
+
...
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
def optimize(
|
|
80
|
+
dag: sky.Dag,
|
|
81
|
+
minimize: common.OptimizeTarget = ...,
|
|
82
|
+
admin_policy_request_options: Optional[admin_policy.RequestOptions] = ...
|
|
83
|
+
) -> server_common.RequestId:
|
|
84
|
+
...
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
def workspaces() -> server_common.RequestId:
|
|
88
|
+
...
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
def validate(
|
|
92
|
+
dag: sky.Dag,
|
|
93
|
+
workdir_only: bool = ...,
|
|
94
|
+
admin_policy_request_options: Optional[admin_policy.RequestOptions] = ...
|
|
95
|
+
) -> None:
|
|
96
|
+
...
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
def dashboard(starting_page: Optional[str] = ...) -> None:
|
|
100
|
+
...
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
def launch(task: Union['sky.Task', 'sky.Dag'],
|
|
104
|
+
cluster_name: Optional[str] = ...,
|
|
105
|
+
retry_until_up: bool = ...,
|
|
106
|
+
idle_minutes_to_autostop: Optional[int] = ...,
|
|
107
|
+
dryrun: bool = ...,
|
|
108
|
+
down: bool = ...,
|
|
109
|
+
backend: Optional['backends.Backend'] = ...,
|
|
110
|
+
optimize_target: common.OptimizeTarget = ...,
|
|
111
|
+
no_setup: bool = ...,
|
|
112
|
+
clone_disk_from: Optional[str] = ...,
|
|
113
|
+
fast: bool = ...,
|
|
114
|
+
_need_confirmation: bool = ...,
|
|
115
|
+
_is_launched_by_jobs_controller: bool = ...,
|
|
116
|
+
_is_launched_by_sky_serve_controller: bool = ...,
|
|
117
|
+
_disable_controller_check: bool = ...) -> server_common.RequestId:
|
|
118
|
+
...
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
def exec(
|
|
122
|
+
task: Union['sky.Task', 'sky.Dag'],
|
|
123
|
+
cluster_name: Optional[str] = ...,
|
|
124
|
+
dryrun: bool = ...,
|
|
125
|
+
down: bool = ...,
|
|
126
|
+
backend: Optional['backends.Backend'] = ...) -> server_common.RequestId:
|
|
127
|
+
...
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
def tail_logs(cluster_name: str,
|
|
131
|
+
job_id: Optional[int],
|
|
132
|
+
follow: bool,
|
|
133
|
+
tail: int = ...,
|
|
134
|
+
output_stream: Optional['io.TextIOBase'] = ...) -> int:
|
|
135
|
+
...
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
def download_logs(cluster_name: str,
|
|
139
|
+
job_ids: Optional[List[str]]) -> Dict[str, str]:
|
|
140
|
+
...
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
def start(cluster_name: str,
|
|
144
|
+
idle_minutes_to_autostop: Optional[int] = ...,
|
|
145
|
+
retry_until_up: bool = ...,
|
|
146
|
+
down: bool = ...,
|
|
147
|
+
force: bool = ...) -> server_common.RequestId:
|
|
148
|
+
...
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
def down(cluster_name: str, purge: bool = ...) -> server_common.RequestId:
|
|
152
|
+
...
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
def stop(cluster_name: str, purge: bool = ...) -> server_common.RequestId:
|
|
156
|
+
...
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
def autostop(cluster_name: str,
|
|
160
|
+
idle_minutes: int,
|
|
161
|
+
down: bool = ...) -> server_common.RequestId:
|
|
162
|
+
...
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
def queue(cluster_name: str,
|
|
166
|
+
skip_finished: bool = ...,
|
|
167
|
+
all_users: bool = ...) -> server_common.RequestId:
|
|
168
|
+
...
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
def job_status(cluster_name: str,
|
|
172
|
+
job_ids: Optional[List[int]] = ...) -> server_common.RequestId:
|
|
173
|
+
...
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
def cancel(
|
|
177
|
+
cluster_name: str,
|
|
178
|
+
all: bool = ...,
|
|
179
|
+
all_users: bool = ...,
|
|
180
|
+
job_ids: Optional[List[int]] = ...,
|
|
181
|
+
_try_cancel_if_cluster_is_init: bool = ...) -> server_common.RequestId:
|
|
182
|
+
...
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
def status(cluster_names: Optional[List[str]] = ...,
|
|
186
|
+
refresh: common.StatusRefreshMode = ...,
|
|
187
|
+
all_users: bool = ...) -> server_common.RequestId:
|
|
188
|
+
...
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
def endpoints(cluster: str,
|
|
192
|
+
port: Optional[Union[int, str]] = ...) -> server_common.RequestId:
|
|
193
|
+
...
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
def cost_report(days: Optional[int] = ...) -> server_common.RequestId:
|
|
197
|
+
...
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
def storage_ls() -> server_common.RequestId:
|
|
201
|
+
...
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
def storage_delete(name: str) -> server_common.RequestId:
|
|
205
|
+
...
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
def local_up(gpus: bool,
|
|
209
|
+
ips: Optional[List[str]],
|
|
210
|
+
ssh_user: Optional[str],
|
|
211
|
+
ssh_key: Optional[str],
|
|
212
|
+
cleanup: bool,
|
|
213
|
+
context_name: Optional[str] = ...,
|
|
214
|
+
password: Optional[str] = ...) -> server_common.RequestId:
|
|
215
|
+
...
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
def local_down() -> server_common.RequestId:
|
|
219
|
+
...
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
def ssh_up(infra: Optional[str] = ...,
|
|
223
|
+
file: Optional[str] = ...) -> server_common.RequestId:
|
|
224
|
+
...
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
def ssh_down(infra: Optional[str] = ...) -> server_common.RequestId:
|
|
228
|
+
...
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
def realtime_kubernetes_gpu_availability(
|
|
232
|
+
context: Optional[str] = ...,
|
|
233
|
+
name_filter: Optional[str] = ...,
|
|
234
|
+
quantity_filter: Optional[int] = ...,
|
|
235
|
+
is_ssh: Optional[bool] = ...) -> server_common.RequestId:
|
|
236
|
+
...
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
def kubernetes_node_info(
|
|
240
|
+
context: Optional[str] = ...) -> server_common.RequestId:
|
|
241
|
+
...
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
def status_kubernetes() -> server_common.RequestId:
|
|
245
|
+
...
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
def get(request_id: str) -> Any:
|
|
249
|
+
...
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
def stream_and_get(request_id: Optional[str] = ...,
|
|
253
|
+
log_path: Optional[str] = ...,
|
|
254
|
+
tail: Optional[int] = ...,
|
|
255
|
+
follow: bool = ...,
|
|
256
|
+
output_stream: Optional['io.TextIOBase'] = ...) -> Any:
|
|
257
|
+
...
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
def api_cancel(request_ids: Optional[Union[str, List[str]]] = ...,
|
|
261
|
+
all_users: bool = ...,
|
|
262
|
+
silent: bool = ...) -> server_common.RequestId:
|
|
263
|
+
...
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
def api_status(request_ids: Optional[List[str]] = ...,
|
|
267
|
+
all_status: bool = ...) -> List[payloads.RequestPayload]:
|
|
268
|
+
...
|
|
269
|
+
|
|
270
|
+
|
|
271
|
+
def api_info() -> Dict[str, Any]:
|
|
272
|
+
...
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+
def api_start(*,
|
|
276
|
+
deploy: bool = ...,
|
|
277
|
+
host: str = ...,
|
|
278
|
+
foreground: bool = ...,
|
|
279
|
+
metrics: bool = ...,
|
|
280
|
+
metrics_port: Optional[int] = ...,
|
|
281
|
+
enable_basic_auth: bool = ...) -> None:
|
|
282
|
+
...
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
def api_stop() -> None:
|
|
286
|
+
...
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
def api_server_logs(follow: bool = ..., tail: Optional[int] = ...) -> None:
|
|
290
|
+
...
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
def api_login(endpoint: Optional[str] = ...,
|
|
294
|
+
relogin: bool = ...,
|
|
295
|
+
service_account_token: Optional[str] = ...) -> None:
|
|
296
|
+
...
|
|
@@ -107,19 +107,13 @@ class OCIConfig:
|
|
|
107
107
|
# Allow task(cluster)-specific compartment/VCN parameters.
|
|
108
108
|
default_compartment_ocid = skypilot_config.get_effective_region_config(
|
|
109
109
|
cloud='oci',
|
|
110
|
-
region=
|
|
111
|
-
keys=(
|
|
112
|
-
'default',
|
|
113
|
-
'compartment_ocid',
|
|
114
|
-
),
|
|
110
|
+
region='default',
|
|
111
|
+
keys=('compartment_ocid',),
|
|
115
112
|
default_value=None)
|
|
116
113
|
compartment = skypilot_config.get_effective_region_config(
|
|
117
114
|
cloud='oci',
|
|
118
|
-
region=
|
|
119
|
-
keys=(
|
|
120
|
-
region,
|
|
121
|
-
'compartment_ocid',
|
|
122
|
-
),
|
|
115
|
+
region=region,
|
|
116
|
+
keys=('compartment_ocid',),
|
|
123
117
|
default_value=default_compartment_ocid)
|
|
124
118
|
return compartment
|
|
125
119
|
|
|
@@ -127,11 +121,8 @@ class OCIConfig:
|
|
|
127
121
|
def get_vcn_ocid(cls, region):
|
|
128
122
|
# Will reuse the regional VCN if specified.
|
|
129
123
|
vcn = skypilot_config.get_effective_region_config(cloud='oci',
|
|
130
|
-
region=
|
|
131
|
-
keys=(
|
|
132
|
-
region,
|
|
133
|
-
'vcn_ocid',
|
|
134
|
-
),
|
|
124
|
+
region=region,
|
|
125
|
+
keys=('vcn_ocid',),
|
|
135
126
|
default_value=None)
|
|
136
127
|
return vcn
|
|
137
128
|
|
|
@@ -139,11 +130,8 @@ class OCIConfig:
|
|
|
139
130
|
def get_vcn_subnet(cls, region):
|
|
140
131
|
# Will reuse the subnet if specified.
|
|
141
132
|
vcn = skypilot_config.get_effective_region_config(cloud='oci',
|
|
142
|
-
region=
|
|
143
|
-
keys=(
|
|
144
|
-
region,
|
|
145
|
-
'vcn_subnet',
|
|
146
|
-
),
|
|
133
|
+
region=region,
|
|
134
|
+
keys=('vcn_subnet',),
|
|
147
135
|
default_value=None)
|
|
148
136
|
return vcn
|
|
149
137
|
|
|
@@ -155,11 +143,8 @@ class OCIConfig:
|
|
|
155
143
|
# last)
|
|
156
144
|
return skypilot_config.get_effective_region_config(
|
|
157
145
|
cloud='oci',
|
|
158
|
-
region=
|
|
159
|
-
keys=(
|
|
160
|
-
'default',
|
|
161
|
-
'image_tag_gpu',
|
|
162
|
-
),
|
|
146
|
+
region='default',
|
|
147
|
+
keys=('image_tag_gpu',),
|
|
163
148
|
default_value='skypilot:gpu-ubuntu-2204')
|
|
164
149
|
|
|
165
150
|
@classmethod
|
|
@@ -169,11 +154,8 @@ class OCIConfig:
|
|
|
169
154
|
# specified, use the hardcode one at last)
|
|
170
155
|
return skypilot_config.get_effective_region_config(
|
|
171
156
|
cloud='oci',
|
|
172
|
-
region=
|
|
173
|
-
keys=(
|
|
174
|
-
'default',
|
|
175
|
-
'image_tag_general',
|
|
176
|
-
),
|
|
157
|
+
region='default',
|
|
158
|
+
keys=('image_tag_general',),
|
|
177
159
|
default_value='skypilot:cpu-ubuntu-2204')
|
|
178
160
|
|
|
179
161
|
@classmethod
|
|
@@ -190,11 +172,8 @@ class OCIConfig:
|
|
|
190
172
|
def get_profile(cls) -> str:
|
|
191
173
|
return skypilot_config.get_effective_region_config(
|
|
192
174
|
cloud='oci',
|
|
193
|
-
region=
|
|
194
|
-
keys=(
|
|
195
|
-
'default',
|
|
196
|
-
'oci_config_profile',
|
|
197
|
-
),
|
|
175
|
+
region='default',
|
|
176
|
+
keys=('oci_config_profile',),
|
|
198
177
|
default_value='DEFAULT')
|
|
199
178
|
|
|
200
179
|
@classmethod
|
|
@@ -204,11 +183,8 @@ class OCIConfig:
|
|
|
204
183
|
# specified, use the hardcode one at last)
|
|
205
184
|
return skypilot_config.get_effective_region_config(
|
|
206
185
|
cloud='oci',
|
|
207
|
-
region=
|
|
208
|
-
keys=(
|
|
209
|
-
'default',
|
|
210
|
-
'image_os_type',
|
|
211
|
-
),
|
|
186
|
+
region='default',
|
|
187
|
+
keys=('image_os_type',),
|
|
212
188
|
default_value='ubuntu')
|
|
213
189
|
|
|
214
190
|
|
{skypilot_nightly-1.0.0.dev20250723 → skypilot_nightly-1.0.0.dev20250725}/sky/dashboard/out/404.html
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/b3227360726f12eb.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/b3227360726f12eb.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-a305898dc479711e.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-da491665d4289aae.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_error-c72a1f77a3c0be1b.js" defer=""></script><script src="/dashboard/_next/static/
|
|
1
|
+
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/dashboard/_next/static/css/b3227360726f12eb.css" as="style"/><link rel="stylesheet" href="/dashboard/_next/static/css/b3227360726f12eb.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashboard/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashboard/_next/static/chunks/webpack-a305898dc479711e.js" defer=""></script><script src="/dashboard/_next/static/chunks/framework-efc06c2733009cd3.js" defer=""></script><script src="/dashboard/_next/static/chunks/main-c0a4f1ea606d48d2.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_app-da491665d4289aae.js" defer=""></script><script src="/dashboard/_next/static/chunks/pages/_error-c72a1f77a3c0be1b.js" defer=""></script><script src="/dashboard/_next/static/SiA7c33x_DqO42M373Okd/_buildManifest.js" defer=""></script><script src="/dashboard/_next/static/SiA7c33x_DqO42M373Okd/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"SiA7c33x_DqO42M373Okd","assetPrefix":"/dashboard","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
|