skypilot-nightly 1.0.0.dev20250529__py3-none-any.whl → 1.0.0.dev20250530__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.
Files changed (83) hide show
  1. sky/__init__.py +2 -2
  2. sky/adaptors/nebius.py +99 -16
  3. sky/authentication.py +54 -7
  4. sky/backends/backend_utils.py +35 -22
  5. sky/backends/cloud_vm_ray_backend.py +30 -15
  6. sky/check.py +1 -1
  7. sky/cli.py +7 -5
  8. sky/client/cli.py +7 -5
  9. sky/clouds/nebius.py +55 -14
  10. sky/dashboard/out/404.html +1 -1
  11. sky/dashboard/out/_next/static/Q32Bxr2Pby5tFDW-y5TNg/_buildManifest.js +1 -0
  12. sky/dashboard/out/_next/static/chunks/236-ca00738e2f58ea65.js +6 -0
  13. sky/dashboard/out/_next/static/chunks/37-64efcd0e9c54bff6.js +6 -0
  14. sky/dashboard/out/_next/static/chunks/{173-7db8607cefc20f70.js → 614-3d29f98e0634b179.js} +2 -2
  15. sky/dashboard/out/_next/static/chunks/682-f3f1443ed2fba42f.js +6 -0
  16. sky/dashboard/out/_next/static/chunks/798-c0525dc3f21e488d.js +1 -0
  17. sky/dashboard/out/_next/static/chunks/843-786c36624d5ff61f.js +11 -0
  18. sky/dashboard/out/_next/static/chunks/856-02e34c9fc5945066.js +1 -0
  19. sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]/[job]-42d3656aba9d2e78.js +6 -0
  20. sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-20835df7b0c4599c.js +6 -0
  21. sky/dashboard/out/_next/static/chunks/pages/{clusters-943992b84fd6f4ee.js → clusters-f37ff20f0af29aae.js} +1 -1
  22. sky/dashboard/out/_next/static/chunks/pages/{config-7c48919fe030bc43.js → config-3c6a2dabf56e8cd6.js} +1 -1
  23. sky/dashboard/out/_next/static/chunks/pages/infra/{[context]-909f1ceb0fcf1b99.js → [context]-342bc15bb78ab2e5.js} +1 -1
  24. sky/dashboard/out/_next/static/chunks/pages/{infra-d4c6875c88771e17.js → infra-7b4b8e7fa9fa0827.js} +1 -1
  25. sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-258decb65e95f520.js +11 -0
  26. sky/dashboard/out/_next/static/chunks/pages/{jobs-a4efc09e61988f8d.js → jobs-78a6c5ba3e24c0cf.js} +1 -1
  27. sky/dashboard/out/_next/static/chunks/pages/{users-b2634885d67c49a6.js → users-89f9212b81d8897e.js} +1 -1
  28. sky/dashboard/out/_next/static/chunks/pages/workspace/{new-579b3203c7c19d84.js → new-198b6e00d7d724c5.js} +1 -1
  29. sky/dashboard/out/_next/static/chunks/pages/workspaces/{[name]-9388e38fac73ee8f.js → [name]-2ce792183b03c341.js} +1 -1
  30. sky/dashboard/out/_next/static/chunks/pages/workspaces-17d41826537196e7.js +1 -0
  31. sky/dashboard/out/_next/static/chunks/webpack-f27c9a32aa3d9c6d.js +1 -0
  32. sky/dashboard/out/_next/static/css/5411b9fb0a783c1c.css +3 -0
  33. sky/dashboard/out/clusters/[cluster]/[job].html +1 -1
  34. sky/dashboard/out/clusters/[cluster].html +1 -1
  35. sky/dashboard/out/clusters.html +1 -1
  36. sky/dashboard/out/config.html +1 -1
  37. sky/dashboard/out/index.html +1 -1
  38. sky/dashboard/out/infra/[context].html +1 -1
  39. sky/dashboard/out/infra.html +1 -1
  40. sky/dashboard/out/jobs/[job].html +1 -1
  41. sky/dashboard/out/jobs.html +1 -1
  42. sky/dashboard/out/users.html +1 -1
  43. sky/dashboard/out/workspace/new.html +1 -1
  44. sky/dashboard/out/workspaces/[name].html +1 -1
  45. sky/dashboard/out/workspaces.html +1 -1
  46. sky/exceptions.py +10 -0
  47. sky/global_user_state.py +149 -1
  48. sky/jobs/constants.py +1 -1
  49. sky/jobs/state.py +24 -5
  50. sky/jobs/utils.py +3 -1
  51. sky/provision/kubernetes/utils.py +2 -1
  52. sky/provision/provisioner.py +15 -10
  53. sky/serve/controller.py +10 -7
  54. sky/serve/replica_managers.py +22 -18
  55. sky/serve/service.py +5 -4
  56. sky/server/common.py +5 -2
  57. sky/server/stream_utils.py +21 -0
  58. sky/templates/kubernetes-ray.yml.j2 +19 -1
  59. sky/utils/common_utils.py +66 -0
  60. sky/utils/rich_utils.py +5 -0
  61. sky/utils/schemas.py +20 -1
  62. {skypilot_nightly-1.0.0.dev20250529.dist-info → skypilot_nightly-1.0.0.dev20250530.dist-info}/METADATA +1 -1
  63. {skypilot_nightly-1.0.0.dev20250529.dist-info → skypilot_nightly-1.0.0.dev20250530.dist-info}/RECORD +69 -70
  64. sky/dashboard/out/_next/static/HvNkg7hqKM1p0ptAcdDcF/_buildManifest.js +0 -1
  65. sky/dashboard/out/_next/static/chunks/236-90e5498a5b00ec29.js +0 -6
  66. sky/dashboard/out/_next/static/chunks/303-2c7b0f7af571710b.js +0 -6
  67. sky/dashboard/out/_next/static/chunks/320-afea3ddcc5bd1c6c.js +0 -6
  68. sky/dashboard/out/_next/static/chunks/578-9146658cead92981.js +0 -6
  69. sky/dashboard/out/_next/static/chunks/843-256ec920f6d5f41f.js +0 -11
  70. sky/dashboard/out/_next/static/chunks/856-59a1760784c9e770.js +0 -1
  71. sky/dashboard/out/_next/static/chunks/9f96d65d-5a3e4af68c26849e.js +0 -1
  72. sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]/[job]-159bffb2fa34ed54.js +0 -6
  73. sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-9506c00257d10dbd.js +0 -1
  74. sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-6b80e9e0c6aa16a1.js +0 -6
  75. sky/dashboard/out/_next/static/chunks/pages/workspaces-610c49ae3619ee85.js +0 -1
  76. sky/dashboard/out/_next/static/chunks/webpack-deda68c926e8d0bc.js +0 -1
  77. sky/dashboard/out/_next/static/css/ffd1cd601648c303.css +0 -3
  78. /sky/dashboard/out/_next/static/{HvNkg7hqKM1p0ptAcdDcF → Q32Bxr2Pby5tFDW-y5TNg}/_ssgManifest.js +0 -0
  79. /sky/dashboard/out/_next/static/chunks/pages/{_app-a631df412d8172de.js → _app-f19ea34b91c33950.js} +0 -0
  80. {skypilot_nightly-1.0.0.dev20250529.dist-info → skypilot_nightly-1.0.0.dev20250530.dist-info}/WHEEL +0 -0
  81. {skypilot_nightly-1.0.0.dev20250529.dist-info → skypilot_nightly-1.0.0.dev20250530.dist-info}/entry_points.txt +0 -0
  82. {skypilot_nightly-1.0.0.dev20250529.dist-info → skypilot_nightly-1.0.0.dev20250530.dist-info}/licenses/LICENSE +0 -0
  83. {skypilot_nightly-1.0.0.dev20250529.dist-info → skypilot_nightly-1.0.0.dev20250530.dist-info}/top_level.txt +0 -0
sky/serve/service.py CHANGED
@@ -186,7 +186,8 @@ def _start(service_name: str, tmp_task_yaml: str, job_id: int):
186
186
 
187
187
  service_dir = os.path.expanduser(
188
188
  serve_utils.generate_remote_service_dir_name(service_name))
189
- task_yaml = serve_utils.generate_task_yaml_file_name(service_name, version)
189
+ service_task_yaml = serve_utils.generate_task_yaml_file_name(
190
+ service_name, version)
190
191
 
191
192
  if not is_recovery:
192
193
  if (len(serve_state.get_services()) >=
@@ -218,7 +219,7 @@ def _start(service_name: str, tmp_task_yaml: str, job_id: int):
218
219
  # don't want the new file mounts to overwrite the old one, so we
219
220
  # sync to a tmp file first and then copy it to the final name
220
221
  # if there is no name conflict.
221
- shutil.copy(tmp_task_yaml, task_yaml)
222
+ shutil.copy(tmp_task_yaml, service_task_yaml)
222
223
 
223
224
  controller_process = None
224
225
  load_balancer_process = None
@@ -249,8 +250,8 @@ def _start(service_name: str, tmp_task_yaml: str, job_id: int):
249
250
  controller_host = _get_controller_host()
250
251
  controller_process = multiprocessing.Process(
251
252
  target=controller.run_controller,
252
- args=(service_name, service_spec, task_yaml, controller_host,
253
- controller_port))
253
+ args=(service_name, service_spec, service_task_yaml,
254
+ controller_host, controller_port))
254
255
  controller_process.start()
