skypilot-nightly 1.0.0.dev20241007__py3-none-any.whl → 1.0.0.dev20241009__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 +14 -10
- sky/backends/cloud_vm_ray_backend.py +2 -2
- sky/data/storage.py +4 -8
- sky/data/storage_utils.py +57 -1
- sky/skylet/constants.py +2 -0
- sky/utils/command_runner.py +21 -18
- sky/utils/command_runner.pyi +2 -1
- {skypilot_nightly-1.0.0.dev20241007.dist-info → skypilot_nightly-1.0.0.dev20241009.dist-info}/METADATA +1 -1
- {skypilot_nightly-1.0.0.dev20241007.dist-info → skypilot_nightly-1.0.0.dev20241009.dist-info}/RECORD +14 -14
- {skypilot_nightly-1.0.0.dev20241007.dist-info → skypilot_nightly-1.0.0.dev20241009.dist-info}/LICENSE +0 -0
- {skypilot_nightly-1.0.0.dev20241007.dist-info → skypilot_nightly-1.0.0.dev20241009.dist-info}/WHEEL +0 -0
- {skypilot_nightly-1.0.0.dev20241007.dist-info → skypilot_nightly-1.0.0.dev20241009.dist-info}/entry_points.txt +0 -0
- {skypilot_nightly-1.0.0.dev20241007.dist-info → skypilot_nightly-1.0.0.dev20241009.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 = '3f898abe10c1aa2a05da0e00f0c6a9a947b53bbc'
|
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.dev20241009'
|
39
39
|
__root_dir__ = os.path.dirname(os.path.abspath(__file__))
|
40
40
|
|
41
41
|
|
sky/backends/backend_utils.py
CHANGED
@@ -280,18 +280,22 @@ def path_size_megabytes(path: str) -> int:
|
|
280
280
|
If successful: the size of 'path' in megabytes, rounded down. Otherwise,
|
281
281
|
-1.
|
282
282
|
"""
|
283
|
-
resolved_path = pathlib.Path(path).expanduser().resolve()
|
284
283
|
git_exclude_filter = ''
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
284
|
+
resolved_path = pathlib.Path(path).expanduser().resolve()
|
285
|
+
if (resolved_path / constants.SKY_IGNORE_FILE).exists():
|
286
|
+
rsync_filter = command_runner.RSYNC_FILTER_SKYIGNORE
|
287
|
+
else:
|
288
|
+
rsync_filter = command_runner.RSYNC_FILTER_GITIGNORE
|
289
|
+
if (resolved_path / command_runner.GIT_EXCLUDE).exists():
|
290
|
+
# Ensure file exists; otherwise, rsync will error out.
|
291
|
+
#
|
292
|
+
# We shlex.quote() because the path may contain spaces:
|
293
|
+
# 'my dir/.git/info/exclude'
|
294
|
+
# Without quoting rsync fails.
|
295
|
+
git_exclude_filter = command_runner.RSYNC_EXCLUDE_OPTION.format(
|
296
|
+
shlex.quote(str(resolved_path / command_runner.GIT_EXCLUDE)))
|
293
297
|
rsync_command = (f'rsync {command_runner.RSYNC_DISPLAY_OPTION} '
|
294
|
-
f'{
|
298
|
+
f'{rsync_filter} '
|
295
299
|
f'{git_exclude_filter} --dry-run {path!r}')
|
296
300
|
rsync_output = ''
|
297
301
|
try:
|
@@ -3056,7 +3056,7 @@ class CloudVmRayBackend(backends.Backend['CloudVmRayResourceHandle']):
|
|
3056
3056
|
logger.warning(
|
3057
3057
|
f'{fore.YELLOW}The size of workdir {workdir!r} '
|
3058
3058
|
f'is {dir_size} MB. Try to keep workdir small or use '
|
3059
|
-
'.
|
3059
|
+
'.skyignore to exclude large files, as large sizes will slow '
|
3060
3060
|
f'down rsync.{style.RESET_ALL}')
|
3061
3061
|
|
3062
3062
|
log_path = os.path.join(self.log_dir, 'workdir_sync.log')
|
@@ -4470,7 +4470,7 @@ class CloudVmRayBackend(backends.Backend['CloudVmRayResourceHandle']):
|
|
4470
4470
|
logger.warning(
|
4471
4471
|
f'{fore.YELLOW}The size of file mount src {src!r} '
|
4472
4472
|
f'is {src_size} MB. Try to keep src small or use '
|
4473
|
-
'.
|
4473
|
+
'.skyignore to exclude large files, as large sizes '
|
4474
4474
|
f'will slow down rsync. {style.RESET_ALL}')
|
4475
4475
|
if os.path.islink(full_src):
|
4476
4476
|
logger.warning(
|
sky/data/storage.py
CHANGED
@@ -1298,8 +1298,7 @@ class S3Store(AbstractStore):
|
|
1298
1298
|
|
1299
1299
|
def get_dir_sync_command(src_dir_path, dest_dir_name):
|
1300
1300
|
# we exclude .git directory from the sync
|
1301
|
-
excluded_list = storage_utils.
|
1302
|
-
src_dir_path)
|
1301
|
+
excluded_list = storage_utils.get_excluded_files(src_dir_path)
|
1303
1302
|
excluded_list.append('.git/*')
|
1304
1303
|
excludes = ' '.join([
|
1305
1304
|
f'--exclude {shlex.quote(file_name)}'
|
@@ -1764,8 +1763,7 @@ class GcsStore(AbstractStore):
|
|
1764
1763
|
return sync_command
|
1765
1764
|
|
1766
1765
|
def get_dir_sync_command(src_dir_path, dest_dir_name):
|
1767
|
-
excluded_list = storage_utils.
|
1768
|
-
src_dir_path)
|
1766
|
+
excluded_list = storage_utils.get_excluded_files(src_dir_path)
|
1769
1767
|
# we exclude .git directory from the sync
|
1770
1768
|
excluded_list.append(r'^\.git/.*$')
|
1771
1769
|
excludes = '|'.join(excluded_list)
|
@@ -2490,8 +2488,7 @@ class AzureBlobStore(AbstractStore):
|
|
2490
2488
|
|
2491
2489
|
def get_dir_sync_command(src_dir_path, dest_dir_name) -> str:
|
2492
2490
|
# we exclude .git directory from the sync
|
2493
|
-
excluded_list = storage_utils.
|
2494
|
-
src_dir_path)
|
2491
|
+
excluded_list = storage_utils.get_excluded_files(src_dir_path)
|
2495
2492
|
excluded_list.append('.git/')
|
2496
2493
|
excludes_list = ';'.join(
|
2497
2494
|
[file_name.rstrip('*') for file_name in excluded_list])
|
@@ -2895,8 +2892,7 @@ class R2Store(AbstractStore):
|
|
2895
2892
|
|
2896
2893
|
def get_dir_sync_command(src_dir_path, dest_dir_name):
|
2897
2894
|
# we exclude .git directory from the sync
|
2898
|
-
excluded_list = storage_utils.
|
2899
|
-
src_dir_path)
|
2895
|
+
excluded_list = storage_utils.get_excluded_files(src_dir_path)
|
2900
2896
|
excluded_list.append('.git/*')
|
2901
2897
|
excludes = ' '.join([
|
2902
2898
|
f'--exclude {shlex.quote(file_name)}'
|
sky/data/storage_utils.py
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
"""Utility functions for the storage module."""
|
2
|
+
import glob
|
2
3
|
import os
|
3
4
|
import shlex
|
4
5
|
import subprocess
|
@@ -8,6 +9,8 @@ import colorama
|
|
8
9
|
|
9
10
|
from sky import exceptions
|
10
11
|
from sky import sky_logging
|
12
|
+
from sky.skylet import constants
|
13
|
+
from sky.utils import common_utils
|
11
14
|
from sky.utils import log_utils
|
12
15
|
from sky.utils.cli_utils import status_utils
|
13
16
|
|
@@ -63,6 +66,42 @@ def format_storage_table(storages: List[Dict[str, Any]],
|
|
63
66
|
return 'No existing storage.'
|
64
67
|
|
65
68
|
|
69
|
+
def get_excluded_files_from_skyignore(src_dir_path: str) -> List[str]:
|
70
|
+
"""List files and patterns ignored by the .skyignore file
|
71
|
+
in the given source directory.
|
72
|
+
"""
|
73
|
+
excluded_list: List[str] = []
|
74
|
+
expand_src_dir_path = os.path.expanduser(src_dir_path)
|
75
|
+
skyignore_path = os.path.join(expand_src_dir_path,
|
76
|
+
constants.SKY_IGNORE_FILE)
|
77
|
+
|
78
|
+
try:
|
79
|
+
with open(skyignore_path, 'r', encoding='utf-8') as f:
|
80
|
+
for line in f:
|
81
|
+
line = line.strip()
|
82
|
+
if line and not line.startswith('#'):
|
83
|
+
# Make parsing consistent with rsync.
|
84
|
+
# Rsync uses '/' as current directory.
|
85
|
+
if line.startswith('/'):
|
86
|
+
line = '.' + line
|
87
|
+
else:
|
88
|
+
line = '**/' + line
|
89
|
+
# Find all files matching the pattern.
|
90
|
+
matching_files = glob.glob(os.path.join(
|
91
|
+
expand_src_dir_path, line),
|
92
|
+
recursive=True)
|
93
|
+
# Process filenames to comply with cloud rsync format.
|
94
|
+
for i in range(len(matching_files)):
|
95
|
+
matching_files[i] = os.path.relpath(
|
96
|
+
matching_files[i], expand_src_dir_path)
|
97
|
+
excluded_list.extend(matching_files)
|
98
|
+
except IOError as e:
|
99
|
+
logger.warning(f'Error reading {skyignore_path}: '
|
100
|
+
f'{common_utils.format_exception(e, use_bracket=True)}')
|
101
|
+
|
102
|
+
return excluded_list
|
103
|
+
|
104
|
+
|
66
105
|
def get_excluded_files_from_gitignore(src_dir_path: str) -> List[str]:
|
67
106
|
""" Lists files and patterns ignored by git in the source directory
|
68
107
|
|
@@ -78,7 +117,8 @@ def get_excluded_files_from_gitignore(src_dir_path: str) -> List[str]:
|
|
78
117
|
expand_src_dir_path = os.path.expanduser(src_dir_path)
|
79
118
|
|
80
119
|
git_exclude_path = os.path.join(expand_src_dir_path, '.git/info/exclude')
|
81
|
-
gitignore_path = os.path.join(expand_src_dir_path,
|
120
|
+
gitignore_path = os.path.join(expand_src_dir_path,
|
121
|
+
constants.GIT_IGNORE_FILE)
|
82
122
|
|
83
123
|
git_exclude_exists = os.path.isfile(git_exclude_path)
|
84
124
|
gitignore_exists = os.path.isfile(gitignore_path)
|
@@ -162,3 +202,19 @@ def get_excluded_files_from_gitignore(src_dir_path: str) -> List[str]:
|
|
162
202
|
to_be_excluded += '*'
|
163
203
|
excluded_list.append(to_be_excluded)
|
164
204
|
return excluded_list
|
205
|
+
|
206
|
+
|
207
|
+
def get_excluded_files(src_dir_path: str) -> List[str]:
|
208
|
+
# TODO: this could return a huge list of files,
|
209
|
+
# should think of ways to optimize.
|
210
|
+
""" List files and directories to be excluded."""
|
211
|
+
expand_src_dir_path = os.path.expanduser(src_dir_path)
|
212
|
+
skyignore_path = os.path.join(expand_src_dir_path,
|
213
|
+
constants.SKY_IGNORE_FILE)
|
214
|
+
if os.path.exists(skyignore_path):
|
215
|
+
logger.info(f'Exclude files to sync to cluster based on '
|
216
|
+
f'{constants.SKY_IGNORE_FILE}.')
|
217
|
+
return get_excluded_files_from_skyignore(src_dir_path)
|
218
|
+
logger.info(f'Exclude files to sync to cluster based on '
|
219
|
+
f'{constants.GIT_IGNORE_FILE}.')
|
220
|
+
return get_excluded_files_from_gitignore(src_dir_path)
|
sky/skylet/constants.py
CHANGED
sky/utils/command_runner.py
CHANGED
@@ -16,8 +16,6 @@ from sky.utils import timeline
|
|
16
16
|
|
17
17
|
logger = sky_logging.init_logger(__name__)
|
18
18
|
|
19
|
-
# The git exclude file to support.
|
20
|
-
GIT_EXCLUDE = '.git/info/exclude'
|
21
19
|
# Rsync options
|
22
20
|
# TODO(zhwu): This will print a per-file progress bar (with -P),
|
23
21
|
# shooting a lot of messages to the output. --info=progress2 is used
|
@@ -30,7 +28,10 @@ RSYNC_DISPLAY_OPTION = '-Pavz'
|
|
30
28
|
# Note that "-" is mandatory for rsync and means all patterns in the ignore
|
31
29
|
# files are treated as *exclude* patterns. Non-exclude patterns, e.g., "!
|
32
30
|
# do_not_exclude" doesn't work, even though git allows it.
|
33
|
-
|
31
|
+
RSYNC_FILTER_SKYIGNORE = f'--filter=\'dir-merge,- {constants.SKY_IGNORE_FILE}\''
|
32
|
+
RSYNC_FILTER_GITIGNORE = f'--filter=\'dir-merge,- {constants.GIT_IGNORE_FILE}\''
|
33
|
+
# The git exclude file to support.
|
34
|
+
GIT_EXCLUDE = '.git/info/exclude'
|
34
35
|
RSYNC_EXCLUDE_OPTION = '--exclude-from={}'
|
35
36
|
|
36
37
|
_HASH_MAX_LENGTH = 10
|
@@ -237,21 +238,23 @@ class CommandRunner:
|
|
237
238
|
rsync_command += ['rsync', RSYNC_DISPLAY_OPTION]
|
238
239
|
|
239
240
|
# --filter
|
240
|
-
|
241
|
-
|
242
|
-
if
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
if
|
247
|
-
#
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
241
|
+
# The source is a local path, so we need to resolve it.
|
242
|
+
resolved_source = pathlib.Path(source).expanduser().resolve()
|
243
|
+
if (resolved_source / constants.SKY_IGNORE_FILE).exists():
|
244
|
+
rsync_command.append(RSYNC_FILTER_SKYIGNORE)
|
245
|
+
else:
|
246
|
+
rsync_command.append(RSYNC_FILTER_GITIGNORE)
|
247
|
+
if up:
|
248
|
+
# Build --exclude-from argument.
|
249
|
+
if (resolved_source / GIT_EXCLUDE).exists():
|
250
|
+
# Ensure file exists; otherwise, rsync will error out.
|
251
|
+
#
|
252
|
+
# We shlex.quote() because the path may contain spaces:
|
253
|
+
# 'my dir/.git/info/exclude'
|
254
|
+
# Without quoting rsync fails.
|
255
|
+
rsync_command.append(
|
256
|
+
RSYNC_EXCLUDE_OPTION.format(
|
257
|
+
shlex.quote(str(resolved_source / GIT_EXCLUDE))))
|
255
258
|
|
256
259
|
rsync_command.append(f'-e {shlex.quote(rsh_option)}')
|
257
260
|
|
sky/utils/command_runner.pyi
CHANGED
@@ -16,7 +16,8 @@ from sky.utils import subprocess_utils as subprocess_utils
|
|
16
16
|
|
17
17
|
GIT_EXCLUDE: str
|
18
18
|
RSYNC_DISPLAY_OPTION: str
|
19
|
-
|
19
|
+
RSYNC_FILTER_GITIGNORE: str
|
20
|
+
RSYNC_FILTER_SKYIGNORE: str
|
20
21
|
RSYNC_EXCLUDE_OPTION: str
|
21
22
|
ALIAS_SUDO_TO_EMPTY_FOR_ROOT_CMD: str
|
22
23
|
|
{skypilot_nightly-1.0.0.dev20241007.dist-info → skypilot_nightly-1.0.0.dev20241009.dist-info}/RECORD
RENAMED
@@ -1,4 +1,4 @@
|
|
1
|
-
sky/__init__.py,sha256=
|
1
|
+
sky/__init__.py,sha256=1e_mgENvJTAmIsZ3wbk1WTYw3RkRhJG69lVTJJGScpU,5854
|
2
2
|
sky/admin_policy.py,sha256=hPo02f_A32gCqhUueF0QYy1fMSSKqRwYEg_9FxScN_s,3248
|
3
3
|
sky/authentication.py,sha256=TfKkVnmRIetATSEVQFp-rOOIRGqVig2i8faSQQt_ixA,20974
|
4
4
|
sky/check.py,sha256=jLMIIJrseaZj1_o5WkbaD9XdyXIlCaT6pyAaIFdhdmA,9079
|
@@ -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=xtxR6boDv1o-uSCjbJhOMkKMnZvBZh3gExx4khFWPTI,5932
|
33
|
-
sky/backends/backend_utils.py,sha256=
|
34
|
-
sky/backends/cloud_vm_ray_backend.py,sha256=
|
33
|
+
sky/backends/backend_utils.py,sha256=_gp6nL4evexSoXUWdA4rI7mJ2XQt59bYQ0LRAD5QuKI,126826
|
34
|
+
sky/backends/cloud_vm_ray_backend.py,sha256=NUT8bp-mifTLGzZFsA9kXqFPue4ZhbX-5pX55evdeXI,233984
|
35
35
|
sky/backends/docker_utils.py,sha256=Hyw1YY20EyghhEbYx6O2FIMDcGkNzBzV9TM7LFynei8,8358
|
36
36
|
sky/backends/local_docker_backend.py,sha256=H4GBo0KFUC_EEf-ziv1OUbfAkOI5BrwkYs9fYOxSoNw,16741
|
37
37
|
sky/backends/wheel_utils.py,sha256=3QS4T_Ydvo4DbYhogtyADyNBEf04I6jUCL71M285shQ,7963
|
@@ -91,8 +91,8 @@ 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=
|
95
|
-
sky/data/storage_utils.py,sha256
|
94
|
+
sky/data/storage.py,sha256=SzO2GefxfoYbKuWO4iRt_9At33s--k4q8htN8xy-vrM,162395
|
95
|
+
sky/data/storage_utils.py,sha256=Rwj_Pt2Pl0e16dhHXyxiT500CYv1k7SWE_WE2jKepl0,9358
|
96
96
|
sky/jobs/__init__.py,sha256=9cqFutVlfjQb7t8hzG-ZlQmMlbmfMirn0KNBxIFnJYQ,1398
|
97
97
|
sky/jobs/constants.py,sha256=YLgcCg_RHSYr_rfsI_4UIdXk78KKKOK29Oem88t5j8I,1350
|
98
98
|
sky/jobs/controller.py,sha256=k28bbicxtML6p1YxSetk-1nhBHPCubpvLWJsh7TtU9c,26701
|
@@ -187,7 +187,7 @@ sky/skylet/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
187
187
|
sky/skylet/attempt_skylet.py,sha256=GZ6ITjjA0m-da3IxXXfoHR6n4pjp3X3TOXUqVvSrV0k,2136
|
188
188
|
sky/skylet/autostop_lib.py,sha256=JPDHmByuhoNYXSUHl-OnyeJUkOFWn7gDM1FrS7Kr3E8,4478
|
189
189
|
sky/skylet/configs.py,sha256=UtnpmEL0F9hH6PSjhsps7xgjGZ6qzPOfW1p2yj9tSng,1887
|
190
|
-
sky/skylet/constants.py,sha256=
|
190
|
+
sky/skylet/constants.py,sha256=txAK0602kGtaD42JUYECq5u4rLIZFhOIWz-fLUV1KgA,14652
|
191
191
|
sky/skylet/events.py,sha256=A09E7LmmwzcGrSG0n8K7d3EZ1ZJr1mmmzoGyhnArYJA,12303
|
192
192
|
sky/skylet/job_lib.py,sha256=1XTXLStPiHk8X2SHe6x4PNQ01Rj6Cwagr5lLWjzpj6E,35198
|
193
193
|
sky/skylet/log_lib.py,sha256=5akG6avIW5y9rO5pfgOCEtprPgasEo4vAj7I8Bbhxm4,19340
|
@@ -244,8 +244,8 @@ sky/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
244
244
|
sky/utils/accelerator_registry.py,sha256=BO4iYH5bV80Xyp4EPfO0n1D3LL0FvESCy7xm59Je3_o,3798
|
245
245
|
sky/utils/admin_policy_utils.py,sha256=zFCu1OFIrZRfQNY0JFRO1502WFfdqZhwAU_QgM4fO9U,5943
|
246
246
|
sky/utils/cluster_yaml_utils.py,sha256=1wRRYqI1kI-eFs1pMW4r_FFjHJ0zamq6v2RRI-Gtx5E,849
|
247
|
-
sky/utils/command_runner.py,sha256=
|
248
|
-
sky/utils/command_runner.pyi,sha256=
|
247
|
+
sky/utils/command_runner.py,sha256=9h2t1v6SpMv7ahsLyayE-Tm8TxgWEpCUJ9qiTw_VHtc,34142
|
248
|
+
sky/utils/command_runner.pyi,sha256=mJOzCgcYZAfHwnY_6Wf1YwlTEJGb9ihzc2f0rE0Kw98,7751
|
249
249
|
sky/utils/common_utils.py,sha256=O6PlZTCNhbuXOzjuV2DKw43niWE_qPfYZNGhnMtZzQg,24028
|
250
250
|
sky/utils/controller_utils.py,sha256=32pVORm2cd42tg0srxGvmYV0kYTl67IFsw2EdXbdoR8,38042
|
251
251
|
sky/utils/dag_utils.py,sha256=gjGZiJj4_GYsraXX67e6ElvbmOByJcyjSfvVgYZiXvs,5588
|
@@ -273,9 +273,9 @@ sky/utils/kubernetes/k8s_gpu_labeler_job.yaml,sha256=KPqp23B-zQ2SZK03jdHeF9fLTog
|
|
273
273
|
sky/utils/kubernetes/k8s_gpu_labeler_setup.yaml,sha256=VLKT2KKimZu1GDg_4AIlIt488oMQvhRZWwsj9vBbPUg,3812
|
274
274
|
sky/utils/kubernetes/rsync_helper.sh,sha256=Ma-N9a271fTfdgP5-8XIQL7KPf8IPUo-uY004PCdUFo,747
|
275
275
|
sky/utils/kubernetes/ssh_jump_lifecycle_manager.py,sha256=RFLJ3k7MR5UN4SKHykQ0lV9SgXumoULpKYIAt1vh-HU,6560
|
276
|
-
skypilot_nightly-1.0.0.
|
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.
|
276
|
+
skypilot_nightly-1.0.0.dev20241009.dist-info/LICENSE,sha256=emRJAvE7ngL6x0RhQvlns5wJzGI3NEQ_WMjNmd9TZc4,12170
|
277
|
+
skypilot_nightly-1.0.0.dev20241009.dist-info/METADATA,sha256=p6iGN_z_1fSQInc_YIVKMqbi1dytUeQ7ri04u0agNek,18945
|
278
|
+
skypilot_nightly-1.0.0.dev20241009.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
|
279
|
+
skypilot_nightly-1.0.0.dev20241009.dist-info/entry_points.txt,sha256=StA6HYpuHj-Y61L2Ze-hK2IcLWgLZcML5gJu8cs6nU4,36
|
280
|
+
skypilot_nightly-1.0.0.dev20241009.dist-info/top_level.txt,sha256=qA8QuiNNb6Y1OF-pCUtPEr6sLEwy2xJX06Bd_CrtrHY,4
|
281
|
+
skypilot_nightly-1.0.0.dev20241009.dist-info/RECORD,,
|
File without changes
|
{skypilot_nightly-1.0.0.dev20241007.dist-info → skypilot_nightly-1.0.0.dev20241009.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|
File without changes
|