skypilot-nightly 1.0.0.dev20241103__py3-none-any.whl → 1.0.0.dev20241105__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/clouds/aws.py +3 -2
- sky/clouds/azure.py +5 -1
- sky/jobs/dashboard/dashboard.py +3 -0
- sky/jobs/dashboard/templates/index.html +38 -5
- sky/templates/aws-ray.yml.j2 +9 -0
- {skypilot_nightly-1.0.0.dev20241103.dist-info → skypilot_nightly-1.0.0.dev20241105.dist-info}/METADATA +1 -1
- {skypilot_nightly-1.0.0.dev20241103.dist-info → skypilot_nightly-1.0.0.dev20241105.dist-info}/RECORD +12 -12
- {skypilot_nightly-1.0.0.dev20241103.dist-info → skypilot_nightly-1.0.0.dev20241105.dist-info}/LICENSE +0 -0
- {skypilot_nightly-1.0.0.dev20241103.dist-info → skypilot_nightly-1.0.0.dev20241105.dist-info}/WHEEL +0 -0
- {skypilot_nightly-1.0.0.dev20241103.dist-info → skypilot_nightly-1.0.0.dev20241105.dist-info}/entry_points.txt +0 -0
- {skypilot_nightly-1.0.0.dev20241103.dist-info → skypilot_nightly-1.0.0.dev20241105.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 = 'c24a0b3a8f9b1d8193e27f976da9f3d71867506f'
|
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.dev20241105'
|
39
39
|
__root_dir__ = os.path.dirname(os.path.abspath(__file__))
|
40
40
|
|
41
41
|
|
sky/clouds/aws.py
CHANGED
@@ -280,12 +280,12 @@ class AWS(clouds.Cloud):
|
|
280
280
|
if image_id.startswith('skypilot:'):
|
281
281
|
return DEFAULT_AMI_GB
|
282
282
|
assert region is not None, (image_id, region)
|
283
|
-
client = aws.client('ec2', region_name=region)
|
284
283
|
image_not_found_message = (
|
285
284
|
f'Image {image_id!r} not found in AWS region {region}.\n'
|
286
285
|
f'\nTo find AWS AMI IDs: https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html#examples\n' # pylint: disable=line-too-long
|
287
286
|
'Example: ami-0729d913a335efca7')
|
288
287
|
try:
|
288
|
+
client = aws.client('ec2', region_name=region)
|
289
289
|
image_info = client.describe_images(ImageIds=[image_id])
|
290
290
|
image_info = image_info.get('Images', [])
|
291
291
|
if not image_info:
|
@@ -294,7 +294,8 @@ class AWS(clouds.Cloud):
|
|
294
294
|
image_info = image_info[0]
|
295
295
|
image_size = image_info['BlockDeviceMappings'][0]['Ebs'][
|
296
296
|
'VolumeSize']
|
297
|
-
except aws.botocore_exceptions().NoCredentialsError
|
297
|
+
except (aws.botocore_exceptions().NoCredentialsError,
|
298
|
+
aws.botocore_exceptions().ProfileNotFound):
|
298
299
|
# Fallback to default image size if no credentials are available.
|
299
300
|
# The credentials issue will be caught when actually provisioning
|
300
301
|
# the instance and appropriate errors will be raised there.
|
sky/clouds/azure.py
CHANGED
@@ -175,7 +175,11 @@ class Azure(clouds.Cloud):
|
|
175
175
|
|
176
176
|
# Process user-specified images.
|
177
177
|
azure_utils.validate_image_id(image_id)
|
178
|
-
|
178
|
+
try:
|
179
|
+
compute_client = azure.get_client('compute', cls.get_project_id())
|
180
|
+
except (azure.exceptions().AzureError, RuntimeError):
|
181
|
+
# Fallback to default image size if no credentials are available.
|
182
|
+
return 0.0
|
179
183
|
|
180
184
|
# Community gallery image.
|
181
185
|
if image_id.startswith(_COMMUNITY_IMAGE_PREFIX):
|
sky/jobs/dashboard/dashboard.py
CHANGED
@@ -74,11 +74,14 @@ def home():
|
|
74
74
|
# Remove filler rows ([''], ..., ['-']).
|
75
75
|
rows = [row for row in rows if ''.join(map(str, row)) != '']
|
76
76
|
|
77
|
+
# Get all unique status values.
|
78
|
+
status_values = sorted(list(set(row[-5] for row in rows)))
|
77
79
|
rendered_html = flask.render_template(
|
78
80
|
'index.html',
|
79
81
|
columns=columns,
|
80
82
|
rows=rows,
|
81
83
|
last_updated_timestamp=timestamp,
|
84
|
+
status_values=status_values,
|
82
85
|
)
|
83
86
|
return rendered_html
|
84
87
|
|
@@ -44,6 +44,22 @@
|
|
44
44
|
.clickable {
|
45
45
|
cursor: pointer; /* This makes the cursor a pointer when hovering over the element */
|
46
46
|
}
|
47
|
+
|
48
|
+
.filter-controls {
|
49
|
+
display: flex;
|
50
|
+
gap: 10px;
|
51
|
+
align-items: center; /* This ensures vertical alignment */
|
52
|
+
margin-top: 1rem;
|
53
|
+
position: relative;
|
54
|
+
z-index: 2;
|
55
|
+
}
|
56
|
+
|
57
|
+
/* Customize the select focus/hover states */
|
58
|
+
.form-select:focus {
|
59
|
+
border-color: #dee2e6;
|
60
|
+
box-shadow: 0 0 0 0.1rem rgba(0,0,0,0.1);
|
61
|
+
}
|
62
|
+
|
47
63
|
</style>
|
48
64
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
|
49
65
|
<script
|
@@ -54,12 +70,21 @@
|
|
54
70
|
<body>
|
55
71
|
<div class="container">
|
56
72
|
<header>
|
57
|
-
<h1>
|
73
|
+
<h1>SkyPilot managed jobs</h1>
|
58
74
|
<p class="text-muted mt-4" id="last-updated"></p>
|
59
75
|
<div class="form-check form-switch">
|
60
76
|
<input class="form-check-input" type="checkbox" id="refresh-toggle" checked>
|
61
77
|
<label class="form-check-label" for="refresh-toggle">Auto-refresh (every 30s)</label>
|
62
78
|
</div>
|
79
|
+
<div class="filter-controls">
|
80
|
+
<span class="fw-medium fs-6">Filter by status:</span>
|
81
|
+
<select class="form-select" id="status-filter" style="width: auto;">
|
82
|
+
<option value="">All statuses</option>
|
83
|
+
{% for status in status_values %}
|
84
|
+
<option value="{{ status }}">{{ status }}</option>
|
85
|
+
{% endfor %}
|
86
|
+
</select>
|
87
|
+
</div>
|
63
88
|
</header>
|
64
89
|
|
65
90
|
<table class="table table-hover table-hover-selected fixed-header-table" id="jobs-table">
|
@@ -204,17 +229,25 @@
|
|
204
229
|
</script>
|
205
230
|
<script>
|
206
231
|
function filterStatus(status) {
|
207
|
-
var rows = document.querySelectorAll("#
|
208
|
-
rows.forEach(function
|
209
|
-
var statusCell = row.querySelector("td:nth-child(
|
232
|
+
var rows = document.querySelectorAll("#jobs-table tbody tr");
|
233
|
+
rows.forEach(function(row) {
|
234
|
+
var statusCell = row.querySelector("td:nth-child(10)"); // Status is in the 10th column
|
235
|
+
var statusText = statusCell.textContent.trim().split(' ')[0]; // Get first word of status
|
210
236
|
|
211
|
-
if (status === '' ||
|
237
|
+
if (status === '' || statusText === status) {
|
212
238
|
row.style.display = "";
|
213
239
|
} else {
|
214
240
|
row.style.display = "none";
|
215
241
|
}
|
216
242
|
});
|
217
243
|
}
|
244
|
+
|
245
|
+
// Add event listener for the status filter
|
246
|
+
document.addEventListener("DOMContentLoaded", function() {
|
247
|
+
document.getElementById("status-filter").addEventListener("change", function() {
|
248
|
+
filterStatus(this.value);
|
249
|
+
});
|
250
|
+
});
|
218
251
|
</script>
|
219
252
|
|
220
253
|
</body>
|
sky/templates/aws-ray.yml.j2
CHANGED
@@ -122,6 +122,15 @@ available_node_types:
|
|
122
122
|
- path: /etc/apt/apt.conf.d/10cloudinit-disable
|
123
123
|
content: |
|
124
124
|
APT::Periodic::Enable "0";
|
125
|
+
- path: /etc/apt/apt.conf.d/52unattended-upgrades-local
|
126
|
+
content: |
|
127
|
+
Unattended-Upgrade::DevRelease "false";
|
128
|
+
Unattended-Upgrade::Allowed-Origins {};
|
129
|
+
bootcmd:
|
130
|
+
- systemctl stop apt-daily.timer apt-daily-upgrade.timer unattended-upgrades.service
|
131
|
+
- systemctl disable apt-daily.timer apt-daily-upgrade.timer unattended-upgrades.service
|
132
|
+
- systemctl mask apt-daily.service apt-daily-upgrade.service unattended-upgrades.service
|
133
|
+
- systemctl daemon-reload
|
125
134
|
TagSpecifications:
|
126
135
|
- ResourceType: instance
|
127
136
|
Tags:
|
{skypilot_nightly-1.0.0.dev20241103.dist-info → skypilot_nightly-1.0.0.dev20241105.dist-info}/RECORD
RENAMED
@@ -1,4 +1,4 @@
|
|
1
|
-
sky/__init__.py,sha256=
|
1
|
+
sky/__init__.py,sha256=KPG1pZjMsW9mwIrklMgLfKnzG4EXAac9U_tEhB9VUrE,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
|
@@ -40,8 +40,8 @@ sky/benchmark/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
40
40
|
sky/benchmark/benchmark_state.py,sha256=X8CXmuU9KgsDRhKedhFgjeRMUFWtQsjFs1qECvPG2yg,8723
|
41
41
|
sky/benchmark/benchmark_utils.py,sha256=eb-i6zYoo-Zkod-T9qtCu1FcYLw--Yyos1SyibUPZNE,26194
|
42
42
|
sky/clouds/__init__.py,sha256=WuNIJEnZmBO72tU5awgaaL3rdvFRSkgaYNNeuY68dXo,1356
|
43
|
-
sky/clouds/aws.py,sha256=
|
44
|
-
sky/clouds/azure.py,sha256=
|
43
|
+
sky/clouds/aws.py,sha256=2STW4eaCEtxre96yVagUcewNHiYGmxHKITNEQvgBmww,49539
|
44
|
+
sky/clouds/azure.py,sha256=38eUcB1_lt5FvDWo-G_pKIIsT1c_bCU2AifEYo7KX9Y,30756
|
45
45
|
sky/clouds/cloud.py,sha256=A5F4a71ciPyljWEs6vT-4RmdGT-AE9NkhS8gJ4Vgi_I,35165
|
46
46
|
sky/clouds/cloud_registry.py,sha256=oLoYFjm_SDTgdHokY7b6A5Utq80HXRQNxV0fLjDdVsQ,2361
|
47
47
|
sky/clouds/cudo.py,sha256=UiY273Sln7VOYDYx93yWiWH_RLlOKZ2cm7mA31ld4A8,13094
|
@@ -100,9 +100,9 @@ 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
|
103
|
-
sky/jobs/dashboard/dashboard.py,sha256=
|
103
|
+
sky/jobs/dashboard/dashboard.py,sha256=FXVQAWjAuQQTfAGlTCD-Xb9LckC5I4NhGwiBZy8Avo8,3186
|
104
104
|
sky/jobs/dashboard/static/favicon.ico,sha256=uYlvgxSM7gjBmXpZ8wydvZUPAbJiiix-rc2Xe5mma9s,15086
|
105
|
-
sky/jobs/dashboard/templates/index.html,sha256=
|
105
|
+
sky/jobs/dashboard/templates/index.html,sha256=su1tqgcsXNl1lGl9hfIR6ig1f531OO57x1Tc2mNDK7U,11139
|
106
106
|
sky/provision/__init__.py,sha256=UhYsGRribEyK1--PPT0Dom9051jlpdn8UCNhO8qpPOc,6262
|
107
107
|
sky/provision/common.py,sha256=E8AlSUFcn0FYQq1erNmoVfMAdsF9tP2yxfyk-9PLvQU,10286
|
108
108
|
sky/provision/constants.py,sha256=oc_XDUkcoLQ_lwDy5yMeMSWviKS0j0s1c0pjlvpNeWY,800
|
@@ -218,7 +218,7 @@ sky/skylet/ray_patches/log_monitor.py.patch,sha256=CPoh3U_ogOHrkMOK7jaIRnwdzxjBT
|
|
218
218
|
sky/skylet/ray_patches/resource_demand_scheduler.py.patch,sha256=AVV-Hw-Rxw16aFm4VsyzayX1QOvwmQuM79iVdSjkSl4,658
|
219
219
|
sky/skylet/ray_patches/updater.py.patch,sha256=ZNMGVYICPBB44jLbEx2KvCgIY7BWYdDv3-2b2HJWmAQ,289
|
220
220
|
sky/skylet/ray_patches/worker.py.patch,sha256=_OBhibdr3xOy5Qje6Tt8D1eQVm_msi50TJbCJmOTxVU,565
|
221
|
-
sky/templates/aws-ray.yml.j2,sha256=
|
221
|
+
sky/templates/aws-ray.yml.j2,sha256=fJUwkgXwkuackZI3UD7Fum4iJpkZttl6Jwy3MtYqL1I,8547
|
222
222
|
sky/templates/azure-ray.yml.j2,sha256=uUneIfT5vTLUCvrZXiv2dsd3gFqLH2FK632oBruOO_k,6237
|
223
223
|
sky/templates/cudo-ray.yml.j2,sha256=SEHVY57iBauCOE2HYJtYVFEKlriAkdwQu_p86a1n_bA,3548
|
224
224
|
sky/templates/fluidstack-ray.yml.j2,sha256=t8TCULgiErCZdtFmBZVsA8ZdcqR7ccwsmQhuDFTBEAU,3541
|
@@ -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.dev20241105.dist-info/LICENSE,sha256=emRJAvE7ngL6x0RhQvlns5wJzGI3NEQ_WMjNmd9TZc4,12170
|
278
|
+
skypilot_nightly-1.0.0.dev20241105.dist-info/METADATA,sha256=9ZfrVo53ijjnGcFaUYwHlYlHq2Hy7NlHs715qguqkSU,19708
|
279
|
+
skypilot_nightly-1.0.0.dev20241105.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
|
280
|
+
skypilot_nightly-1.0.0.dev20241105.dist-info/entry_points.txt,sha256=StA6HYpuHj-Y61L2Ze-hK2IcLWgLZcML5gJu8cs6nU4,36
|
281
|
+
skypilot_nightly-1.0.0.dev20241105.dist-info/top_level.txt,sha256=qA8QuiNNb6Y1OF-pCUtPEr6sLEwy2xJX06Bd_CrtrHY,4
|
282
|
+
skypilot_nightly-1.0.0.dev20241105.dist-info/RECORD,,
|
File without changes
|
{skypilot_nightly-1.0.0.dev20241103.dist-info → skypilot_nightly-1.0.0.dev20241105.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|
File without changes
|