Skip to content

Commit da1419a

Browse files
committed
skypilot: 0.8.1 -> 0.12.0
1 parent cd3915e commit da1419a

1 file changed

Lines changed: 230 additions & 32 deletions

File tree

Lines changed: 230 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,244 @@
11
{
22
lib,
3+
pkgs,
34
fetchFromGitHub,
45
python3Packages,
6+
buildNpmPackage,
7+
writableTmpDirAsHomeHook,
58
}:
6-
7-
python3Packages.buildPythonApplication (finalAttrs: {
9+
let
810
pname = "skypilot";
9-
version = "0.8.1";
11+
version = "0.12.0";
1012

1113
src = fetchFromGitHub {
1214
owner = "skypilot-org";
1315
repo = "skypilot";
14-
tag = "v${finalAttrs.version}";
15-
hash = "sha256-jLjYsBkb5Tba3q/mdqCWK04FLg0pEdHyZH3vuMIP6tg=";
16+
tag = "v${version}";
17+
hash = "sha256-zxkduComvFuSbWnWSw1PYalGdVhiwCIjElXEg7VPw88=";
18+
};
19+
20+
dashboard = buildNpmPackage {
21+
inherit pname version src;
22+
23+
sourceRoot = "${src.name}/sky/dashboard";
24+
npmDepsHash = "sha256-8uZzkDJkaDPFXXsGy29jkaw6g8bPe3drbboYHHa6YuU=";
25+
26+
installPhase = ''
27+
mkdir -p $out
28+
cp -r out/* $out/
29+
'';
1630
};
31+
in
32+
python3Packages.buildPythonApplication (finalAttrs: {
33+
inherit pname version src;
1734

1835
pyproject = true;
36+
pythonRelaxDeps = true;
37+
38+
nativeBuildInputs = [
39+
writableTmpDirAsHomeHook
40+
];
41+
42+
env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
43+
44+
postPatch = ''
45+
sed -i 's/casbin/pycasbin/g' sky/setup_files/dependencies.py
46+
sed -i '/buildkite-test-collector/d' pyproject.toml
47+
'';
48+
49+
build-system = with python3Packages; [
50+
setuptools
51+
setuptools-scm
52+
];
53+
54+
# https://github.com/skypilot-org/skypilot/blob/master/sky/setup_files/dependencies.py
55+
dependencies =
56+
with python3Packages;
57+
[
58+
aiohttp
59+
aiofiles
60+
aiosqlite
61+
alembic
62+
asyncpg
63+
bcrypt
64+
cachetools
65+
click
66+
colorama
67+
cryptography
68+
filelock
69+
fastapi
70+
gitpython
71+
httpx
72+
ijson
73+
jinja2
74+
jsonschema
75+
networkx
76+
packaging
77+
pandas
78+
paramiko
79+
passlib
80+
pendulum
81+
pip
82+
prettytable
83+
prometheus-client
84+
psutil
85+
psycopg2-binary
86+
pycasbin
87+
pydantic
88+
pyjwt
89+
python-dotenv
90+
pyyaml
91+
python-multipart
92+
pulp
93+
requests
94+
rich
95+
setproctitle
96+
sqlalchemy
97+
sqlalchemy-adapter
98+
tabulate
99+
types-paramiko
100+
typing-extensions
101+
uvicorn
102+
wheel
103+
]
104+
++ aiohttp.optional-dependencies.speedups
105+
++ fastapi.optional-dependencies.all
106+
++ uvicorn.optional-dependencies.standard;
107+
108+
optional-dependencies =
109+
with python3Packages;
110+
lib.fix (self: {
111+
112+
all = with self; [
113+
aws
114+
azure
115+
cloudfare
116+
docker
117+
fluidstack
118+
gcp
119+
ibm
120+
kubernates
121+
lambda
122+
paperspace
123+
ray
124+
remote
125+
server
126+
scp
127+
ssh
128+
vsphere
129+
];
130+
131+
aws = [
132+
awscli
133+
boto3
134+
botocore
135+
colorama
136+
];
137+
138+
azure = [
139+
azure-cli
140+
azure-core
141+
azure-identity
142+
azure-mgmt-compute
143+
azure-mgmt-network
144+
azure-storage-blob
145+
msgraph-sdk
146+
]
147+
++ self.ray;
148+
149+
cloudfare = self.aws;
19150

20-
build-system = with python3Packages; [ setuptools ];
21-
22-
# when updating, please ensure package version constraints stipulaed
23-
# in setup.py are met
24-
propagatedBuildInputs = with python3Packages; [
25-
cachetools
26-
click
27-
colorama
28-
cryptography
29-
filelock
30-
jinja2
31-
jsonschema
32-
networkx
33-
packaging
34-
pandas
35-
pendulum
36-
prettytable
37-
psutil
38-
python-dotenv
39-
pyyaml
40-
pulp
41-
requests
42-
rich
43-
tabulate
44-
typing-extensions
45-
wheel
151+
# cudo = [cudo-compute];
152+
#
153+
# do = [pydo azure-core azure-common];
154+
155+
docker = [ docker ];
156+
157+
fluidstack = [ ];
158+
159+
gcp = [
160+
google-api-python-client
161+
google-cloud-storage
162+
pyopenssl
163+
];
164+
165+
ibm = [
166+
ibm-cloud-sdk-core
167+
# ibm-cos-sdk
168+
# ibm-platform-services
169+
# ibm-vpc
170+
]
171+
++ self.ray;
172+
173+
kubernetes = [
174+
kubernetes
175+
websockets
176+
];
177+
178+
lambda = [ ];
179+
180+
# nebius = [
181+
# nebius
182+
# ]
183+
# ++ self.aws;
184+
185+
paperspace = [ ];
186+
187+
ray = [ ray ] ++ ray.optional-dependencies.default;
188+
189+
remote = [
190+
grpcio
191+
protobuf
192+
];
193+
194+
# runpod = [ runpod ];
195+
196+
server = [
197+
pycasbin
198+
passlib
199+
pyjwt
200+
sqlalchemy-adapter
201+
];
202+
203+
scp = self.ray;
204+
205+
ssh = self.kubernetes;
206+
207+
# vast = [vastai-sdk];
208+
209+
vsphere = [
210+
pyvmomi
211+
# vsphere-automation-sdk
212+
];
213+
});
214+
215+
postInstall = ''
216+
mkdir -p $out/${python3Packages.python.sitePackages}/sky/dashboard/out
217+
cp -r ${dashboard}/* $out/${python3Packages.python.sitePackages}/sky/dashboard/out/
218+
'';
219+
220+
# Excluding the tests as it fails with error:
221+
# Message: 'Config loaded from /build/source/examples/admin_policy/restful_policy.yaml:\nadmin_policy: http://localhost:8080\n'
222+
#Arguments: ()
223+
#--- Logging error ---
224+
#Traceback (most recent call last):
225+
# File "/nix/store/pzdalg368npikvpq4ncz2saxnz19v53k-python3-3.13.12/lib/python3.13/logging/__init__.py", line 1154, in emit
226+
# stream.write(msg + self.terminator)
227+
# ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
228+
#ValueError: I/O operation on closed file.
229+
# nativeCheckInputs = with python3Packages; [
230+
# pytestCheckHook
231+
# boto3
232+
# pytest-env
233+
# pytest-xdist
234+
# ];
235+
236+
pythonImportsCheck = [
237+
"sky"
46238
];
47239

240+
versionCheckProgramArg = "--version";
241+
48242
meta = {
49243
description = "Run LLMs and AI on any Cloud";
50244
longDescription = ''
@@ -53,8 +247,12 @@ python3Packages.buildPythonApplication (finalAttrs: {
53247
managed execution.
54248
'';
55249
homepage = "https://github.com/skypilot-org/skypilot";
250+
changelog = "https://github.com/skypilot-org/skypilot/releases/tag/${finalAttrs.src.tag}";
56251
license = lib.licenses.asl20;
57-
maintainers = with lib.maintainers; [ seanrmurphy ];
252+
maintainers = with lib.maintainers; [
253+
seanrmurphy
254+
daspk04
255+
];
58256
mainProgram = "sky";
59257
};
60258
})

0 commit comments

Comments
 (0)