255
256
 
256
257
  if not is_recovery:
sky/server/common.py CHANGED
@@ -533,10 +533,13 @@ def check_server_healthy_or_start_fn(deploy: bool = False,
533
533
  api_server_status = None
534
534
  try:
535
535
  api_server_status = check_server_healthy()
536
+ if api_server_status == ApiServerStatus.NEEDS_AUTH:
537
+ endpoint = get_server_url()
538
+ with ux_utils.print_exception_no_traceback():
539
+ raise exceptions.ApiServerAuthenticationError(endpoint)
536
540
  except exceptions.ApiServerConnectionError as exc:
537
541
  endpoint = get_server_url()
538
- if (not is_api_server_local() or
539
- api_server_status == ApiServerStatus.NEEDS_AUTH):
542
+ if not is_api_server_local():
540
543
  with ux_utils.print_exception_no_traceback():
541
544
  raise exceptions.ApiServerConnectionError(endpoint) from exc
542
545
  # Lock to prevent multiple processes from starting the server at the
@@ -15,6 +15,8 @@ from sky.utils import rich_utils
15
15
 
16
16
  logger = sky_logging.init_logger(__name__)
17
17
 
18
+ _HEARTBEAT_INTERVAL = 30
19
+
18
20
 
19
21
  async def _yield_log_file_with_payloads_skipped(
20
22
  log_file) -> AsyncGenerator[str, None]:
@@ -90,6 +92,8 @@ async def log_streamer(request_id: Optional[str],
90
92
  for line_str in lines:
91
93
  yield line_str
92
94
 
95
+ last_heartbeat_time = asyncio.get_event_loop().time()
96
+
93
97
  while True:
94
98
  # Sleep 0 to yield control to allow other coroutines to run,
95
99
  # while keeps the loop tight to make log stream responsive.
@@ -106,15 +110,32 @@ async def log_streamer(request_id: Optional[str],
106
110
  break
107
111
  if not follow:
108
112
  break
113
+
114
+ current_time = asyncio.get_event_loop().time()
115
+ if current_time - last_heartbeat_time >= _HEARTBEAT_INTERVAL:
116
+ # Currently just used to keep the connection busy, refer to
117
+ # https://github.com/skypilot-org/skypilot/issues/5750 for
118
+ # more details.
119
+ yield message_utils.encode_payload(
120
+ rich_utils.Control.HEARTBEAT.encode(''))
121
+ last_heartbeat_time = current_time
122
+
109
123
  # Sleep shortly to avoid storming the DB and CPU, this has
110
124
  # little impact on the responsivness here since we are waiting
111
125
  # for a new line to come in.
112
126
  await asyncio.sleep(0.1)
113
127
  continue
128
+
129
+ # Refresh the heartbeat time, this is a trivial optimization for
130
+ # performance but it helps avoid unnecessary heartbeat strings
131
+ # being printed when the client runs in an old version.
132
+ last_heartbeat_time = asyncio.get_event_loop().time()
114
133
  line_str = line.decode('utf-8')
115
134
  if plain_logs:
116
135
  is_payload, line_str = message_utils.decode_payload(
117
136
  line_str, raise_for_mismatch=False)
137
+ # TODO(aylei): implement heartbeat mechanism for plain logs,
138
+ # sending invisible characters might be okay.
118
139
  if is_payload:
119
140
  continue
120
141
  yield line_str
@@ -395,6 +395,13 @@ available_node_types:
395
395
  # STEP 1: Run apt update, install missing packages, and set up ssh.
396
396
  (
397
397
  (
398
+ # For backwards compatibility, we put a marker file in the pod
399
+ # to indicate that the apt ssh setup step will write a completion
400
+ # marker file (/tmp/apt_ssh_setup_complete) to the pod.
401
+ # TODO: Remove this marker file and its usage in setup_commands
402
+ # after v0.11.0 release.
403
+ touch /tmp/apt_ssh_setup_started
404
+
398
405
  DEBIAN_FRONTEND=noninteractive $(prefix_cmd) apt-get update > /tmp/apt-update.log 2>&1 || \
399
406
  echo "Warning: apt-get update failed. Continuing anyway..." >> /tmp/apt-update.log
400
407
  # Install both fuse2 and fuse3 for compatibility for all possible fuse adapters in advance,
@@ -402,7 +409,7 @@ available_node_types:
402
409
  PACKAGES="rsync curl wget netcat gcc patch pciutils fuse fuse3 openssh-server";
403
410
 
404
411
  # Separate packages into two groups: packages that are installed first
405
- # so that curl, rsync and wget are available sooner to unblock the following
412
+ # so that curl, rsync, ssh and wget are available sooner to unblock the following
406
413
  # conda installation and rsync.
407
414
  # Also, we install fuse first to avoid confliction with fuse3.
408
415
  set -e
@@ -494,6 +501,8 @@ available_node_types:
494
501
  $(prefix_cmd) service ssh restart;
495
502
  $(prefix_cmd) sed -i "s/mesg n/tty -s \&\& mesg n/" ~/.profile;
496
503
 
504
+ touch /tmp/apt_ssh_setup_complete
505
+ echo "=== SSH setup completed ==="
497
506
  ) > /tmp/${STEPS[0]}.log 2>&1 || {
498
507
  echo "Error: ${STEPS[0]} failed. Continuing anyway..." > /tmp/${STEPS[0]}.failed
499
508
  cat /tmp/${STEPS[0]}.log
@@ -791,6 +800,15 @@ setup_commands:
791
800
  {%- endfor %}
792
801
  STEPS=("apt-ssh-setup" "runtime-setup" "env-setup")
793
802
  start_epoch=$(date +%s);
803
+
804
+ # Wait for SSH setup to complete before proceeding
805
+ if [ -f /tmp/apt_ssh_setup_started ]; then
806
+ echo "=== Logs for asynchronous SSH setup ===";
807
+ [ -f /tmp/apt_ssh_setup_complete ] && cat /tmp/${STEPS[0]}.log ||
808
+ { tail -f -n +1 /tmp/${STEPS[0]}.log & TAIL_PID=$!; echo "Tail PID: $TAIL_PID"; until [ -f /tmp/apt_ssh_setup_complete ]; do sleep 0.5; done; kill $TAIL_PID || true; };
809
+ [ -f /tmp/${STEPS[0]}.failed ] && { echo "Error: ${STEPS[0]} failed. Exiting."; exit 1; } || true;
810
+ fi
811
+
794
812
  echo "=== Logs for asynchronous ray and skypilot installation ===";
795
813
  if [ -f /tmp/skypilot_is_nimbus ]; then
796
814
  echo "=== Logs for asynchronous ray and skypilot installation ===";
sky/utils/common_utils.py CHANGED
@@ -324,9 +324,75 @@ def get_pretty_entrypoint_cmd() -> str:
324
324
  # Turn '/.../anaconda/envs/py36/bin/sky' into 'sky', but keep other
325
325
  # things like 'examples/app.py'.
326
326
  argv[0] = basename
327
+
328
+ # Redact sensitive environment variable values
329
+ argv = _redact_env_values(argv)
330
+
327
331
  return ' '.join(argv)
328
332
 
329
333
 
334
+ def _redact_env_values(argv: List[str]) -> List[str]:
335
+ """Redact sensitive values from --env arguments.
336
+
337
+ Args:
338
+ argv: Command line arguments
339
+
340
+ Returns:
341
+ Modified argv with redacted --env values, or original argv if any error
342
+
343
+ Examples:
344
+ ['sky', 'launch', '--env', 'HF_TOKEN=secret'] ->
345
+ ['sky', 'launch', '--env', 'HF_TOKEN=<redacted>']
346
+
347
+ ['sky', 'launch', '--env=HF_TOKEN=secret'] ->
348
+ ['sky', 'launch', '--env=HF_TOKEN=<redacted>']
349
+
350
+ ['sky', 'launch', '--env', 'HF_TOKEN'] ->
351
+ ['sky', 'launch', '--env', 'HF_TOKEN'] (no change)
352
+ """
353
+ try:
354
+ if not argv:
355
+ return argv or []
356
+
357
+ result = []
358
+ i = 0
359
+
360
+ while i < len(argv):
361
+ arg = argv[i]
362
+
363
+ # Ensure arg is a string
364
+ if not isinstance(arg, str):
365
+ result.append(arg)
366
+ i += 1
367
+ continue
368
+
369
+ if arg == '--env' and i + 1 < len(argv):
370
+ result.append(arg)
371
+ next_arg = argv[i + 1]
372
+ # Ensure next_arg is a string and handle redaction safely
373
+ if isinstance(next_arg, str):
374
+ redacted = re.sub(r'^([^=]+)=.*', r'\1=<redacted>',
375
+ next_arg)
376
+ result.append(redacted)
377
+ else:
378
+ result.append(next_arg)
379
+ i += 2
380
+ elif arg.startswith('--env='):
381
+ # Redact only if there's a value after the key
382
+ redacted = re.sub(r'^(--env=[^=]+)=.*', r'\1=<redacted>', arg)
383
+ result.append(redacted)
384
+ i += 1
385
+ else:
386
+ result.append(arg)
387
+ i += 1
388
+
389
+ return result
390
+ except Exception: # pylint: disable=broad-except
391
+ # If anything goes wrong with redaction, return original argv
392
+ # This ensures the command can still execute
393
+ return argv or []
394
+
395
+
330
396
  def user_and_hostname_hash() -> str:
331
397
  """Returns a string containing <user>-<hostname hash last 4 chars>.
332
398
 
sky/utils/rich_utils.py CHANGED
@@ -57,6 +57,7 @@ class Control(enum.Enum):
57
57
  STOP = 'rich_stop'
58
58
  EXIT = 'rich_exit'
59
59
  UPDATE = 'rich_update'
60
+ HEARTBEAT = 'heartbeat'
60
61
 
61
62
  def encode(self, msg: str) -> str:
62
63
  return f'<{self.value}>{msg}</{self.value}>'
@@ -385,6 +386,10 @@ def decode_rich_status(
385
386
  decoding_status.__exit__(None, None, None)
386
387
  elif control == Control.START:
387
388
  decoding_status.start()
389
+ elif control == Control.HEARTBEAT:
390
+ # Heartbeat is not displayed to the user, so we do not
391
+ # need to update the status.
392
+ pass
388
393
  finally:
389
394
  if decoding_status is not None:
390
395
  decoding_status.__exit__(None, None, None)
sky/utils/schemas.py CHANGED
@@ -1108,6 +1108,9 @@ def get_config_schema():
1108
1108
  'required': [],
1109
1109
  'properties': {
1110
1110
  **_NETWORK_CONFIG_SCHEMA,
1111
+ 'tenant_id': {
1112
+ 'type': 'string',
1113
+ },
1111
1114
  },
1112
1115
  'additionalProperties': {
1113
1116
  'type': 'object',
@@ -1212,7 +1215,7 @@ def get_config_schema():
1212
1215
  # all clouds except gcp, kubernetes, ssh
1213
1216
  not_supported_clouds = [
1214
1217
  cloud for cloud in allowed_workspace_cloud_names
1215
- if cloud.lower() not in ['gcp', 'kubernetes', 'ssh']
1218
+ if cloud.lower() not in ['gcp', 'kubernetes', 'ssh', 'nebius']
1216
1219
  ]
1217
1220
  not_supported_cloud_regex = '|'.join(not_supported_clouds)
1218
1221
  workspaces_schema = {
@@ -1281,6 +1284,22 @@ def get_config_schema():
1281
1284
  },
1282
1285
  'additionalProperties': False,
1283
1286
  },
1287
+ 'nebius': {
1288
+ 'type': 'object',
1289
+ 'required': [],
1290
+ 'properties': {
1291
+ 'credentials_file_path': {
1292
+ 'type': 'string',
1293
+ },
1294
+ 'tenant_id': {
1295
+ 'type': 'string',
1296
+ },
1297
+ 'disabled': {
1298
+ 'type': 'boolean'
1299
+ },
1300
+ },
1301
+ 'additionalProperties': False,
1302
+ },
1284
1303
  },
1285
1304
  },
1286
1305
  }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: skypilot-nightly
3
- Version: 1.0.0.dev20250529
3
+ Version: 1.0.0.dev20250530
4
4
  Summary: SkyPilot: Run AI on Any Infra — Unified, Faster, Cheaper.
5
5
  Author: SkyPilot Team
6
6
  License: Apache 2.0
@@ -1,14 +1,14 @@
1
- sky/__init__.py,sha256=M2rtGUnec8bT_gfnUoWfL9RwRZtcTj8V003VIoSAix4,6428
1
+ sky/__init__.py,sha256=vBbhaXBT6XKB6qnzMmKZI0GhlScsw3hyp3BH60wZhkU,6428
2
2
  sky/admin_policy.py,sha256=hPo02f_A32gCqhUueF0QYy1fMSSKqRwYEg_9FxScN_s,3248
3
- sky/authentication.py,sha256=ND011K_-Ud1dVZF37A9KrwYir_ihJXcHc7iDWmuBc8Q,22872
4
- sky/check.py,sha256=ENQ-NerQhMSUe_A9o79E3L4amhiiEeHQe7suasDuXwo,28593
5
- sky/cli.py,sha256=DfGIn_2oI3yh5p5okxFC_NRPrHLC1yzeMeghSW4_A3w,244358
3
+ sky/authentication.py,sha256=jEo4hsbKqnutG-ictNT74vXUfTV85ePKtWY8E5V6Iac,25119
4
+ sky/check.py,sha256=Tvei7s8uywVhdjtKi1Wchp70IM62xusbS79cJIwhChU,28612
5
+ sky/cli.py,sha256=ZzT7udoKCJURwnU0ZHIbFdIpLEgJMgQ26Rv3q2LIfFY,244411
6
6
  sky/cloud_stores.py,sha256=Ln5GBpel-sEs7rVx7bBrMkfLwA_bctI05Rox2uoz7Lo,26388
7
7
  sky/core.py,sha256=aR9lIsZUkIMfM8HEAx186woTgxwCwuway6r46pi3XUM,52197
8
8
  sky/dag.py,sha256=8x-VMtjvSi0lYBemCMPLYq5ONljhoABjWzMKjmmdjSo,3369
9
- sky/exceptions.py,sha256=qfsEBD8OmjKChD4UGrHH-WwW-45Uh64_4KvF763aVuw,17360
9
+ sky/exceptions.py,sha256=MKkGTj6ixRgZ7bSoTS4LkyDTC0XlGcUzO6G4SlmTeHM,17707
10
10
  sky/execution.py,sha256=YSzpSxoUqLlGZ5v-2pgCt9Jkkcwz12FovOeFs3lC3q8,33109
11
- sky/global_user_state.py,sha256=0g4rb_TOddlMLklPSQH-POf66nhhCb1Ik5qL06Lifh0,41331
11
+ sky/global_user_state.py,sha256=cVZSWGvERRhdOFGmJSaCqFJUWga2_9w9ZtsEICRV91A,47497
12
12
  sky/models.py,sha256=bGMSATMkSMr_Kp6SCoiJVVeebwSdZuzjw_jrJzVWAAc,1603
13
13
  sky/optimizer.py,sha256=24hkzaM1W_VRhVkhtWXmUhJDOX55WV9kEF1hAVW_tVg,61426
14
14
  sky/resources.py,sha256=M6Yyc5IA5DHAZCRbDQGtAFLSPWvxaRTejnVUpJlCfPI,92805
@@ -26,15 +26,15 @@ sky/adaptors/docker.py,sha256=_kzpZ0fkWHqqQAVVl0llTsCE31KYz3Sjn8psTBQHVkA,468
26
26
  sky/adaptors/gcp.py,sha256=oEb9jClEtApw6PQnxdxDYxOCYsedvM3aiko1EW1FDVo,3501
27
27
  sky/adaptors/ibm.py,sha256=7YbHrWbYcZsJDgxMBNZr1yBI03mjs_C3pnCTCz-MNtQ,5068
28
28
  sky/adaptors/kubernetes.py,sha256=za3TnGzsbnM4eUSCKaOsjApaDgbzAPwbmAV_wLHPf5k,9316
29
- sky/adaptors/nebius.py,sha256=5vshmw0kCX98Zb6fClx00BCuzF5lm-vL0CjxzUtZrLU,5897
29
+ sky/adaptors/nebius.py,sha256=5dLZcWWCtwVdlQESfpXo4ZsZ832INw5ih16EUd8IR7c,8695
30
30
  sky/adaptors/oci.py,sha256=xJt6J9xBSFIENa6FwEt1V1sZE8puAZ_vPEoGlyQACPs,2839
31
31
  sky/adaptors/runpod.py,sha256=4Nt_BfZhJAKQNA3wO8cxvvNI8x4NsDGHu_4EhRDlGYQ,225
32
32
  sky/adaptors/vast.py,sha256=tpvmHi7IkQNzbbHVkeo04kUSajoEpSzXr2XgeO_I1LU,695
33
33
  sky/adaptors/vsphere.py,sha256=zJP9SeObEoLrpgHW2VHvZE48EhgVf8GfAEIwBeaDMfM,2129
34
34
  sky/backends/__init__.py,sha256=UDjwbUgpTRApbPJnNfR786GadUuwgRk3vsWoVu5RB_c,536
35
35
  sky/backends/backend.py,sha256=o47WUnB_h2nd_SkV0q0NTJ4vCwk23-KH5DgAm_JpKgE,7739
36
- sky/backends/backend_utils.py,sha256=-KMX7enVxTBUY_PN5EIHh3L0kPWpBr-sXWdYRy23Gc4,139005
37
- sky/backends/cloud_vm_ray_backend.py,sha256=4IE8eCtXPkvsyQEPyL2sAPrkk3v_YlQawT6txKmYHT0,256785
36
+ sky/backends/backend_utils.py,sha256=uT8h8nElxVK-rsqH1kj0HKfc2JYy6OzYh04JSVuH7kI,139546
37
+ sky/backends/cloud_vm_ray_backend.py,sha256=mRYv7YX-V86Wkzaf1iHg-36tP5Z_o7ov2Zd4P4YQRlk,257483
38
38
  sky/backends/docker_utils.py,sha256=Hyw1YY20EyghhEbYx6O2FIMDcGkNzBzV9TM7LFynei8,8358
39
39
  sky/backends/local_docker_backend.py,sha256=r80BGJZmAH8F49v6Y_pG3_pHmW5LQEQRusLkKoYoe9Q,17047
40
40
  sky/backends/wheel_utils.py,sha256=IUruJijm5854UGDdSayHbHzjjWRM46bATK1nSnK44xY,11071
@@ -43,7 +43,7 @@ sky/benchmark/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
43
43
  sky/benchmark/benchmark_state.py,sha256=X8CXmuU9KgsDRhKedhFgjeRMUFWtQsjFs1qECvPG2yg,8723
44
44
  sky/benchmark/benchmark_utils.py,sha256=7rf-iHt6RXZ_pnBBWOMwcdodHQW69x27xNyx0yVog1U,26385
45
45
  sky/client/__init__.py,sha256=pz6xvVSd9X-gwqbsDL0E9QOojYqM0KAD0j-NCyCIF1k,38
46
- sky/client/cli.py,sha256=DfGIn_2oI3yh5p5okxFC_NRPrHLC1yzeMeghSW4_A3w,244358
46
+ sky/client/cli.py,sha256=ZzT7udoKCJURwnU0ZHIbFdIpLEgJMgQ26Rv3q2LIfFY,244411
47
47
  sky/client/common.py,sha256=E_5cjxd8fWRB7fU1yfIbiyQf-IyVhpD5KkB7Fl3cQEI,15215
48
48
  sky/client/oauth.py,sha256=sNJ_DMsSTcxluj5FeNQ2IafZJLImRFmCAZ79bXeABn4,2871
49
49
  sky/client/sdk.py,sha256=txybH3mT06QUJC4wKKyeg4Ef75Y99vJ3H9_AFlpAJhA,81296
@@ -58,7 +58,7 @@ sky/clouds/gcp.py,sha256=WFD5afjCrQyh63w6U2pATrsEIYpSg-aEUEU4sEflkbo,67369
58
58
  sky/clouds/ibm.py,sha256=9_7EGmCtYznJSvAC5reKAwTtb-ZRmhHZSrUKHF9CVBg,22352
59
59
  sky/clouds/kubernetes.py,sha256=uIBtKyGEVNybsuCTDQWTrpX8HkbFgi7jd5eJxkQYD_Q,39963
60
60
  sky/clouds/lambda_cloud.py,sha256=TAmc7K_YIg5Ixbftby0YqjNmA-4dWd__C78USa0_DbU,13037
61
- sky/clouds/nebius.py,sha256=biz0o9qwJuGG22V6KE3kYqen-v2XKf2nT8qlAWG1QdA,16210
61
+ sky/clouds/nebius.py,sha256=fMOebViDVDHRqMw-jYose9rCVhQy9aigpKJXdNJm_xE,18655
62
62
  sky/clouds/oci.py,sha256=w86FhaVW30Kx0BVeFweTMThWmYAWG65vgdcqqJXGjy8,28011
63
63
  sky/clouds/paperspace.py,sha256=ZdxZqwymxVMQ9S-wM_wAnS35_yFPSMgRgkvaTpXxuNM,11307
64
64
  sky/clouds/runpod.py,sha256=vqAO1CxQmnYRRwG5r30QROhBrSBHu8r674pK8fNr6XM,12769
@@ -104,60 +104,59 @@ sky/clouds/utils/azure_utils.py,sha256=NToRBnhEyuUvb-nBnsKTxjhOBRkMcrelL8LK4w6s4
104
104
  sky/clouds/utils/gcp_utils.py,sha256=YtuS4EoAMvcRnGPgE_WLENPOPWIdvhp7dLceTw_zfas,7114
105
105
  sky/clouds/utils/oci_utils.py,sha256=0YxhgZdeIHQUI1AZ86YuswsZg5HdVCIVfSTRJsSHYI0,6396
106
106
  sky/clouds/utils/scp_utils.py,sha256=MqawUhhFHHxVnn29nOI4gJ_nF665ich4Po7bsy1afsA,15948
107
- sky/dashboard/out/404.html,sha256=KaMAH_Up4wDB8zMNjoOxMMgHYoXW9Qosd-X2TwdrFio,2296
108
- sky/dashboard/out/clusters.html,sha256=drJnm_euKFHDPwesF9uo7C1CKp3Tu2ey6hmqpp2MJYo,14554
109
- sky/dashboard/out/config.html,sha256=6Ianqst8_ukOgpze5jmHfkbZNdIWQ3uEEPIQaEXkJts,15184
107
+ sky/dashboard/out/404.html,sha256=TGEg0wFuImg_K1rFqQWsJ2JPzvbyv4XmfPrUNGRczP8,2296
108
+ sky/dashboard/out/clusters.html,sha256=URSqu_O624hLeLo5aSYUdE0gnZr4-mmqu6bUKPbRqbo,14640
109
+ sky/dashboard/out/config.html,sha256=j59dwWT4vIRMQBXjZ2FY7zFkUt7JzS1W1GPmHNASmiU,15092
110
110
  sky/dashboard/out/favicon.ico,sha256=XilUZZglAl_1zRsg85QsbQgmQAzGPQjcUIJ-A3AzYn8,93590
111
- sky/dashboard/out/index.html,sha256=MxMvilhFIYdVu2RhvrVpQ4_3hyyH-pNfHnO90IyjKQg,1407
112
- sky/dashboard/out/infra.html,sha256=ZakD00u5DIYW12PcZXp-1_Gr1iDHF4yLEmJLpwQiuG0,19996
113
- sky/dashboard/out/jobs.html,sha256=EdN7tOf2AHZ0lF36cluhV8MT2JiSSqnj7ASEPZGb57E,15810
111
+ sky/dashboard/out/index.html,sha256=yO9q1pMvjdfIZRy1Z79mlEV9YeU6oVHmAb5ts4Iqwq0,1407
112
+ sky/dashboard/out/infra.html,sha256=6ut6Q5vtqQOvosT-90cQXAUaM9YdkQhGgzH3UQ4P8aY,19996
113
+ sky/dashboard/out/jobs.html,sha256=ilYnuvbIYGSOrxEKo5nVx8kpgsnOMzYoX7I5EZXV1rY,15810
114
114
  sky/dashboard/out/skypilot.svg,sha256=c0iRtlfLlaUm2p0rG9NFmo5FN0Qhf3pq5Xph-AeMPJw,5064
115
- sky/dashboard/out/users.html,sha256=hmKbib9odk1ayDFleD0b8C-FilADD6A7UHjRyVgeGss,13306
116
- sky/dashboard/out/workspaces.html,sha256=CiVQYuDVMz-1oewSJt926BrDWjg_Wh3PlfM9bpjEBxU,13128
117
- sky/dashboard/out/_next/static/HvNkg7hqKM1p0ptAcdDcF/_buildManifest.js,sha256=uC7FFH4cosGdOycfylmF_fipI6ubwNUUkTzfHOjZseA,1998
118
- sky/dashboard/out/_next/static/HvNkg7hqKM1p0ptAcdDcF/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
115
+ sky/dashboard/out/users.html,sha256=OmUoRR39C7BvBVJCIA5XNfFf5Uqr3yqV2f68f6Yxv5Q,13306
116
+ sky/dashboard/out/workspaces.html,sha256=pMh_oaXJVqSC5anW2GXsBNkXzQubZ9cH84C7XUw8hl8,13082
117
+ sky/dashboard/out/_next/static/Q32Bxr2Pby5tFDW-y5TNg/_buildManifest.js,sha256=rZvbR7EfsX4hmQq7GgwNJgEl69rMczTKhz22vSQ0npY,1948
118
+ sky/dashboard/out/_next/static/Q32Bxr2Pby5tFDW-y5TNg/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
119
119
  sky/dashboard/out/_next/static/chunks/121-8f55ee3fa6301784.js,sha256=RIwzzRiPiEGM8PV-7Wesb3CkChfz9cgvLseMyKfD_MY,9292
120
- sky/dashboard/out/_next/static/chunks/173-7db8607cefc20f70.js,sha256=eB4k1aLBieIGFo-LiDz4KSvRfzVGLUo5B6619eZDpKc,284517
121
- sky/dashboard/out/_next/static/chunks/236-90e5498a5b00ec29.js,sha256=RuE4xHxx2b8ljVd8MItjrbAsa2HmCHFyFNvHxE2XtwQ,23991
120
+ sky/dashboard/out/_next/static/chunks/236-ca00738e2f58ea65.js,sha256=uiJv3pZTw_5D1oFl2Ut2YUbhiCU9SG8jajoYafDnPnA,23833
122
121
  sky/dashboard/out/_next/static/chunks/293-351268365226d251.js,sha256=kIKGZcJd0zyOkyYylqy_sRcpCMk2bjzq5A_6-Hrt0b8,12465
123
- sky/dashboard/out/_next/static/chunks/303-2c7b0f7af571710b.js,sha256=X1u5pw3tzIbYiZlfNsMWsMu5GiNhCcpJOMYT2x9JVCk,16540
124
- sky/dashboard/out/_next/static/chunks/320-afea3ddcc5bd1c6c.js,sha256=TfRRqBkCCzHk0Hb8DUzYDRIt9ekDN9ZRdiYlDWAIiiQ,62726
122
+ sky/dashboard/out/_next/static/chunks/37-64efcd0e9c54bff6.js,sha256=cuEVX3-R8kixv2Facjg4E1uSuwyZY5ingicSZSAairU,10136
125
123
  sky/dashboard/out/_next/static/chunks/470-4d003c441839094d.js,sha256=9pWbenfMEX_WfceKxPD5sfdzwackdYUIdNKnyiHzoPw,22281
126
- sky/dashboard/out/_next/static/chunks/578-9146658cead92981.js,sha256=4oCNy2OJVJbQJGnwwSQhniyuaOnx8--bK56ZqDUxypQ,10169
127
- sky/dashboard/out/_next/static/chunks/843-256ec920f6d5f41f.js,sha256=v0hr9xIP0ayaBw1drG0Q_Z2Fa2PoNALKjVjGEc9lddc,15631
128
- sky/dashboard/out/_next/static/chunks/856-59a1760784c9e770.js,sha256=7ULJdG5h3TJdQKrAxoW33KAhnEunLx4DcCxdsgjYgno,23207
124
+ sky/dashboard/out/_next/static/chunks/614-3d29f98e0634b179.js,sha256=JllLxIGISain5yHH3XMUvyqvXYtqflIN_z2h3J7xoJk,284557
125
+ sky/dashboard/out/_next/static/chunks/682-f3f1443ed2fba42f.js,sha256=M5sR-4RZVYf9sUKM5pUknvY9hnJpSe558wpzv2JEU14,16487
126
+ sky/dashboard/out/_next/static/chunks/798-c0525dc3f21e488d.js,sha256=qROA0j-IKFdZFhQdWglA67iuCH8pf6mQRDqD6Q4hy00,38450
127
+ sky/dashboard/out/_next/static/chunks/843-786c36624d5ff61f.js,sha256=K32I4DcgHhwuliF47ZVauksEx3xL5xKz6Zc9_ez9iLw,15559
128
+ sky/dashboard/out/_next/static/chunks/856-02e34c9fc5945066.js,sha256=3Vrg3qHNxYt5RbGWxnYwd6EHQO9T20NgsSuKiIVAkFg,23332
129
129
  sky/dashboard/out/_next/static/chunks/937.f97f83652028e944.js,sha256=3G2YlQgxD17Z7GeznWGDwYSKEB8W4FZFfLKEXmtBiWE,54452
130
130
  sky/dashboard/out/_next/static/chunks/973-1a09cac61cfcc1e1.js,sha256=QoNq70edEqfx5pik8iQhhFhU71DxhfND_wu3mLnEnmw,13476
131
- sky/dashboard/out/_next/static/chunks/9f96d65d-5a3e4af68c26849e.js,sha256=wJGR2e5odhfpiO3-Y0iIQVUJ5rBhfM_9tSb5CIDHcaE,134395
132
131
  sky/dashboard/out/_next/static/chunks/fd9d1056-2821b0f0cabcd8bd.js,sha256=ce2WOATL1LdzsWouKQ-1NCiBQJmcykgzqP8wCp1yqbE,172831
133
132
  sky/dashboard/out/_next/static/chunks/framework-87d061ee6ed71b28.js,sha256=dh6TKdXcSRoGP4HqHe2uwzWCZBPz16dyTWufLsxeRvM,140942
134
133
  sky/dashboard/out/_next/static/chunks/main-app-241eb28595532291.js,sha256=P0_tU7pqs_pOQaw-lVzCNl6recBw5lFfkAD0jRk2uzc,115881
135
134
  sky/dashboard/out/_next/static/chunks/main-e0e2335212e72357.js,sha256=BxTmVbZDnMUQvQd57MEl1Ui0VZaNmwLOviY7h_xMjP0,109884
136
135
  sky/dashboard/out/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js,sha256=6QPOwdWeAVe8x-SsiDrm-Ga6u2DkqgG5SFqglrlyIgA,91381
137
- sky/dashboard/out/_next/static/chunks/webpack-deda68c926e8d0bc.js,sha256=e2NBwO2sLf3MuwMPPaYQ5bWK1OwP5mbuzaaLkDLCJJ4,3620
138
- sky/dashboard/out/_next/static/chunks/pages/_app-a631df412d8172de.js,sha256=lqFYBo3gcDUyNT-vVEqyoXJkFmFKu6i4wvssOQiqQhE,2097
136
+ sky/dashboard/out/_next/static/chunks/webpack-f27c9a32aa3d9c6d.js,sha256=ZmruoC8C86_-mqwGF3AsHiR0CXx1Skr-vPg8cTjrZxA,3605
137
+ sky/dashboard/out/_next/static/chunks/pages/_app-f19ea34b91c33950.js,sha256=lqFYBo3gcDUyNT-vVEqyoXJkFmFKu6i4wvssOQiqQhE,2097
139
138
  sky/dashboard/out/_next/static/chunks/pages/_error-1be831200e60c5c0.js,sha256=TZqrus06KKPx-CMABDMPKF7w-NQ5s2gwJAM8Huyl7qU,247
140
- sky/dashboard/out/_next/static/chunks/pages/clusters-943992b84fd6f4ee.js,sha256=OGDlScOO6R0_7coQ7QgON-naAGvoN4qvfJT5F7JYrtU,575
141
- sky/dashboard/out/_next/static/chunks/pages/config-7c48919fe030bc43.js,sha256=0b3ep_iCrhktR2NdYzrCA6S1aXg6Y-CtPy3I-ey82XM,10956
139
+ sky/dashboard/out/_next/static/chunks/pages/clusters-f37ff20f0af29aae.js,sha256=qnQjkj7_GDcLsr-2PTQ02UMlr7ZAQ2pFnNiGmioAmfQ,578
140
+ sky/dashboard/out/_next/static/chunks/pages/config-3c6a2dabf56e8cd6.js,sha256=Wu9ah0cxC2qtRju4VVJHRMczJOLmaN75LbIHj0OiRN0,10905
142
141
  sky/dashboard/out/_next/static/chunks/pages/index-6b0d9e5031b70c58.js,sha256=Fp2FKnKQtORK_5O7MEQ08tlTk7ewMLuecw_EY5g4Dlg,513
143
- sky/dashboard/out/_next/static/chunks/pages/infra-d4c6875c88771e17.js,sha256=fyHcfpdkSws6Szg-I1I_hNtTiAQReAUNHaabzUPvkcA,561
144
- sky/dashboard/out/_next/static/chunks/pages/jobs-a4efc09e61988f8d.js,sha256=YsLWwwgrQke4KyYfLxKDttC5-JUHKrhrorwr_2hphV8,603
145
- sky/dashboard/out/_next/static/chunks/pages/users-b2634885d67c49a6.js,sha256=rBIuOujFfFn5nznvB-CgsZvOoFDw2NFPR-uwO7QSTwc,10912
146
- sky/dashboard/out/_next/static/chunks/pages/workspaces-610c49ae3619ee85.js,sha256=9Gmr2cE9-Mrhc_dVbetBKszoOC1CqtM4bjux0om_Q7E,12188
147
- sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-9506c00257d10dbd.js,sha256=7PWOxAh5pcx6HUdOOlkRpPSQHfKzmNUdKBiMYLmBKi0,4860
148
- sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]/[job]-159bffb2fa34ed54.js,sha256=6nXL2C-VEOBQC6jRqUy8mznS7drzuePOJaYqA8S815k,15480
149
- sky/dashboard/out/_next/static/chunks/pages/infra/[context]-909f1ceb0fcf1b99.js,sha256=-WkwdLanMhoPYE7lqR8IcvjVfp7uZpNAPPRyEsSQCWM,571
150
- sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-6b80e9e0c6aa16a1.js,sha256=Z4KmvZZB9ynCnLiAHYF7Ym85rNWiFaNQgNy9kP7c974,20260
151
- sky/dashboard/out/_next/static/chunks/pages/workspace/new-579b3203c7c19d84.js,sha256=OPFOPb048yhMxq9ltjC-NcZ_xaDRLIWH0jv1JG2MbBA,3546
152
- sky/dashboard/out/_next/static/chunks/pages/workspaces/[name]-9388e38fac73ee8f.js,sha256=WSoOBat7o9pZ1LwQRsaBXRvKlaeatYmDf2yO7OQqtKo,573
153
- sky/dashboard/out/_next/static/css/ffd1cd601648c303.css,sha256=uu8ORNMhCFOYRwCTsKdG5SqMfYo5pypZkfo4yVpUMcs,37714
154
- sky/dashboard/out/clusters/[cluster].html,sha256=0JIQeAePJUG2nu4nqcHtYv7hNbsGKyMNJMrpnho_oqk,2159
155
- sky/dashboard/out/clusters/[cluster]/[job].html,sha256=C-VzYVy0W8Sxq568j8jPBnICwyod73Hdzcse52u8IgQ,1653
156
- sky/dashboard/out/infra/[context].html,sha256=qrVIq8BiU1f5YiSiAOOTdHimJtuLhSXFlLsQfKwJYx4,20020
157
- sky/dashboard/out/jobs/[job].html,sha256=YgTw8LkiEYT2U4ZRAYsDB2NO3vsAniihJvKRvD9PbSQ,1621
142
+ sky/dashboard/out/_next/static/chunks/pages/infra-7b4b8e7fa9fa0827.js,sha256=XzUoYkFoJ98z2AknTL5RxnIlWjjTTn1IoSrnNwwJYB4,561
143
+ sky/dashboard/out/_next/static/chunks/pages/jobs-78a6c5ba3e24c0cf.js,sha256=pfsU_vKAJ6mf1e3peQG301Kif2xJRiramKB9nhmMjbs,563
144
+ sky/dashboard/out/_next/static/chunks/pages/users-89f9212b81d8897e.js,sha256=92qnB-zELDvIeTRDJoOVjKFOYJw0tWVZmqE1-O8diLM,10872
145
+ sky/dashboard/out/_next/static/chunks/pages/workspaces-17d41826537196e7.js,sha256=Rkkl4lt7R6UT38lR9DPIGupYHwTON-xw3ftqYOcrSOY,12321
146
+ sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]-20835df7b0c4599c.js,sha256=VfG-B5u6g5tC2Xut6crWFUA-ziMlkxIJK43kKz_rxpI,6828
147
+ sky/dashboard/out/_next/static/chunks/pages/clusters/[cluster]/[job]-42d3656aba9d2e78.js,sha256=b_aiPN10G0tsiXxMlXgvcJ78EbObOR04_VoZEgvn-ZE,15521
148
+ sky/dashboard/out/_next/static/chunks/pages/infra/[context]-342bc15bb78ab2e5.js,sha256=GrTozxI1XMqIXlyYgUCFaToZ7_JWaTv9pEgtksCxQA8,571
149
+ sky/dashboard/out/_next/static/chunks/pages/jobs/[job]-258decb65e95f520.js,sha256=BNQeXE43u8CcTzwbS3KnA7adu0uCIOFkgt9B7vPaFNs,23543
150
+ sky/dashboard/out/_next/static/chunks/pages/workspace/new-198b6e00d7d724c5.js,sha256=dEjlIoAb-DxdPCJGnraVc8D49-6lixPI4u1G1R6z7Cg,3542
151
+ sky/dashboard/out/_next/static/chunks/pages/workspaces/[name]-2ce792183b03c341.js,sha256=S1AlYNpHGN4ttwMtA3BXY5KK4TRPvbC66C984VJU3RA,569
152
+ sky/dashboard/out/_next/static/css/5411b9fb0a783c1c.css,sha256=ojUCv5ReB51RcuBeyVTlIUZBkxG_2xBHBGjsgbPNTmY,38028
153
+ sky/dashboard/out/clusters/[cluster].html,sha256=Kpyxs_36LFjcYqijo1HQ-8hjrbP1lqjCd7qXqlwmBjs,2245
154
+ sky/dashboard/out/clusters/[cluster]/[job].html,sha256=LaBCUuW5hHVpMsSV0hEYyLn--xIZGG9pqX9hKEWKGT8,1653
155
+ sky/dashboard/out/infra/[context].html,sha256=PrWj9EidA_geifUYZp4TG5NxbPLG0tveCXkzZpdtcCA,20020
156
+ sky/dashboard/out/jobs/[job].html,sha256=GdVeuUcMrWQrpCj8ZXIVwHOSfx7cYJUSVOAeVQSDiNI,1708
158
157
  sky/dashboard/out/videos/cursor-small.mp4,sha256=8tRdp1vjawOrXUar1cfjOc-nkaKmcwCPZx_LO0XlCvQ,203285
159
- sky/dashboard/out/workspace/new.html,sha256=WoDzLNpZXH34dnOXzMgBlueuIKpUNmd3_LxgZUapWe8,12899
160
- sky/dashboard/out/workspaces/[name].html,sha256=y4VUcODFRvAzfREPVCPnROg3JOZ4E55wosFlmucmPVM,2336
158
+ sky/dashboard/out/workspace/new.html,sha256=luuF2JJlEC3uGO3SDnaTB-rrRj8LRXGQRfqZYH3kWeo,12807
159
+ sky/dashboard/out/workspaces/[name].html,sha256=9lsd2hif1219Nb3mVaiAR9FEZ6BbjtpbyaKvNx567FQ,2244
161
160
  sky/data/__init__.py,sha256=Nhaf1NURisXpZuwWANa2IuCyppIuc720FRwqSE2oEwY,184
162
161
  sky/data/data_transfer.py,sha256=N8b0CQebDuHieXjvEVwlYmK6DbQxUGG1RQJEyTbh3dU,12040
163
162
  sky/data/data_utils.py,sha256=CNYPM963qby5ddW0DZNbhiWXkqgB9MHh_jrC5DoBctM,33437
@@ -165,12 +164,12 @@ sky/data/mounting_utils.py,sha256=6f1d0EeBj4dY-LQPwh8EtI6yoEHZawDgHaC8LChDS2s,21
165
164
  sky/data/storage.py,sha256=WZNcqYmbQW9L00DyIdRwA4xdJCj9dKvud0ZmW1sQ2vo,236661
166
165
  sky/data/storage_utils.py,sha256=u8PTKUkE7qYwr1GgAJ45pI5YUkhUaPQPRUz_CZZo_HI,13785
167
166
  sky/jobs/__init__.py,sha256=qoI53-xXE0-SOkrLWigvhgFXjk7dWE0OTqGPYIk-kmM,1458
168
- sky/jobs/constants.py,sha256=6AMgCgL2nnoKeDY1pS9gmRd03vu4dzd188iyuSkABhM,3329
167
+ sky/jobs/constants.py,sha256=3cVKko5xr55DhYV_ZlhMZ57TvxhIZTRFJbMrqJwy8ww,3329
169
168
  sky/jobs/controller.py,sha256=1MHXM4fmPdVuOPeqsOpNxyTFUPlJWC9JGmFytaG35aY,31211
170
169
  sky/jobs/recovery_strategy.py,sha256=a9A4W-6U3KU-pjkWiFpIdgTHC8W26-jYrmi4vzU9iOg,28818
171
170
  sky/jobs/scheduler.py,sha256=QMpApgCIh2v46bjx3cNxDJWVphn2g50kBMTdTM0uy84,13865
172
- sky/jobs/state.py,sha256=odlhsMhciiSMeggbiyXmLJ_U6XFyOLMSSx4RffThhTg,49811
173
- sky/jobs/utils.py,sha256=Nn3Mkr9736CctEDyTOQ2hWTcwTk52fxMKQC-7JZcYAQ,62280
171
+ sky/jobs/state.py,sha256=9DPYD6Zo83yfzjvUxFN-R53PNV0ewke76HFMlNjxY6Q,50608
172
+ sky/jobs/utils.py,sha256=4rY2UPpU9KFLQ1Fq08gVCjCZoL0wlpPnroquPBG5iu0,62410
174
173
  sky/jobs/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
175
174
  sky/jobs/client/sdk.py,sha256=BEhGmXq97ZBJtpipTSUzgGFzR1QkVkQva-rBsS331oI,10545
176
175
  sky/jobs/dashboard/dashboard.py,sha256=JKg8cCH_Y0sf3MoDTx85BghVEXWpp8ItPLshp09-_Js,7618
@@ -187,7 +186,7 @@ sky/provision/docker_utils.py,sha256=ev_f5ZebMZ4NYe6OxleisBO8EAB6W0FHFJlaqVK3ugE
187
186
  sky/provision/instance_setup.py,sha256=mI-V89Fa0MzLP74YJ8Ns-dgR-Y_CkAxLdrUudTdmKGk,24435
188
187
  sky/provision/logging.py,sha256=_sx_TH6nLt0FF3myS5pEZbiMhXyl4s1XwMidu_TTBUw,2091
189
188
  sky/provision/metadata_utils.py,sha256=LrxeV4wD2QPzNdXV_npj8q-pr35FatxBBjF_jSbpOT0,4013
190
- sky/provision/provisioner.py,sha256=da2s4cB61lZG8qPNwyVxindkCl6FzF9bumCcZJOE1Z0,30873
189
+ sky/provision/provisioner.py,sha256=6NL_zln8Q9P63dYyZ7CBlYsaVPD_5RnyqW20fW8lyz0,30925
191
190
  sky/provision/aws/__init__.py,sha256=mxq8PeWJqUtalDozTNpbtENErRZ1ktEs8uf2aG9UUgU,731
192
191
  sky/provision/aws/config.py,sha256=2PifaPQpD-2Kxqd6843sCUIjEhJR3lI3cJRXE1ox_ls,26728
193
192
  sky/provision/aws/instance.py,sha256=cVW0aQU0Jvo86u4aqfbq29-XrEcgMFFZNIkVS2PvgH8,42295
@@ -224,7 +223,7 @@ sky/provision/kubernetes/constants.py,sha256=dZCUV8FOO9Gct80sdqeubKnxeW3CGl-u5mx
224
223
  sky/provision/kubernetes/instance.py,sha256=c-Cp2Y7ix8utxTJ3QyityZ0Ay8yX7wZxTBF1G3jeWIs,59525
225
224
  sky/provision/kubernetes/network.py,sha256=PEy7lZvmoysmormB49JW245tRcy4owAXzDGV5KHVPEI,12672
226
225
  sky/provision/kubernetes/network_utils.py,sha256=6uck1aBkgtm-gGBitU3_hEUp8j14ZuG_4Xo70ReZYXs,11654
227
- sky/provision/kubernetes/utils.py,sha256=r9qaMVJDcod_oGDUagYN9u5oY5b4KJAp_S46lUKdIeM,132342
226
+ sky/provision/kubernetes/utils.py,sha256=mJnaW9veCDn9gQKAq1CBD3rlAKaLHn1KxZNEkHjaTug,132393
228
227
  sky/provision/kubernetes/manifests/fusermount-server-daemonset.yaml,sha256=S87GNAbDqgTrLuxF-afPAqQ0V-i41El4s_9KBZMuaag,1331
229
228
  sky/provision/lambda_cloud/__init__.py,sha256=6EEvSgtUeEiup9ivIFevHmgv0GqleroO2X0K7TRa2nE,612
230
229
  sky/provision/lambda_cloud/config.py,sha256=jq1iLzp4Up61r4JGxvtpVbJlgXnea3LHYQhCQyyl7ik,272
@@ -273,13 +272,13 @@ sky/provision/vsphere/common/vim_utils.py,sha256=y_i_bh6jxAEfaoVKbgVB02vWE0HbxP9
273
272
  sky/serve/__init__.py,sha256=jlwErB4VeKh0wp9FkTIQoE5JQvc6KIB-vrqhtsJ2q-E,1810
274
273
  sky/serve/autoscalers.py,sha256=kHEL3U2bW50NByiJhv5j64JKjgxKtHwO5dswlJQ1uEA,32698
275
274
  sky/serve/constants.py,sha256=TdavR0D3uNISK9GXasZhBvIp3wBbRKifRrN9cWOzXDU,5002
276
- sky/serve/controller.py,sha256=jtzWHsLHnVPQ727ZpDZTUpGTtIOssbnQpXeWOyAuW_s,11886
275
+ sky/serve/controller.py,sha256=TBp0PtkSWGWzNTNnWyuetg_cGXnup7ygamS4K-b9L5M,11926
277
276
  sky/serve/load_balancer.py,sha256=2nkMPRvy-h7hJL4Qq__tkT8nIAVC_nmjyXf8mMGYEFk,13658
278
277
  sky/serve/load_balancing_policies.py,sha256=Ssr0GtHKyzzAIEOUAMCLvND5rapmrpxI-OQemf3dgxU,5177
279
- sky/serve/replica_managers.py,sha256=kODwyRqtETu97J6prWPz7sHZtuKaAxD0aDKQ7rKXONw,64529
278
+ sky/serve/replica_managers.py,sha256=x8c1tRIQMN4dVzVUHJpZYSEBtEjOCbcwmqZ_GkVzpnc,64785
280
279
  sky/serve/serve_state.py,sha256=xIA5PeLiogLnDNWGVfCT_fV9DvZ8bbKExmACpLv7WN4,21160
281
280
  sky/serve/serve_utils.py,sha256=ErpByT7SL_z7thgp0kmdXO3dm4qGdVJ8-Vbkj3-bvLw,46747
282
- sky/serve/service.py,sha256=uDb3FG-mkGlC9a7PS5PWQo2y_lgjzBe5_aRgPXjgm84,14282
281
+ sky/serve/service.py,sha256=f-Lpxl9YtIprcE3Wr0JUslSvEDylNFe-fyaKIJeKb2c,14315
283
282
  sky/serve/service_spec.py,sha256=t7wh7sx68DKjPyrk1Ub-c1ZjkWD8ehG-YOj9CNdC9qQ,18552
284
283
  sky/serve/spot_placer.py,sha256=auRlYZNg8uIW-lxiirxpDP-iIaJtkrhesm6OGMgwPq4,11288
285
284
  sky/serve/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -288,11 +287,11 @@ sky/serve/server/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,
288
287
  sky/serve/server/core.py,sha256=QRXTDSXAvLZNUCJcVuwWIOCHP96lpiQgxhJNlDWfcQw,41246
289
288
  sky/serve/server/server.py,sha256=A9K37a0nQgZeN3eKWv62Oh2C5TSAReTZ9pHmztqlI-c,4396
290
289
  sky/server/__init__.py,sha256=MPPBqFzXz6Jv5QSk6td_IcvnfXfNErDZVcizu4MLRow,27
291
- sky/server/common.py,sha256=VDJ4CEPNcs6b2EwHaqaCptqfCEs_j8X_0b95DMRCeIw,30933
290
+ sky/server/common.py,sha256=9s6-31tLRaNA81YT1YAcCdDHEu-IkcjglVPYTfl5-QY,31094
292
291
  sky/server/config.py,sha256=XWf5Kw4am6vMO5wcyWevbQAFH-dmKb7AMEgDzD083-M,8538
293
292
  sky/server/constants.py,sha256=hkDwRo3K6xx9TRb7i8zdZMUEue1oP6G6I0B-p9kprbY,1193
294
293
  sky/server/server.py,sha256=EqUi7yyz9XnDXIuFhXSYcIHSiss9vdyRzs4iH0BEHTw,54628
295
- sky/server/stream_utils.py,sha256=4JMHgtoXPpCT8JwtqyUcDQ9IdZFir9om0JaCRr8rvbQ,5849
294
+ sky/server/stream_utils.py,sha256=yyfKLcaB3RDC8BfhLLiOQW-nQE05ojUsQ26K0teSea0,6878
296
295
  sky/server/uvicorn.py,sha256=4bTlvqQiykYDEIfV6Ta9KXWKZUtSfIrhDeT1F9yQuvs,3323
297
296
  sky/server/html/log.html,sha256=TSGZktua9Ysl_ysg3w60rjxAxhH61AJnsYDHdtqrjmI,6929
298
297
  sky/server/html/token_page.html,sha256=eUndS5u1foL9vaWGPRTLMt7lCzD1g0wYJ2v_EeeFzlc,7046
@@ -352,7 +351,7 @@ sky/templates/jobs-controller.yaml.j2,sha256=t4X-W9HJ8sWvVJq1axeGPFmnAYcDeG8hcwz
352
351
  sky/templates/kubernetes-ingress.yml.j2,sha256=73iDklVDWBMbItg0IexCa6_ClXPJOxw7PWz3leku4nE,1340
353
352
  sky/templates/kubernetes-loadbalancer.yml.j2,sha256=IxrNYM366N01bbkJEbZ_UPYxUP8wyVEbRNFHRsBuLsw,626
354
353
  sky/templates/kubernetes-port-forward-proxy-command.sh,sha256=iw7mypHszg6Ggq9MbyiYMFOkSlXaQZulaxqC5IWYGCc,3381
355
- sky/templates/kubernetes-ray.yml.j2,sha256=G_2rwLWfBBTHwD8LSkt_W0Bz6bYCx6xPZvXaS_NEmRI,40074
354
+ sky/templates/kubernetes-ray.yml.j2,sha256=-llsNTkyPPij5NQZVBWL2hJRYkiuisG8WdHIO757y7s,41109
356
355
  sky/templates/kubernetes-ssh-jump.yml.j2,sha256=k5W5sOIMppU7dDkJMwPlqsUcb92y7L5_TVG3hkgMy8M,2747
357
356
  sky/templates/lambda-ray.yml.j2,sha256=AeFThho5hPQMncrOWQ6DhEWOsAuZtdxf1gjmp_6kPJA,4747
358
357
  sky/templates/local-ray.yml.j2,sha256=FNHeyHF6nW9nU9QLIZceUWfvrFTTcO51KqhTnYCEFaA,1185
@@ -378,7 +377,7 @@ sky/utils/cluster_utils.py,sha256=s6DFRXktv6_gF_DnwDEXJ7CniifHp8CAPeGciRCbXgI,14
378
377
  sky/utils/command_runner.py,sha256=6VknLKttMwPAHGJt_ccyr3l6lXZGVoX6C3-ZtQ7WtR0,39613
379
378
  sky/utils/command_runner.pyi,sha256=SDwvKvwaK4_-l2S3bwKSHZX8tGKU5SkbKuYRDn03o7o,7810
380
379
  sky/utils/common.py,sha256=P4oVXFATUYgkruHX92cN12SJBtfb8DiOOYZtbN1kvP0,1927
381
- sky/utils/common_utils.py,sha256=T850YbVaAk3VCenBAEY99jDphA2-B1q7AcuunEkfj9E,32712
380
+ sky/utils/common_utils.py,sha256=xSB7WWk88tuEDZrL0CZ41GEucCkUIJ4GNWIlWzGMuUA,34774
382
381
  sky/utils/config_utils.py,sha256=v8yZcr8OvEfXmBDYcdOj3U-AH1XERY76zGJMNdqzvqc,10339
383
382
  sky/utils/context.py,sha256=yxNlkVV9_7_0bnXJkXXe8h9t_LbFbYzPAnWIx8aTLJI,9327
384
383
  sky/utils/context_utils.py,sha256=cby-QPmnGObjIE4K7eZ_dkWZdUo7YJUmnJr5oKf_v54,6712
@@ -394,8 +393,8 @@ sky/utils/message_utils.py,sha256=zi2Z7PEX6Xq_zvho-aEZe_J7UvpKOLdVDdGAcipRQPU,26
394
393
  sky/utils/registry.py,sha256=I08nS0rvCF-xR5GEZoHEVgN1jcOeglz77h7xPpBCIjU,4179
395
394
  sky/utils/resources_utils.py,sha256=oxHFiISc0Y68gCGhTw4ep6bJ6Fi21epMyeu3EN20Smc,11673
396
395
  sky/utils/rich_console_utils.py,sha256=wPvAlshaFHuMZSjiDnaK3OSBppZLBjAn-lj7AvxNBQk,553
397
- sky/utils/rich_utils.py,sha256=ZTXdFJp--4CJDt2ANQz0VICLPc2V7llgA6LelHdG9Mw,14188
398
- sky/utils/schemas.py,sha256=hf2aDWd7q5vsJTlpmlhSaZcd1USSkticDh4-bd_qMuE,42452
396
+ sky/utils/rich_utils.py,sha256=EmtLN6U49SKiANTGmqgZXICXEnDLJW9EPpw6O4-FVUE,14432
397
+ sky/utils/schemas.py,sha256=J8sKJxyXckF3LA-STaMJIMF5n4pIvNbxu5DaOXcorDc,43128
399
398
  sky/utils/status_lib.py,sha256=zn_MSuRYQdNKF8pnFOGQ54X_s_R7dyqWS6Q3a9zENw8,1512
400
399
  sky/utils/subprocess_utils.py,sha256=3euz4h7B-tHulmjhQUkY9oWUA0Np5hlL8kHdTHHZOs0,16060
401
400
  sky/utils/timeline.py,sha256=ob6s3bc7nwAuSI76yLKBrSR5bzOHnOhbozz1avwoet4,4070
@@ -424,9 +423,9 @@ sky/utils/kubernetes/ssh_jump_lifecycle_manager.py,sha256=Kq1MDygF2IxFmu9FXpCxqu
424
423
  sky/workspaces/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
425
424
  sky/workspaces/core.py,sha256=YtmfIwq26MBQqI9eKdgiVpCq-5b-c8SHURJzjYsK-0k,16813
426
425
  sky/workspaces/server.py,sha256=A3jt9RSzRXTYWpmVQNW0b4-QrgfLq3eiHcRA0tutZhw,2893
427
- skypilot_nightly-1.0.0.dev20250529.dist-info/licenses/LICENSE,sha256=emRJAvE7ngL6x0RhQvlns5wJzGI3NEQ_WMjNmd9TZc4,12170
428
- skypilot_nightly-1.0.0.dev20250529.dist-info/METADATA,sha256=MTXMt0ATXOjVNqn41vmNnYT0jdsz-p5Gtw4hvxWVO-E,18378
429
- skypilot_nightly-1.0.0.dev20250529.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
430
- skypilot_nightly-1.0.0.dev20250529.dist-info/entry_points.txt,sha256=StA6HYpuHj-Y61L2Ze-hK2IcLWgLZcML5gJu8cs6nU4,36
431
- skypilot_nightly-1.0.0.dev20250529.dist-info/top_level.txt,sha256=qA8QuiNNb6Y1OF-pCUtPEr6sLEwy2xJX06Bd_CrtrHY,4
432
- skypilot_nightly-1.0.0.dev20250529.dist-info/RECORD,,
426
+ skypilot_nightly-1.0.0.dev20250530.dist-info/licenses/LICENSE,sha256=emRJAvE7ngL6x0RhQvlns5wJzGI3NEQ_WMjNmd9TZc4,12170
427
+ skypilot_nightly-1.0.0.dev20250530.dist-info/METADATA,sha256=CCTRSaDYcFcPrrdqrd4M7tzbPZ1uuS3_hgDfcfIEfks,18378
428
+ skypilot_nightly-1.0.0.dev20250530.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
429
+ skypilot_nightly-1.0.0.dev20250530.dist-info/entry_points.txt,sha256=StA6HYpuHj-Y61L2Ze-hK2IcLWgLZcML5gJu8cs6nU4,36
430
+ skypilot_nightly-1.0.0.dev20250530.dist-info/top_level.txt,sha256=qA8QuiNNb6Y1OF-pCUtPEr6sLEwy2xJX06Bd_CrtrHY,4
431
+ skypilot_nightly-1.0.0.dev20250530.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- self.__BUILD_MANIFEST=function(s,c,e,a,t,r,n,u,f,i,j,k){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":["static/chunks/pages/index-6b0d9e5031b70c58.js"],"/_error":["static/chunks/pages/_error-1be831200e60c5c0.js"],"/clusters":[s,t,c,e,a,r,i,"static/chunks/pages/clusters-943992b84fd6f4ee.js"],"/clusters/[cluster]":[s,t,c,e,a,r,n,i,"static/chunks/pages/clusters/[cluster]-9506c00257d10dbd.js"],"/clusters/[cluster]/[job]":[s,c,"static/chunks/pages/clusters/[cluster]/[job]-159bffb2fa34ed54.js"],"/config":[u,s,f,c,e,"static/chunks/pages/config-7c48919fe030bc43.js"],"/infra":[s,c,e,a,j,"static/chunks/pages/infra-d4c6875c88771e17.js"],"/infra/[context]":[s,c,e,a,j,"static/chunks/pages/infra/[context]-909f1ceb0fcf1b99.js"],"/jobs":[s,t,c,e,a,r,n,"static/chunks/pages/jobs-a4efc09e61988f8d.js"],"/jobs/[job]":[s,c,"static/chunks/pages/jobs/[job]-6b80e9e0c6aa16a1.js"],"/users":[s,c,e,a,"static/chunks/pages/users-b2634885d67c49a6.js"],"/workspace/new":[u,s,t,f,c,e,a,r,n,k,"static/chunks/pages/workspace/new-579b3203c7c19d84.js"],"/workspaces":[u,s,t,f,c,e,a,r,n,"static/chunks/pages/workspaces-610c49ae3619ee85.js"],"/workspaces/[name]":[u,s,t,f,c,e,a,r,n,k,"static/chunks/pages/workspaces/[name]-9388e38fac73ee8f.js"],sortedPages:["/","/_app","/_error","/clusters","/clusters/[cluster]","/clusters/[cluster]/[job]","/config","/infra","/infra/[context]","/jobs","/jobs/[job]","/users","/workspace/new","/workspaces","/workspaces/[name]"]}}("static/chunks/173-7db8607cefc20f70.js","static/chunks/470-4d003c441839094d.js","static/chunks/293-351268365226d251.js","static/chunks/856-59a1760784c9e770.js","static/chunks/121-8f55ee3fa6301784.js","static/chunks/973-1a09cac61cfcc1e1.js","static/chunks/236-90e5498a5b00ec29.js","static/chunks/9f96d65d-5a3e4af68c26849e.js","static/chunks/320-afea3ddcc5bd1c6c.js","static/chunks/578-9146658cead92981.js","static/chunks/303-2c7b0f7af571710b.js","static/chunks/843-256ec920f6d5f41f.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();