skypilot-nightly 1.0.0.dev20241031__py3-none-any.whl → 1.0.0.dev20241102__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- sky/__init__.py +2 -2
- sky/backends/backend_utils.py +5 -3
- sky/backends/cloud_vm_ray_backend.py +6 -3
- sky/cli.py +24 -2
- sky/clouds/kubernetes.py +2 -2
- sky/clouds/service_catalog/kubernetes_catalog.py +13 -1
- sky/data/storage.py +17 -2
- sky/execution.py +35 -2
- sky/jobs/core.py +5 -0
- sky/skylet/constants.py +4 -6
- {skypilot_nightly-1.0.0.dev20241031.dist-info → skypilot_nightly-1.0.0.dev20241102.dist-info}/METADATA +1 -1
- {skypilot_nightly-1.0.0.dev20241031.dist-info → skypilot_nightly-1.0.0.dev20241102.dist-info}/RECORD +16 -16
- {skypilot_nightly-1.0.0.dev20241031.dist-info → skypilot_nightly-1.0.0.dev20241102.dist-info}/LICENSE +0 -0
- {skypilot_nightly-1.0.0.dev20241031.dist-info → skypilot_nightly-1.0.0.dev20241102.dist-info}/WHEEL +0 -0
- {skypilot_nightly-1.0.0.dev20241031.dist-info → skypilot_nightly-1.0.0.dev20241102.dist-info}/entry_points.txt +0 -0
- {skypilot_nightly-1.0.0.dev20241031.dist-info → skypilot_nightly-1.0.0.dev20241102.dist-info}/top_level.txt +0 -0
sky/__init__.py
CHANGED
@@ -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 = '0f0008d41ecf4919b169541fb86a4ec60d1485ab'
|
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.dev20241102'
|
39
39
|
__root_dir__ = os.path.dirname(os.path.abspath(__file__))
|
40
40
|
|
41
41
|
|
sky/backends/backend_utils.py
CHANGED
@@ -2498,10 +2498,12 @@ def get_task_resources_str(task: 'task_lib.Task',
|
|
2498
2498
|
the accelerator demands (if any). Otherwise, the CPU demand is shown.
|
2499
2499
|
"""
|
2500
2500
|
spot_str = ''
|
2501
|
+
is_controller_task = task.is_controller_task()
|
2501
2502
|
task_cpu_demand = (str(constants.CONTROLLER_PROCESS_CPU_DEMAND)
|
2502
|
-
if
|
2503
|
-
|
2504
|
-
|
2503
|
+
if is_controller_task else str(DEFAULT_TASK_CPU_DEMAND))
|
2504
|
+
if is_controller_task:
|
2505
|
+
resources_str = f'CPU:{task_cpu_demand}'
|
2506
|
+
elif task.best_resources is not None:
|
2505
2507
|
accelerator_dict = task.best_resources.accelerators
|
2506
2508
|
if is_managed_job:
|
2507
2509
|
if task.best_resources.use_spot:
|
@@ -2114,8 +2114,11 @@ class CloudVmRayResourceHandle(backends.backend.ResourceHandle):
|
|
2114
2114
|
self._version = self._VERSION
|
2115
2115
|
self.cluster_name = cluster_name
|
2116
2116
|
self.cluster_name_on_cloud = cluster_name_on_cloud
|
2117
|
-
|
2118
|
-
|
2117
|
+
# Replace the home directory with ~ for better robustness across systems
|
2118
|
+
# with different home directories.
|
2119
|
+
if cluster_yaml.startswith(os.path.expanduser('~')):
|
2120
|
+
cluster_yaml = cluster_yaml.replace(os.path.expanduser('~'), '~', 1)
|
2121
|
+
self._cluster_yaml = cluster_yaml
|
2119
2122
|
# List of (internal_ip, feasible_ip) tuples for all the nodes in the
|
2120
2123
|
# cluster, sorted by the feasible ips. The feasible ips can be either
|
2121
2124
|
# internal or external ips, depending on the use_internal_ips flag.
|
@@ -2705,7 +2708,7 @@ class CloudVmRayBackend(backends.Backend['CloudVmRayResourceHandle']):
|
|
2705
2708
|
(e.g., cluster name invalid) or a region/zone throwing
|
2706
2709
|
resource unavailability.
|
2707
2710
|
exceptions.CommandError: any ssh command error.
|
2708
|
-
|
2711
|
+
RuntimeError: raised when 'rsync' is not installed.
|
2709
2712
|
# TODO(zhwu): complete the list of exceptions.
|
2710
2713
|
"""
|
2711
2714
|
# FIXME: ray up for Azure with different cluster_names will overwrite
|
sky/cli.py
CHANGED
@@ -555,6 +555,7 @@ def _launch_with_confirm(
|
|
555
555
|
retry_until_up: bool = False,
|
556
556
|
no_setup: bool = False,
|
557
557
|
clone_disk_from: Optional[str] = None,
|
558
|
+
fast: bool = False,
|
558
559
|
):
|
559
560
|
"""Launch a cluster with a Task."""
|
560
561
|
if cluster is None:
|
@@ -619,6 +620,7 @@ def _launch_with_confirm(
|
|
619
620
|
retry_until_up=retry_until_up,
|
620
621
|
no_setup=no_setup,
|
621
622
|
clone_disk_from=clone_disk_from,
|
623
|
+
fast=fast,
|
622
624
|
)
|
623
625
|
|
624
626
|
|
@@ -1040,6 +1042,13 @@ def cli():
|
|
1040
1042
|
help=('[Experimental] Clone disk from an existing cluster to launch '
|
1041
1043
|
'a new one. This is useful when the new cluster needs to have '
|
1042
1044
|
'the same data on the boot disk as an existing cluster.'))
|
1045
|
+
@click.option(
|
1046
|
+
'--fast',
|
1047
|
+
is_flag=True,
|
1048
|
+
default=False,
|
1049
|
+
required=False,
|
1050
|
+
help=('[Experimental] If the cluster is already up and available, skip '
|
1051
|
+
'provisioning and setup steps.'))
|
1043
1052
|
@usage_lib.entrypoint
|
1044
1053
|
def launch(
|
1045
1054
|
entrypoint: Tuple[str, ...],
|
@@ -1071,6 +1080,7 @@ def launch(
|
|
1071
1080
|
yes: bool,
|
1072
1081
|
no_setup: bool,
|
1073
1082
|
clone_disk_from: Optional[str],
|
1083
|
+
fast: bool,
|
1074
1084
|
):
|
1075
1085
|
"""Launch a cluster or task.
|
1076
1086
|
|
@@ -1139,7 +1149,8 @@ def launch(
|
|
1139
1149
|
down=down,
|
1140
1150
|
retry_until_up=retry_until_up,
|
1141
1151
|
no_setup=no_setup,
|
1142
|
-
clone_disk_from=clone_disk_from
|
1152
|
+
clone_disk_from=clone_disk_from,
|
1153
|
+
fast=fast)
|
1143
1154
|
|
1144
1155
|
|
1145
1156
|
@cli.command(cls=_DocumentedCodeCommand)
|
@@ -3549,6 +3560,15 @@ def jobs():
|
|
3549
3560
|
default=False,
|
3550
3561
|
required=False,
|
3551
3562
|
help='Skip confirmation prompt.')
|
3563
|
+
# TODO(cooperc): remove this flag once --fast can robustly detect cluster
|
3564
|
+
# yaml config changes
|
3565
|
+
@click.option('--fast',
|
3566
|
+
default=False,
|
3567
|
+
is_flag=True,
|
3568
|
+
help='[Experimental] Launch the job faster by skipping '
|
3569
|
+
'controller initialization steps. If you update SkyPilot or '
|
3570
|
+
'your local cloud credentials, they will not be reflected until '
|
3571
|
+
'you run `sky jobs launch` at least once without this flag.')
|
3552
3572
|
@timeline.event
|
3553
3573
|
@usage_lib.entrypoint
|
3554
3574
|
def jobs_launch(
|
@@ -3575,6 +3595,7 @@ def jobs_launch(
|
|
3575
3595
|
detach_run: bool,
|
3576
3596
|
retry_until_up: bool,
|
3577
3597
|
yes: bool,
|
3598
|
+
fast: bool,
|
3578
3599
|
):
|
3579
3600
|
"""Launch a managed job from a YAML or a command.
|
3580
3601
|
|
@@ -3658,7 +3679,8 @@ def jobs_launch(
|
|
3658
3679
|
managed_jobs.launch(dag,
|
3659
3680
|
name,
|
3660
3681
|
detach_run=detach_run,
|
3661
|
-
retry_until_up=retry_until_up
|
3682
|
+
retry_until_up=retry_until_up,
|
3683
|
+
fast=fast)
|
3662
3684
|
|
3663
3685
|
|
3664
3686
|
@jobs.command('queue', cls=_DocumentedCodeCommand)
|
sky/clouds/kubernetes.py
CHANGED
@@ -68,8 +68,8 @@ class Kubernetes(clouds.Cloud):
|
|
68
68
|
'Kubernetes.',
|
69
69
|
}
|
70
70
|
|
71
|
-
IMAGE_CPU = 'skypilot:cpu-ubuntu-2004'
|
72
|
-
IMAGE_GPU = 'skypilot:gpu-ubuntu-2004'
|
71
|
+
IMAGE_CPU = 'skypilot:custom-cpu-ubuntu-2004'
|
72
|
+
IMAGE_GPU = 'skypilot:custom-gpu-ubuntu-2004'
|
73
73
|
|
74
74
|
PROVISIONER_VERSION = clouds.ProvisionerVersion.SKYPILOT
|
75
75
|
STATUS_VERSION = clouds.StatusVersion.SKYPILOT
|
@@ -8,12 +8,15 @@ import typing
|
|
8
8
|
from typing import Dict, List, Optional, Set, Tuple
|
9
9
|
|
10
10
|
from sky import check as sky_check
|
11
|
+
from sky import sky_logging
|
11
12
|
from sky.adaptors import common as adaptors_common
|
12
13
|
from sky.clouds import Kubernetes
|
13
14
|
from sky.clouds.service_catalog import CloudFilter
|
14
15
|
from sky.clouds.service_catalog import common
|
15
16
|
from sky.provision.kubernetes import utils as kubernetes_utils
|
16
17
|
|
18
|
+
logger = sky_logging.init_logger(__name__)
|
19
|
+
|
17
20
|
if typing.TYPE_CHECKING:
|
18
21
|
import pandas as pd
|
19
22
|
else:
|
@@ -31,7 +34,16 @@ _image_df = common.read_catalog('kubernetes/images.csv',
|
|
31
34
|
|
32
35
|
def get_image_id_from_tag(tag: str, region: Optional[str]) -> Optional[str]:
|
33
36
|
"""Returns the image id from the tag."""
|
34
|
-
|
37
|
+
global _image_df
|
38
|
+
image_id = common.get_image_id_from_tag_impl(_image_df, tag, region)
|
39
|
+
if image_id is None:
|
40
|
+
# Refresh the image catalog and try again, if the image tag is not
|
41
|
+
# found.
|
42
|
+
logger.debug('Refreshing the image catalog and trying again.')
|
43
|
+
_image_df = common.read_catalog('kubernetes/images.csv',
|
44
|
+
pull_frequency_hours=0)
|
45
|
+
image_id = common.get_image_id_from_tag_impl(_image_df, tag, region)
|
46
|
+
return image_id
|
35
47
|
|
36
48
|
|
37
49
|
def is_image_tag_valid(tag: str, region: Optional[str]) -> bool:
|
sky/data/storage.py
CHANGED
@@ -1082,16 +1082,31 @@ class S3Store(AbstractStore):
|
|
1082
1082
|
for S3 buckets.
|
1083
1083
|
"""
|
1084
1084
|
|
1085
|
+
_DEFAULT_REGION = 'us-east-1'
|
1085
1086
|
_ACCESS_DENIED_MESSAGE = 'Access Denied'
|
1087
|
+
_CUSTOM_ENDPOINT_REGIONS = [
|
1088
|
+
'ap-east-1', 'me-south-1', 'af-south-1', 'eu-south-1', 'eu-south-2',
|
1089
|
+
'ap-south-2', 'ap-southeast-3', 'ap-southeast-4', 'me-central-1',
|
1090
|
+
'il-central-1'
|
1091
|
+
]
|
1086
1092
|
|
1087
1093
|
def __init__(self,
|
1088
1094
|
name: str,
|
1089
1095
|
source: str,
|
1090
|
-
region: Optional[str] =
|
1096
|
+
region: Optional[str] = _DEFAULT_REGION,
|
1091
1097
|
is_sky_managed: Optional[bool] = None,
|
1092
1098
|
sync_on_reconstruction: bool = True):
|
1093
1099
|
self.client: 'boto3.client.Client'
|
1094
1100
|
self.bucket: 'StorageHandle'
|
1101
|
+
# TODO(romilb): This is purely a stopgap fix for
|
1102
|
+
# https://github.com/skypilot-org/skypilot/issues/3405
|
1103
|
+
# We should eventually make all opt-in regions also work for S3 by
|
1104
|
+
# passing the right endpoint flags.
|
1105
|
+
if region in self._CUSTOM_ENDPOINT_REGIONS:
|
1106
|
+
logger.warning('AWS opt-in regions are not supported for S3. '
|
1107
|
+
f'Falling back to default region '
|
1108
|
+
f'{self._DEFAULT_REGION} for bucket {name!r}.')
|
1109
|
+
region = self._DEFAULT_REGION
|
1095
1110
|
super().__init__(name, source, region, is_sky_managed,
|
1096
1111
|
sync_on_reconstruction)
|
1097
1112
|
|
@@ -1424,7 +1439,7 @@ class S3Store(AbstractStore):
|
|
1424
1439
|
|
1425
1440
|
def _create_s3_bucket(self,
|
1426
1441
|
bucket_name: str,
|
1427
|
-
region=
|
1442
|
+
region=_DEFAULT_REGION) -> StorageHandle:
|
1428
1443
|
"""Creates S3 bucket with specific name in specific region
|
1429
1444
|
|
1430
1445
|
Args:
|
sky/execution.py
CHANGED
@@ -11,6 +11,7 @@ import sky
|
|
11
11
|
from sky import admin_policy
|
12
12
|
from sky import backends
|
13
13
|
from sky import clouds
|
14
|
+
from sky import exceptions
|
14
15
|
from sky import global_user_state
|
15
16
|
from sky import optimizer
|
16
17
|
from sky import sky_logging
|
@@ -216,7 +217,8 @@ def _execute(
|
|
216
217
|
'(after all jobs finish).'
|
217
218
|
f'{colorama.Style.RESET_ALL}')
|
218
219
|
idle_minutes_to_autostop = 1
|
219
|
-
|
220
|
+
if Stage.DOWN in stages:
|
221
|
+
stages.remove(Stage.DOWN)
|
220
222
|
if idle_minutes_to_autostop >= 0:
|
221
223
|
requested_features.add(
|
222
224
|
clouds.CloudImplementationFeatures.AUTO_TERMINATE)
|
@@ -355,6 +357,7 @@ def launch(
|
|
355
357
|
detach_run: bool = False,
|
356
358
|
no_setup: bool = False,
|
357
359
|
clone_disk_from: Optional[str] = None,
|
360
|
+
fast: bool = False,
|
358
361
|
# Internal only:
|
359
362
|
# pylint: disable=invalid-name
|
360
363
|
_is_launched_by_jobs_controller: bool = False,
|
@@ -409,6 +412,8 @@ def launch(
|
|
409
412
|
clone_disk_from: [Experimental] if set, clone the disk from the
|
410
413
|
specified cluster. This is useful to migrate the cluster to a
|
411
414
|
different availability zone or region.
|
415
|
+
fast: [Experimental] If the cluster is already up and available,
|
416
|
+
skip provisioning and setup steps.
|
412
417
|
|
413
418
|
Example:
|
414
419
|
.. code-block:: python
|
@@ -452,15 +457,43 @@ def launch(
|
|
452
457
|
controller_utils.check_cluster_name_not_controller(
|
453
458
|
cluster_name, operation_str='sky.launch')
|
454
459
|
|
460
|
+
handle = None
|
461
|
+
stages = None
|
462
|
+
# Check if cluster exists and we are doing fast provisioning
|
463
|
+
if fast and cluster_name is not None:
|
464
|
+
maybe_handle = global_user_state.get_handle_from_cluster_name(
|
465
|
+
cluster_name)
|
466
|
+
if maybe_handle is not None:
|
467
|
+
try:
|
468
|
+
# This will throw if the cluster is not available
|
469
|
+
backend_utils.check_cluster_available(
|
470
|
+
cluster_name,
|
471
|
+
operation='executing tasks',
|
472
|
+
check_cloud_vm_ray_backend=False,
|
473
|
+
dryrun=dryrun)
|
474
|
+
handle = maybe_handle
|
475
|
+
# Get all stages
|
476
|
+
stages = [
|
477
|
+
Stage.SYNC_WORKDIR,
|
478
|
+
Stage.SYNC_FILE_MOUNTS,
|
479
|
+
Stage.PRE_EXEC,
|
480
|
+
Stage.EXEC,
|
481
|
+
Stage.DOWN,
|
482
|
+
]
|
483
|
+
except exceptions.ClusterNotUpError:
|
484
|
+
# Proceed with normal provisioning
|
485
|
+
pass
|
486
|
+
|
455
487
|
return _execute(
|
456
488
|
entrypoint=entrypoint,
|
457
489
|
dryrun=dryrun,
|
458
490
|
down=down,
|
459
491
|
stream_logs=stream_logs,
|
460
|
-
handle=
|
492
|
+
handle=handle,
|
461
493
|
backend=backend,
|
462
494
|
retry_until_up=retry_until_up,
|
463
495
|
optimize_target=optimize_target,
|
496
|
+
stages=stages,
|
464
497
|
cluster_name=cluster_name,
|
465
498
|
detach_setup=detach_setup,
|
466
499
|
detach_run=detach_run,
|
sky/jobs/core.py
CHANGED
@@ -36,6 +36,7 @@ def launch(
|
|
36
36
|
stream_logs: bool = True,
|
37
37
|
detach_run: bool = False,
|
38
38
|
retry_until_up: bool = False,
|
39
|
+
fast: bool = False,
|
39
40
|
) -> None:
|
40
41
|
# NOTE(dev): Keep the docstring consistent between the Python API and CLI.
|
41
42
|
"""Launch a managed job.
|
@@ -47,6 +48,9 @@ def launch(
|
|
47
48
|
managed job.
|
48
49
|
name: Name of the managed job.
|
49
50
|
detach_run: Whether to detach the run.
|
51
|
+
fast: Whether to use sky.launch(fast=True) for the jobs controller. If
|
52
|
+
True, the SkyPilot wheel and the cloud credentials may not be updated
|
53
|
+
on the jobs controller.
|
50
54
|
|
51
55
|
Raises:
|
52
56
|
ValueError: cluster does not exist. Or, the entrypoint is not a valid
|
@@ -138,6 +142,7 @@ def launch(
|
|
138
142
|
idle_minutes_to_autostop=skylet_constants.
|
139
143
|
CONTROLLER_IDLE_MINUTES_TO_AUTOSTOP,
|
140
144
|
retry_until_up=True,
|
145
|
+
fast=fast,
|
141
146
|
_disable_controller_check=True)
|
142
147
|
|
143
148
|
|
sky/skylet/constants.py
CHANGED
@@ -44,9 +44,6 @@ SKY_PIP_CMD = f'{SKY_PYTHON_CMD} -m pip'
|
|
44
44
|
# We need to add SKY_PYTHON_CMD before ray executable because:
|
45
45
|
# The ray executable is a python script with a header like:
|
46
46
|
# #!/opt/conda/bin/python3
|
47
|
-
# When we create the skypilot-runtime venv, the previously installed ray
|
48
|
-
# executable will be reused (due to --system-site-packages), and that will cause
|
49
|
-
# running ray CLI commands to use the wrong python executable.
|
50
47
|
SKY_RAY_CMD = (f'{SKY_PYTHON_CMD} $([ -s {SKY_RAY_PATH_FILE} ] && '
|
51
48
|
f'cat {SKY_RAY_PATH_FILE} 2> /dev/null || which ray)')
|
52
49
|
# Separate env for SkyPilot runtime dependencies.
|
@@ -152,10 +149,11 @@ CONDA_INSTALLATION_COMMANDS = (
|
|
152
149
|
f'conda create -y -n {SKY_REMOTE_PYTHON_ENV_NAME} python=3.10 && '
|
153
150
|
f'conda activate {SKY_REMOTE_PYTHON_ENV_NAME};'
|
154
151
|
# Create a separate conda environment for SkyPilot dependencies.
|
155
|
-
# We use --system-site-packages to reuse the system site packages to avoid
|
156
|
-
# the overhead of installing the same packages in the new environment.
|
157
152
|
f'[ -d {SKY_REMOTE_PYTHON_ENV} ] || '
|
158
|
-
|
153
|
+
# Do NOT use --system-site-packages here, because if users upgrade any
|
154
|
+
# packages in the base env, they interfere with skypilot dependencies.
|
155
|
+
# Reference: https://github.com/skypilot-org/skypilot/issues/4097
|
156
|
+
f'{SKY_PYTHON_CMD} -m venv {SKY_REMOTE_PYTHON_ENV};'
|
159
157
|
f'echo "$(echo {SKY_REMOTE_PYTHON_ENV})/bin/python" > {SKY_PYTHON_PATH_FILE};'
|
160
158
|
)
|
161
159
|
|
{skypilot_nightly-1.0.0.dev20241031.dist-info → skypilot_nightly-1.0.0.dev20241102.dist-info}/RECORD
RENAMED
@@ -1,13 +1,13 @@
|
|
1
|
-
sky/__init__.py,sha256=
|
1
|
+
sky/__init__.py,sha256=aOxCazxHV9rPb5LBm0plmD8tAmQlR-0Xe673dLUyczY,5882
|
2
2
|
sky/admin_policy.py,sha256=hPo02f_A32gCqhUueF0QYy1fMSSKqRwYEg_9FxScN_s,3248
|
3
3
|
sky/authentication.py,sha256=pAdCT60OxxiXI9KXDyP2lQ9u9vMc6aMtq5Xi2h_hbdw,20984
|
4
4
|
sky/check.py,sha256=D3Y3saIFAYVvPxuBHnVgJEO0fUVDxgjwuMBaO-D778k,9472
|
5
|
-
sky/cli.py,sha256=
|
5
|
+
sky/cli.py,sha256=6umPcFovU5sHIUdC0B9lfOstzWLA0DPS5x6dg1EOkeQ,211193
|
6
6
|
sky/cloud_stores.py,sha256=RjFgmRhUh1Kk__f6g3KxzLp9s7dA0pFK4W1AukEuUaw,21153
|
7
7
|
sky/core.py,sha256=DW9OGE2kS2CmsvQ1grrpRnNFS3woMGWSHu5GE99e-I4,38190
|
8
8
|
sky/dag.py,sha256=WLFWr5hfrwjd31uYlNvI-zWUk7tLaT_gzJn4LzbVtkE,2780
|
9
9
|
sky/exceptions.py,sha256=KBIEJHgrw6OMBL8H65o-Gk6qYQEV1SR9gBwMjnMnxxg,8858
|
10
|
-
sky/execution.py,sha256=
|
10
|
+
sky/execution.py,sha256=HF76sz-gCEZPGkuL48jJaLOTqjuHg0KysgKaPw-hn84,25997
|
11
11
|
sky/global_user_state.py,sha256=PywEmUutF97XBgRMClR6IS5_KM8JJC0oA1LsPUZebp0,28681
|
12
12
|
sky/optimizer.py,sha256=tXGrFpc6xNtKH34qjBAMd4jTuWcDZTPnGFwEtuCQFmk,59702
|
13
13
|
sky/resources.py,sha256=Zt8mCCmdvZ5ZCqY-l3KXlx_lkUesAopRtaEcEsrRFZo,68465
|
@@ -30,8 +30,8 @@ sky/adaptors/runpod.py,sha256=4Nt_BfZhJAKQNA3wO8cxvvNI8x4NsDGHu_4EhRDlGYQ,225
|
|
30
30
|
sky/adaptors/vsphere.py,sha256=zJP9SeObEoLrpgHW2VHvZE48EhgVf8GfAEIwBeaDMfM,2129
|
31
31
|
sky/backends/__init__.py,sha256=UDjwbUgpTRApbPJnNfR786GadUuwgRk3vsWoVu5RB_c,536
|
32
32
|
sky/backends/backend.py,sha256=wwfbrxPhjMPs6PSyy3tAHI8WJhl-xhgzWBsAZjmJJ6g,6249
|
33
|
-
sky/backends/backend_utils.py,sha256=
|
34
|
-
sky/backends/cloud_vm_ray_backend.py,sha256=
|
33
|
+
sky/backends/backend_utils.py,sha256=2myfryj1zG9xxPaX6XYYJruxAOGNGbpsy2ckT4A77sE,121813
|
34
|
+
sky/backends/cloud_vm_ray_backend.py,sha256=jdG17FDAOUoHjXib2P73Hhdl9yXoDJxPTY5Dyqvp6j4,232757
|
35
35
|
sky/backends/docker_utils.py,sha256=Hyw1YY20EyghhEbYx6O2FIMDcGkNzBzV9TM7LFynei8,8358
|
36
36
|
sky/backends/local_docker_backend.py,sha256=0JL5m0YUgOmOL4aWEUe4tmt89dsxjk4_WXkPwgEKEis,16801
|
37
37
|
sky/backends/wheel_utils.py,sha256=3QS4T_Ydvo4DbYhogtyADyNBEf04I6jUCL71M285shQ,7963
|
@@ -48,7 +48,7 @@ sky/clouds/cudo.py,sha256=UiY273Sln7VOYDYx93yWiWH_RLlOKZ2cm7mA31ld4A8,13094
|
|
48
48
|
sky/clouds/fluidstack.py,sha256=ufve4wXo_VmaEkxqTw2Jnt-DORBDRnqUPU1kB_mD89s,12383
|
49
49
|
sky/clouds/gcp.py,sha256=BjCehW3s0IYkRDdEEDm0vYWXQDpOV8KU98OMVRPnQNg,54676
|
50
50
|
sky/clouds/ibm.py,sha256=w8bo1EIY_YWYNu0fy-OpAyr6DZviU0tpIXUsiV01rVE,21423
|
51
|
-
sky/clouds/kubernetes.py,sha256=
|
51
|
+
sky/clouds/kubernetes.py,sha256=tYjQFatOQmgtRzMt3J54CxM0w2ZPQwAo5SyyYkBcW9Y,28657
|
52
52
|
sky/clouds/lambda_cloud.py,sha256=ExL_uixdFrF9qSL5JYXpaOXCZ9_eOA2q444kcmBHBXQ,12644
|
53
53
|
sky/clouds/oci.py,sha256=sHJrVhUhOKvJ-skbd2ZJ82IR63OXp43krmyPpM8BZqw,27084
|
54
54
|
sky/clouds/paperspace.py,sha256=4cjNua6jpuxmfidvLY4tSRX1oj_QaaHDinPMunGplyU,10868
|
@@ -65,7 +65,7 @@ sky/clouds/service_catalog/cudo_catalog.py,sha256=V_takvL6dWTGQaTLCEvjKIotCDPnMu
|
|
65
65
|
sky/clouds/service_catalog/fluidstack_catalog.py,sha256=21-cvrYEYTIi7n3ZNF2e7_0QX-PF4BkhlVJUWQOvKrY,5059
|
66
66
|
sky/clouds/service_catalog/gcp_catalog.py,sha256=v_5fsB3dB9oD8U7lBKnCe5ii6AUWEOiQjNarMnU_qLA,24379
|
67
67
|
sky/clouds/service_catalog/ibm_catalog.py,sha256=1iK0KvbI82U7sySb7chr-qm_16x3tTnZ6nIo7o76ouc,4493
|
68
|
-
sky/clouds/service_catalog/kubernetes_catalog.py,sha256=
|
68
|
+
sky/clouds/service_catalog/kubernetes_catalog.py,sha256=5ilQ-JK1ZS2EZp8GpCKok0H3S1fdI_aAznzIDWCY1NY,9110
|
69
69
|
sky/clouds/service_catalog/lambda_catalog.py,sha256=2R-ccu63BbdvO6X80MtxiniA-jLewXb6I0Ye1rYD9fY,5302
|
70
70
|
sky/clouds/service_catalog/oci_catalog.py,sha256=DQaP0iQlxZEHWJs862ilynUfUEQDIjCGltS7kSadgYo,8572
|
71
71
|
sky/clouds/service_catalog/paperspace_catalog.py,sha256=MOlfoGRChjEwMzu4nRAho8DrIwwUJ3QlRzrMA1RLqvE,3789
|
@@ -91,12 +91,12 @@ sky/data/__init__.py,sha256=Nhaf1NURisXpZuwWANa2IuCyppIuc720FRwqSE2oEwY,184
|
|
91
91
|
sky/data/data_transfer.py,sha256=MBmjey9_p2L3IKNKTi8um09SlZe32n4wK3CkVnlTVvo,7346
|
92
92
|
sky/data/data_utils.py,sha256=-P5GsDH_m4slrCz4vHdgiFezIys8ufzvhEKePJwfjFc,28597
|
93
93
|
sky/data/mounting_utils.py,sha256=44YkYIIgArEkyvxCtfmXXumybrU8bmn1TfLXWv_eldI,11480
|
94
|
-
sky/data/storage.py,sha256=
|
94
|
+
sky/data/storage.py,sha256=OQ_kznF-P50Jq0feO5FBqm97QGhfbsZ2dX-Ar3sVWr4,163903
|
95
95
|
sky/data/storage_utils.py,sha256=cM3kxlffYE7PnJySDu8huyUsMX_JYsf9uer8r5OYsjo,9556
|
96
96
|
sky/jobs/__init__.py,sha256=yucibSB_ZimtJMvOhMxn6ZqwBIYNfcwmc6pSXtCqmNQ,1483
|
97
97
|
sky/jobs/constants.py,sha256=YLgcCg_RHSYr_rfsI_4UIdXk78KKKOK29Oem88t5j8I,1350
|
98
98
|
sky/jobs/controller.py,sha256=sirpi730_GfKfPZeZ2PvCXnJWger0r6AyLSOx2sLd6A,27368
|
99
|
-
sky/jobs/core.py,sha256=
|
99
|
+
sky/jobs/core.py,sha256=w7PancHi8_-afLKZQ3HHMD1sEDoepm1vEMxyDlXdo64,17155
|
100
100
|
sky/jobs/recovery_strategy.py,sha256=FpPK6e2PT61cZPDUJqIfo6g53uSRTBh7dOTbfR1DLVE,26672
|
101
101
|
sky/jobs/state.py,sha256=exN6BdJlLBzFTccJCSHN4dNjVeYFgTgqgxOaHwLw2IQ,24307
|
102
102
|
sky/jobs/utils.py,sha256=pF4Kyl4v1M_Bmm2jIRlXGTSdII5BJ3f4qwex_oCFgBk,37742
|
@@ -190,7 +190,7 @@ sky/skylet/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
190
190
|
sky/skylet/attempt_skylet.py,sha256=GZ6ITjjA0m-da3IxXXfoHR6n4pjp3X3TOXUqVvSrV0k,2136
|
191
191
|
sky/skylet/autostop_lib.py,sha256=JPDHmByuhoNYXSUHl-OnyeJUkOFWn7gDM1FrS7Kr3E8,4478
|
192
192
|
sky/skylet/configs.py,sha256=UtnpmEL0F9hH6PSjhsps7xgjGZ6qzPOfW1p2yj9tSng,1887
|
193
|
-
sky/skylet/constants.py,sha256=
|
193
|
+
sky/skylet/constants.py,sha256=TL-O0ZoxA1ZeNvKXzzA_UyIMXsma7flbsDZ1N_o9dKg,14468
|
194
194
|
sky/skylet/events.py,sha256=A09E7LmmwzcGrSG0n8K7d3EZ1ZJr1mmmzoGyhnArYJA,12303
|
195
195
|
sky/skylet/job_lib.py,sha256=jqJ4D3UeG6fNMm8xPtdWclnrVHQb6WiRqb1nrBp8TPg,35200
|
196
196
|
sky/skylet/log_lib.py,sha256=Jyj3h2yMBlheFX53AabXEiPaKyCbu06hLEhay5_ZRN0,18734
|
@@ -274,9 +274,9 @@ sky/utils/kubernetes/k8s_gpu_labeler_job.yaml,sha256=k0TBoQ4zgf79-sVkixKSGYFHQ7Z
|
|
274
274
|
sky/utils/kubernetes/k8s_gpu_labeler_setup.yaml,sha256=VLKT2KKimZu1GDg_4AIlIt488oMQvhRZWwsj9vBbPUg,3812
|
275
275
|
sky/utils/kubernetes/rsync_helper.sh,sha256=hyYDaYSNxYaNvzUQBzC8AidB7nDeojizjkzc_CTxycY,1077
|
276
276
|
sky/utils/kubernetes/ssh_jump_lifecycle_manager.py,sha256=RFLJ3k7MR5UN4SKHykQ0lV9SgXumoULpKYIAt1vh-HU,6560
|
277
|
-
skypilot_nightly-1.0.0.
|
278
|
-
skypilot_nightly-1.0.0.
|
279
|
-
skypilot_nightly-1.0.0.
|
280
|
-
skypilot_nightly-1.0.0.
|
281
|
-
skypilot_nightly-1.0.0.
|
282
|
-
skypilot_nightly-1.0.0.
|
277
|
+
skypilot_nightly-1.0.0.dev20241102.dist-info/LICENSE,sha256=emRJAvE7ngL6x0RhQvlns5wJzGI3NEQ_WMjNmd9TZc4,12170
|
278
|
+
skypilot_nightly-1.0.0.dev20241102.dist-info/METADATA,sha256=V98bkkCA24YYiiHTX91uImi4WTcYCOEuwlvSAMr7Ors,19708
|
279
|
+
skypilot_nightly-1.0.0.dev20241102.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
|
280
|
+
skypilot_nightly-1.0.0.dev20241102.dist-info/entry_points.txt,sha256=StA6HYpuHj-Y61L2Ze-hK2IcLWgLZcML5gJu8cs6nU4,36
|
281
|
+
skypilot_nightly-1.0.0.dev20241102.dist-info/top_level.txt,sha256=qA8QuiNNb6Y1OF-pCUtPEr6sLEwy2xJX06Bd_CrtrHY,4
|
282
|
+
skypilot_nightly-1.0.0.dev20241102.dist-info/RECORD,,
|
File without changes
|
{skypilot_nightly-1.0.0.dev20241031.dist-info → skypilot_nightly-1.0.0.dev20241102.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|
File without changes
|