skypilot-nightly 1.0.0.dev20250212__py3-none-any.whl → 1.0.0.dev20250213__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 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 = '1fe3fab0e7a3242f32039d55b456603350dc4196'
8
+ _SKYPILOT_COMMIT_SHA = 'c49961417a83b049b3f3435a252c8ec5ea0fb5e6'
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.dev20250212'
38
+ __version__ = '1.0.0.dev20250213'
39
39
  __root_dir__ = os.path.dirname(os.path.abspath(__file__))
40
40
 
41
41
 
sky/clouds/kubernetes.py CHANGED
@@ -464,7 +464,9 @@ class Kubernetes(clouds.Cloud):
464
464
  # CPU resources on the node instead within the pod.
465
465
  custom_ray_options = {
466
466
  'object-store-memory': 500000000,
467
- 'num-cpus': str(int(cpus)),
467
+ # 'num-cpus' must be an integer, but we should not set it to 0 if
468
+ # cpus is <1.
469
+ 'num-cpus': str(max(int(cpus), 1)),
468
470
  }
469
471
  deploy_vars = {
470
472
  'instance_type': resources.instance_type,
sky/clouds/runpod.py CHANGED
@@ -177,6 +177,11 @@ class RunPod(clouds.Cloud):
177
177
  hourly_cost = self.instance_type_to_hourly_cost(
178
178
  instance_type=instance_type, use_spot=use_spot)
179
179
 
180
+ # default to root
181
+ docker_username_for_runpod = (resources.docker_username_for_runpod
182
+ if resources.docker_username_for_runpod
183
+ is not None else 'root')
184
+
180
185
  return {
181
186
  'instance_type': instance_type,
182
187
  'custom_resources': custom_resources,
@@ -184,6 +189,7 @@ class RunPod(clouds.Cloud):
184
189
  'image_id': image_id,
185
190
  'use_spot': use_spot,
186
191
  'bid_per_gpu': str(hourly_cost),
192
+ 'docker_username_for_runpod': docker_username_for_runpod,
187
193
  }
188
194
 
189
195
  def _get_feasible_launchable_resources(
@@ -28,6 +28,7 @@ REGIONS = [
28
28
  'asia-northeast-2',
29
29
  'us-east-1',
30
30
  'us-east-2',
31
+ 'us-east-3',
31
32
  'us-west-2',
32
33
  'us-west-1',
33
34
  'us-south-1',
@@ -450,6 +450,13 @@ def _post_provision_setup(
450
450
  logger.info(f'{indent_str}{colorama.Style.DIM}{vm_str}{plural} {verb} '
451
451
  f'up.{colorama.Style.RESET_ALL}')
452
452
 
453
+ # It's promised by the cluster config that docker_config does not
454
+ # exist for docker-native clouds, i.e. they provide docker containers
455
+ # instead of full VMs, like Kubernetes and RunPod, as it requires some
456
+ # special handlings to run docker inside their docker virtualization.
457
+ # For their Docker image settings, we do them when provisioning the
458
+ # cluster. See provision/{cloud}/instance.py:get_cluster_info for more
459
+ # details.
453
460
  if docker_config:
454
461
  status.update(
455
462
  ux_utils.spinner_message(
@@ -186,7 +186,7 @@ def delete_pod_template(template_name: str) -> None:
186
186
  runpod.runpod.api.graphql.run_graphql_query(
187
187
  f'mutation {{deleteTemplate(templateName: "{template_name}")}}')
188
188
  except runpod.runpod.error.QueryError as e:
189
- logger.warning(f'Failed to delete template {template_name}: {e}'
189
+ logger.warning(f'Failed to delete template {template_name}: {e} '
190
190
  'Please delete it manually.')
191
191
 
192
192
 
@@ -195,8 +195,9 @@ def delete_register_auth(registry_auth_id: str) -> None:
195
195
  try:
196
196
  runpod.runpod.delete_container_registry_auth(registry_auth_id)
197
197
  except runpod.runpod.error.QueryError as e:
198
- logger.warning(f'Failed to delete registry auth {registry_auth_id}: {e}'
199
- 'Please delete it manually.')
198
+ logger.warning(
199
+ f'Failed to delete registry auth {registry_auth_id}: {e} '
200
+ 'Please delete it manually.')
200
201
 
201
202
 
202
203
  def _create_template_for_docker_login(
sky/resources.py CHANGED
@@ -67,6 +67,7 @@ class Resources:
67
67
  # Internal use only.
68
68
  # pylint: disable=invalid-name
69
69
  _docker_login_config: Optional[docker_utils.DockerLoginConfig] = None,
70
+ _docker_username_for_runpod: Optional[str] = None,
70
71
  _is_image_managed: Optional[bool] = None,
71
72
  _requires_fuse: Optional[bool] = None,
72
73
  _cluster_config_overrides: Optional[Dict[str, Any]] = None,
@@ -148,6 +149,9 @@ class Resources:
148
149
  _docker_login_config: the docker configuration to use. This includes
149
150
  the docker username, password, and registry server. If None, skip
150
151
  docker login.
152
+ _docker_username_for_runpod: the login username for the docker
153
+ containers. This is used by RunPod to set the ssh user for the
154
+ docker containers.
151
155
  _requires_fuse: whether the task requires FUSE mounting support. This
152
156
  is used internally by certain cloud implementations to do additional
153
157
  setup for FUSE mounting. This flag also safeguards against using
@@ -234,6 +238,12 @@ class Resources:
234
238
 
235
239
  self._docker_login_config = _docker_login_config
236
240
 
241
+ # TODO(andyl): This ctor param seems to be unused.
242
+ # We always use `Task.set_resources` and `Resources.copy` to set the
243
+ # `docker_username_for_runpod`. But to keep the consistency with
244
+ # `_docker_login_config`, we keep it here.
245
+ self._docker_username_for_runpod = _docker_username_for_runpod
246
+
237
247
  self._requires_fuse = _requires_fuse
238
248
 
239
249
  self._cluster_config_overrides = _cluster_config_overrides
@@ -479,6 +489,10 @@ class Resources:
479
489
  def requires_fuse(self, value: Optional[bool]) -> None:
480
490
  self._requires_fuse = value
481
491
 
492
+ @property
493
+ def docker_username_for_runpod(self) -> Optional[str]:
494
+ return self._docker_username_for_runpod
495
+
482
496
  def _set_cpus(
483
497
  self,
484
498
  cpus: Union[None, int, float, str],
@@ -1065,6 +1079,10 @@ class Resources:
1065
1079
  cloud_specific_variables = self.cloud.make_deploy_resources_variables(
1066
1080
  self, cluster_name, region, zones, num_nodes, dryrun)
1067
1081
 
1082
+ # TODO(andyl): Should we print some warnings if users' envs share
1083
+ # same names with the cloud specific variables, but not enabled
1084
+ # since it's not on the particular cloud?
1085
+
1068
1086
  # Docker run options
1069
1087
  docker_run_options = skypilot_config.get_nested(
1070
1088
  ('docker', 'run_options'),
@@ -1277,6 +1295,9 @@ class Resources:
1277
1295
  labels=override.pop('labels', self.labels),
1278
1296
  _docker_login_config=override.pop('_docker_login_config',
1279
1297
  self._docker_login_config),
1298
+ _docker_username_for_runpod=override.pop(
1299
+ '_docker_username_for_runpod',
1300
+ self._docker_username_for_runpod),
1280
1301
  _is_image_managed=override.pop('_is_image_managed',
1281
1302
  self._is_image_managed),
1282
1303
  _requires_fuse=override.pop('_requires_fuse', self._requires_fuse),
@@ -1438,6 +1459,8 @@ class Resources:
1438
1459
  resources_fields['labels'] = config.pop('labels', None)
1439
1460
  resources_fields['_docker_login_config'] = config.pop(
1440
1461
  '_docker_login_config', None)
1462
+ resources_fields['_docker_username_for_runpod'] = config.pop(
1463
+ '_docker_username_for_runpod', None)
1441
1464
  resources_fields['_is_image_managed'] = config.pop(
1442
1465
  '_is_image_managed', None)
1443
1466
  resources_fields['_requires_fuse'] = config.pop('_requires_fuse', None)
@@ -1486,6 +1509,9 @@ class Resources:
1486
1509
  if self._docker_login_config is not None:
1487
1510
  config['_docker_login_config'] = dataclasses.asdict(
1488
1511
  self._docker_login_config)
1512
+ if self._docker_username_for_runpod is not None:
1513
+ config['_docker_username_for_runpod'] = (
1514
+ self._docker_username_for_runpod)
1489
1515
  add_if_not_none('_cluster_config_overrides',
1490
1516
  self._cluster_config_overrides)
1491
1517
  if self._is_image_managed is not None:
sky/skylet/constants.py CHANGED
@@ -110,6 +110,8 @@ DOCKER_LOGIN_ENV_VARS = {
110
110
  DOCKER_SERVER_ENV_VAR,
111
111
  }
112
112
 
113
+ RUNPOD_DOCKER_USERNAME_ENV_VAR = 'SKYPILOT_RUNPOD_DOCKER_USERNAME'
114
+
113
115
  # Commands for disable GPU ECC, which can improve the performance of the GPU
114
116
  # for some workloads by 30%. This will only be applied when a user specify
115
117
  # `nvidia_gpus.disable_ecc: true` in ~/.sky/config.yaml.
sky/task.py CHANGED
@@ -121,6 +121,9 @@ def _check_docker_login_config(task_envs: Dict[str, str]) -> bool:
121
121
 
122
122
  If any of the docker login env vars is set, all of them must be set.
123
123
 
124
+ Returns:
125
+ True if there is a valid docker login config in task_envs.
126
+ False otherwise.
124
127
  Raises:
125
128
  ValueError: if any of the docker login env vars is set, but not all of
126
129
  them are set.
@@ -168,6 +171,23 @@ def _with_docker_login_config(
168
171
  return type(resources)(new_resources)
169
172
 
170
173
 
174
+ def _with_docker_username_for_runpod(
175
+ resources: Union[Set['resources_lib.Resources'],
176
+ List['resources_lib.Resources']],
177
+ task_envs: Dict[str, str],
178
+ ) -> Union[Set['resources_lib.Resources'], List['resources_lib.Resources']]:
179
+ docker_username_for_runpod = task_envs.get(
180
+ constants.RUNPOD_DOCKER_USERNAME_ENV_VAR)
181
+
182
+ # We should not call r.copy() if docker_username_for_runpod is None,
183
+ # to prevent `DummyResources` instance becoming a `Resources` instance.
184
+ if docker_username_for_runpod is None:
185
+ return resources
186
+ return (type(resources)(
187
+ r.copy(_docker_username_for_runpod=docker_username_for_runpod)
188
+ for r in resources))
189
+
190
+
171
191
  class Task:
172
192
  """Task: a computation to be run on the cloud."""
173
193
 
@@ -582,6 +602,8 @@ class Task:
582
602
  if _check_docker_login_config(self._envs):
583
603
  self.resources = _with_docker_login_config(self.resources,
584
604
  self._envs)
605
+ self.resources = _with_docker_username_for_runpod(
606
+ self.resources, self._envs)
585
607
  return self
586
608
 
587
609
  @property
@@ -647,6 +669,9 @@ class Task:
647
669
  resources = {resources}
648
670
  # TODO(woosuk): Check if the resources are None.
649
671
  self.resources = _with_docker_login_config(resources, self.envs)
672
+ # Only have effect on RunPod.
673
+ self.resources = _with_docker_username_for_runpod(
674
+ self.resources, self.envs)
650
675
 
651
676
  # Evaluate if the task requires FUSE and set the requires_fuse flag
652
677
  for _, storage_obj in self.storage_mounts.items():
@@ -25,7 +25,7 @@ provider:
25
25
  {%- endif %}
26
26
 
27
27
  auth:
28
- ssh_user: root
28
+ ssh_user: {{docker_username_for_runpod}}
29
29
  ssh_private_key: {{ssh_private_key}}
30
30
 
31
31
  available_node_types:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: skypilot-nightly
3
- Version: 1.0.0.dev20250212
3
+ Version: 1.0.0.dev20250213
4
4
  Summary: SkyPilot: An intercloud broker for the clouds
5
5
  Author: SkyPilot Team
6
6
  License: Apache 2.0
@@ -1,4 +1,4 @@
1
- sky/__init__.py,sha256=GRvhpT8lUvIyIPLyC2cqv9RiI6hZ0_iMY56YNDpjPbs,5560
1
+ sky/__init__.py,sha256=ulWt-DtbuSpxFnOQtMOqMTPqAYFd6WgWd_T-bxS7_QM,5560
2
2
  sky/admin_policy.py,sha256=hPo02f_A32gCqhUueF0QYy1fMSSKqRwYEg_9FxScN_s,3248
3
3
  sky/authentication.py,sha256=MNc9uHnvQ1EsEl8SsrYcYCGbxcnDbR6gaRCXVNd5RZE,22338
4
4
  sky/check.py,sha256=xzLlxUkBCrzpOho8lw65EvKLPl_b9lA2nteF5MSYbDQ,10885
@@ -10,11 +10,11 @@ sky/exceptions.py,sha256=SEhRubPlk-crkflPC5P_Z085iLrSd3UScYwc790QwYw,9378
10
10
  sky/execution.py,sha256=vNUE9Z8hCSQeil7h3kdote2r6nkbrGXSqqmK6ru594Q,28453
11
11
  sky/global_user_state.py,sha256=cTwltMCDIIBaapuGgARxFwpDJDCiKKyVW-PP_qtWuCA,30241
12
12
  sky/optimizer.py,sha256=H5cpKELOQmnFpox0QXMB4P7jGhJxzXog4Ht_TYJaGuA,59758
13
- sky/resources.py,sha256=D3jteQxKOUydoNm7VDl90p02dwP3RpbO3gqNcl4dpOI,70327
13
+ sky/resources.py,sha256=W7VO5nTizr-KIhOamOs7oSwmBGLjQZhQM6DoYbiAOsg,71648
14
14
  sky/sky_logging.py,sha256=7Zk9mL1TDxFkGsy3INMBKYlqsbognVGSMzAsHZdZlhw,5891
15
15
  sky/skypilot_config.py,sha256=FN93hSG-heQCHBnemlIK2TwrJngKbpx4vMXNUzPIzV8,9087
16
16
  sky/status_lib.py,sha256=J7Jb4_Dz0v2T64ttOdyUgpokvl4S0sBJrMfH7Fvo51A,1457
17
- sky/task.py,sha256=zri5_Ghh5-fjDf2rl997ZmL4IlXetW9u9XXJIRUJ3Qg,51353
17
+ sky/task.py,sha256=Z74bBkOx1bFmGMoQRD3qbYxIZ5qi2AC5htY1KIsmvT0,52394
18
18
  sky/adaptors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
19
19
  sky/adaptors/aws.py,sha256=FNNC8B-iqSSiCLPiWGK_PLm1R-Kt4yI5JPIpdE0QJxQ,7565
20
20
  sky/adaptors/azure.py,sha256=yjM8nAPW-mlSXfmA8OmJNnSIrZ9lQx2-GxiI-TIVrwE,21910
@@ -51,11 +51,11 @@ sky/clouds/do.py,sha256=od4gMTrs2W5IkaDDr_oexOSdIOqn94vKq2U_QZcrpRk,11311
51
51
  sky/clouds/fluidstack.py,sha256=u2I6jXEtTqgqRWi2EafMsKqc8VkUq1cR6CSDUvk72_U,12407
52
52
  sky/clouds/gcp.py,sha256=6QOnefFsYiLCcnajjduLHsayqJ641bBu42jPTpvy7Mc,55007
53
53
  sky/clouds/ibm.py,sha256=0ArRTQx1_DpTNGByFhukzFedEDzmVjBsGiiques1bQ0,21447
54
- sky/clouds/kubernetes.py,sha256=oZg4Lpn2ZBikyc5NTJIziUPEY0xs2mtz546ButhkZ7g,31541
54
+ sky/clouds/kubernetes.py,sha256=ocf8ZUlMbOcPb-n8JrSFix9rH75g089sC1JAd84JUXQ,31653
55
55
  sky/clouds/lambda_cloud.py,sha256=42AmcN2X_wdBMuAw606nR_pQCBAy5QFiAo711_WRqDE,12672
56
56
  sky/clouds/oci.py,sha256=VpPxpMJv52QePVdwdK9EuiMyqjp70dk8_rgUVv5Y-2w,27028
57
57
  sky/clouds/paperspace.py,sha256=F0Sj1RcqRb5fPjrr8qbdeY-JdfAHcRPc902pZOi4erw,10889
58
- sky/clouds/runpod.py,sha256=Wtaarp27_LTu5_E2agC7tTr2vhN1D4sblr2vZTT4vBI,11580
58
+ sky/clouds/runpod.py,sha256=4gZTbUO4I8bzio5x9Km42ZIujZzCx2eszdkN0Mz5fqE,11893
59
59
  sky/clouds/scp.py,sha256=JHyMqkAAqr9lJq79IVjj3rU1g-ZCCGLZTJEzIhYsw7c,15845
60
60
  sky/clouds/vast.py,sha256=vQV489qkZMfDtt_SnXParPY49gkgKx5LZAEOsk65kIo,11231
61
61
  sky/clouds/vsphere.py,sha256=rrNf6_uHy4ukjHwaN35XVh2-Xj9k43-QGQkiEXyHYJk,12273
@@ -85,7 +85,7 @@ sky/clouds/service_catalog/data_fetchers/fetch_azure.py,sha256=7YVnoGDGGZI2TK02b
85
85
  sky/clouds/service_catalog/data_fetchers/fetch_cudo.py,sha256=52P48lvWN0s1ArjeLPeLemPRpxjSRcHincRle0nqdm4,3440
86
86
  sky/clouds/service_catalog/data_fetchers/fetch_fluidstack.py,sha256=yKuAFbjBRNz_e2RNNDT_aHHAuKQ86Ac7GKgIie5O6Pg,7273
87
87
  sky/clouds/service_catalog/data_fetchers/fetch_gcp.py,sha256=HLxdxA9DMSi19mgpVM_cERV4o-xh_tJ9vmkGm1wOaIE,30868
88
- sky/clouds/service_catalog/data_fetchers/fetch_lambda_cloud.py,sha256=MN54h0CAGPHQAeF2eTmuESq3b0-d1kDARRUM6OkivCk,4962
88
+ sky/clouds/service_catalog/data_fetchers/fetch_lambda_cloud.py,sha256=Bi5ta91p4SkFCoaEJUPKPjDB0FZ24DMR4NcKFpKCkxU,4979
89
89
  sky/clouds/service_catalog/data_fetchers/fetch_vast.py,sha256=zR9icM3ty5C8tGw13pQbsBtQQMgG4kl1j_jSGqqrgOA,4741
90
90
  sky/clouds/service_catalog/data_fetchers/fetch_vsphere.py,sha256=Opp2r3KSzXPtwk3lKNbO8IX9QzjoRSwy1kW3jPjtS1c,21453
91
91
  sky/clouds/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -118,7 +118,7 @@ sky/provision/docker_utils.py,sha256=ENm0LkyrYWic3Ikyacho8X5uDMvGsbkZQsb6kNH1DuI
118
118
  sky/provision/instance_setup.py,sha256=YBFOwZQLBzpUjYoVQcX0KItej1rCBRWM23Dw9lg_q24,24386
119
119
  sky/provision/logging.py,sha256=yZWgejrFBhhRjAtvFu5N5bRXIMK5TuwNjp1vKQqz2pw,2103
120
120
  sky/provision/metadata_utils.py,sha256=LrxeV4wD2QPzNdXV_npj8q-pr35FatxBBjF_jSbpOT0,4013
121
- sky/provision/provisioner.py,sha256=ZOgFOO0NB4QZVPwd4qikRqi615Bq67n0Vcl3cTDVxNE,29153
121
+ sky/provision/provisioner.py,sha256=UuMO2wp98Nk1nue25TtIaMU79Aj14v9IoIAFO_CUy9w,29636
122
122
  sky/provision/aws/__init__.py,sha256=mxq8PeWJqUtalDozTNpbtENErRZ1ktEs8uf2aG9UUgU,731
123
123
  sky/provision/aws/config.py,sha256=-4mr5uxgsl_8eLm_4DfP8JurZGSysGuY0iDeBTHnX5Q,25943
124
124
  sky/provision/aws/instance.py,sha256=3-R8ohuN8ooNh2Fqqb7-c4vNFy1xsw2GQF4PHg3APhE,40843
@@ -172,7 +172,7 @@ sky/provision/paperspace/utils.py,sha256=uOmxbDKjV6skFizC4gYXSxRuEqso5ck2kF7MbtN
172
172
  sky/provision/runpod/__init__.py,sha256=6HYvHI27EaLrX1SS0vWVhdLu5HDBeZCdvAeDJuwM5pk,556
173
173
  sky/provision/runpod/config.py,sha256=9ulZJVL7nHuxhTdoj8D7lNn7SdicJ5zc6FIcHIG9tcg,321
174
174
  sky/provision/runpod/instance.py,sha256=FNalpTQMvnmACdtFsGvVPVhEkzdqrlmd_pExn33bIQ8,10358
175
- sky/provision/runpod/utils.py,sha256=2L4MUrFi4rQOP26IeAkPNQ9oWGPJhH5fvz7NAbL3nNQ,12421
175
+ sky/provision/runpod/utils.py,sha256=F3zsxPV3IY5C73J-zNZEfcXL8bsZBgNWzlmtSO6qOqI,12425
176
176
  sky/provision/runpod/api/__init__.py,sha256=eJwjPeQZ5B7chf4-Bl4YeI2Uo9aLX4M1rr2NmPk89_E,112
177
177
  sky/provision/runpod/api/commands.py,sha256=oh77PS0H0wZudHV8II9ceRuaFQ8FN4NJ4S3-6_PeqPM,4238
178
178
  sky/provision/runpod/api/pods.py,sha256=GMwxgNr9NnHPfyh2Y9b8S_vLhrLY4h7LybFBBQNAyfw,4948
@@ -215,7 +215,7 @@ sky/skylet/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
215
215
  sky/skylet/attempt_skylet.py,sha256=GZ6ITjjA0m-da3IxXXfoHR6n4pjp3X3TOXUqVvSrV0k,2136
216
216
  sky/skylet/autostop_lib.py,sha256=JPDHmByuhoNYXSUHl-OnyeJUkOFWn7gDM1FrS7Kr3E8,4478
217
217
  sky/skylet/configs.py,sha256=UtnpmEL0F9hH6PSjhsps7xgjGZ6qzPOfW1p2yj9tSng,1887
218
- sky/skylet/constants.py,sha256=EUSW4yH59eqBDLMIdmQWIYd3nAJBFoUeo5v9MGiginI,16057
218
+ sky/skylet/constants.py,sha256=bTvojyYHLhUxMI-xD8d6Fj6snQiK4-PLw-baRFKCcfQ,16125
219
219
  sky/skylet/events.py,sha256=__7bt6Z8q2W1vwTQv4yug-oAXDwSf8zBeRxb8HFM36U,12792
220
220
  sky/skylet/job_lib.py,sha256=Rk-C069cusJIRXsks8xqCb016JSt7GlpU7LrpX0qFJk,42785
221
221
  sky/skylet/log_lib.py,sha256=oFEBd85vDYFrIyyZKekH30yc4rRYILC0F0o-COQ64oE,20445
@@ -256,7 +256,7 @@ sky/templates/lambda-ray.yml.j2,sha256=HyvO_tX2vxwSsc4IFVSqGuIbjLMk0bevP9bcxb8ZQ
256
256
  sky/templates/local-ray.yml.j2,sha256=FNHeyHF6nW9nU9QLIZceUWfvrFTTcO51KqhTnYCEFaA,1185
257
257
  sky/templates/oci-ray.yml.j2,sha256=92dvXGaUd2Kwep9fgTjOsAPJiBLr8GQTjy7pFvuPAyE,4562
258
258
  sky/templates/paperspace-ray.yml.j2,sha256=HQjZNamrB_a4fOMCxQXSVdV5JIHtbGtAE0JzEO8uuVQ,4021
259
- sky/templates/runpod-ray.yml.j2,sha256=bUiF4Y_EkCA_GKLtTzPXbajdL-NOUiJ38Pe4dZd2dys,4284
259
+ sky/templates/runpod-ray.yml.j2,sha256=95392Jvk-PwrEHIF2C5i-EnaqC31nTq4UTYZuQxUe1k,4310
260
260
  sky/templates/scp-ray.yml.j2,sha256=I9u8Ax-lit-d6UrCC9BVU8avst8w1cwK6TrzZBcz_JM,5608
261
261
  sky/templates/sky-serve-controller.yaml.j2,sha256=W4i1-OGRU2WDvauLC4EDXcYrNxj7mzRFSvSqzAKfehc,2020
262
262
  sky/templates/vast-ray.yml.j2,sha256=KaZLBJfI6FzAVRVq0NNM0_SN0RQUrDIehnJJ_LnvwnY,2990
@@ -298,9 +298,9 @@ sky/utils/kubernetes/k8s_gpu_labeler_job.yaml,sha256=k0TBoQ4zgf79-sVkixKSGYFHQ7Z
298
298
  sky/utils/kubernetes/k8s_gpu_labeler_setup.yaml,sha256=VLKT2KKimZu1GDg_4AIlIt488oMQvhRZWwsj9vBbPUg,3812
299
299
  sky/utils/kubernetes/rsync_helper.sh,sha256=h4YwrPFf9727CACnMJvF3EyK_0OeOYKKt4su_daKekw,1256
300
300
  sky/utils/kubernetes/ssh_jump_lifecycle_manager.py,sha256=Kq1MDygF2IxFmu9FXpCxqucXLmeUrvs6OtRij6XTQbo,6554
301
- skypilot_nightly-1.0.0.dev20250212.dist-info/LICENSE,sha256=emRJAvE7ngL6x0RhQvlns5wJzGI3NEQ_WMjNmd9TZc4,12170
302
- skypilot_nightly-1.0.0.dev20250212.dist-info/METADATA,sha256=rkJIHWHxQtacqsQPb5SZ7XHCGiXMvMBzXNPupXqi4sU,21397
303
- skypilot_nightly-1.0.0.dev20250212.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
304
- skypilot_nightly-1.0.0.dev20250212.dist-info/entry_points.txt,sha256=StA6HYpuHj-Y61L2Ze-hK2IcLWgLZcML5gJu8cs6nU4,36
305
- skypilot_nightly-1.0.0.dev20250212.dist-info/top_level.txt,sha256=qA8QuiNNb6Y1OF-pCUtPEr6sLEwy2xJX06Bd_CrtrHY,4
306
- skypilot_nightly-1.0.0.dev20250212.dist-info/RECORD,,
301
+ skypilot_nightly-1.0.0.dev20250213.dist-info/LICENSE,sha256=emRJAvE7ngL6x0RhQvlns5wJzGI3NEQ_WMjNmd9TZc4,12170
302
+ skypilot_nightly-1.0.0.dev20250213.dist-info/METADATA,sha256=hLWjPTEc6CnhdlKg2uvdj1VZgjmf3XNt0fJV3R61GTc,21397
303
+ skypilot_nightly-1.0.0.dev20250213.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
304
+ skypilot_nightly-1.0.0.dev20250213.dist-info/entry_points.txt,sha256=StA6HYpuHj-Y61L2Ze-hK2IcLWgLZcML5gJu8cs6nU4,36
305
+ skypilot_nightly-1.0.0.dev20250213.dist-info/top_level.txt,sha256=qA8QuiNNb6Y1OF-pCUtPEr6sLEwy2xJX06Bd_CrtrHY,4
306
+ skypilot_nightly-1.0.0.dev20250213.dist-info/RECORD,,