11group : release build
22steps :
3+ # Build ray core components (required for wheel builds)
4+ - name : ray-core-build
5+ label : " wanda: core binary parts py{{matrix}} (x86_64)"
6+ wanda : ci/docker/ray-core.wanda.yaml
7+ matrix :
8+ - " 3.10"
9+ - " 3.11"
10+ - " 3.12"
11+ env :
12+ PYTHON_VERSION : " {{matrix}}"
13+ ARCH_SUFFIX : " "
14+ HOSTTYPE : " x86_64"
15+ MANYLINUX_VERSION : " 260103.868e54c"
16+ tags : oss
17+
18+ - name : ray-dashboard-build
19+ label : " wanda: dashboard"
20+ wanda : ci/docker/ray-dashboard.wanda.yaml
21+ env :
22+ ARCH_SUFFIX : " "
23+ HOSTTYPE : " x86_64"
24+ MANYLINUX_VERSION : " 260103.868e54c"
25+ tags : oss
26+
27+ - name : ray-java-build
28+ label : " wanda: java build (x86_64)"
29+ wanda : ci/docker/ray-java.wanda.yaml
30+ tags : oss
31+ env :
32+ ARCH_SUFFIX : " "
33+ HOSTTYPE : " x86_64"
34+ MANYLINUX_VERSION : " 260103.868e54c"
35+
36+ - name : ray-wheel-build
37+ label : " wanda: wheel py{{matrix}} (x86_64)"
38+ wanda : ci/docker/ray-wheel.wanda.yaml
39+ matrix :
40+ - " 3.10"
41+ - " 3.11"
42+ - " 3.12"
43+ env :
44+ PYTHON_VERSION : " {{matrix}}"
45+ ARCH_SUFFIX : " "
46+ HOSTTYPE : " x86_64"
47+ MANYLINUX_VERSION : " 260103.868e54c"
48+ tags : oss
49+ depends_on :
50+ - ray-core-build
51+ - ray-java-build
52+ - ray-dashboard-build
53+
354 - name : raycpubaseextra-testdeps
455 label : " wanda: ray.py{{matrix}}.cpu.base-extra-testdeps"
556 wanda : docker/base-extra-testdeps/cpu.wanda.yaml
@@ -65,26 +116,74 @@ steps:
65116 depends_on :
66117 - ray-mlcudabaseextra
67118
68- - label : " :tapioca: build: ray py{{matrix.python}}-{{matrix.platform}} image for release tests"
119+ # Build ray anyscale images using wanda (CPU)
120+ - name : ray-anyscale-cpu-build
121+ label : " wanda: ray-anyscale py{{matrix}} cpu"
122+ wanda : ci/docker/ray-anyscale-cpu.wanda.yaml
123+ matrix :
124+ # This list should be kept in sync with the list of supported Python in
125+ # release test suite
126+ - " 3.10"
127+ - " 3.11"
128+ - " 3.12"
129+ env :
130+ PYTHON_VERSION : " {{matrix}}"
131+ ARCH_SUFFIX : " "
132+ RAY_VERSION : " 3.0.0.dev0"
133+ tags :
134+ - oss
135+ depends_on :
136+ - ray-wheel-build
137+ - raycpubaseextra-testdeps
138+
139+ # Build ray anyscale images using wanda (CUDA)
140+ - name : ray-anyscale-cuda-build
141+ label : " wanda: ray-anyscale py{{matrix.python}} cu{{matrix.cuda}}"
142+ wanda : ci/docker/ray-anyscale-cuda.wanda.yaml
143+ matrix :
144+ setup :
145+ python :
146+ - " 3.10"
147+ - " 3.11"
148+ - " 3.12"
149+ cuda :
150+ - " 12.3.2-cudnn9"
151+ env :
152+ PYTHON_VERSION : " {{matrix.python}}"
153+ CUDA_VERSION : " {{matrix.cuda}}"
154+ ARCH_SUFFIX : " "
155+ RAY_VERSION : " 3.0.0.dev0"
156+ tags :
157+ - oss
158+ depends_on :
159+ - ray-wheel-build
160+ - raycudabaseextra-testdeps
161+
162+ # Push anyscale images to ECR/GCP/Azure registries
163+ - label : " :docker: push: ray-anyscale py{{matrix.python}} {{matrix.platform}}"
69164 key : anyscalebuild
70165 instance_type : release-medium
71166 mount_buildkite_agent : true
72167 tags :
73168 - oss
74169 commands :
75- - bazel run //ci/ray_ci:build_in_docker -- anyscale
76- --python-version {{matrix.python}} --platform {{matrix.platform}}
77- --image-type ray --upload
170+ # Authenticate with GCP and Azure before pushing
171+ - bash release/gcloud_docker_login.sh release/aws2gce_iam.json
172+ - bash release/azure_docker_login.sh
173+ - az acr login --name rayreleasetest
174+ # PATH must include gcloud SDK for crane to use docker credential helper
175+ - export PATH=$(pwd)/google-cloud-sdk/bin:$PATH &&
176+ bazel run //ci/ray_ci/automation:push_anyscale_image --
177+ --python-version {{matrix.python}}
178+ --platform {{matrix.platform}}
179+ --image-type ray
180+ --upload
78181 depends_on :
79- - manylinux-x86_64
80- - forge
81- - raycpubaseextra-testdeps
82- - raycudabaseextra-testdeps
182+ - ray-anyscale-cpu-build
183+ - ray-anyscale-cuda-build
83184 matrix :
84185 setup :
85186 python :
86- # This list should be kept in sync with the list of supported Python in
87- # release test suite
88187 - " 3.10"
89188 - " 3.11"
90189 - " 3.12"
@@ -93,35 +192,95 @@ steps:
93192 - cu12.3.2-cudnn9
94193 - cpu
95194
96- - label : " :tapioca: build: ray-llm py{{matrix}} image for release tests"
195+ # Build ray-llm anyscale image using wanda
196+ - name : ray-llm-anyscale-cuda-build
197+ label : " wanda: ray-llm-anyscale py{{matrix.python}} cu{{matrix.cuda}}"
198+ wanda : ci/docker/ray-llm-anyscale-cuda.wanda.yaml
199+ matrix :
200+ setup :
201+ python :
202+ - " 3.11"
203+ cuda :
204+ - " 12.8.1-cudnn"
205+ env :
206+ PYTHON_VERSION : " {{matrix.python}}"
207+ CUDA_VERSION : " {{matrix.cuda}}"
208+ ARCH_SUFFIX : " "
209+ RAY_VERSION : " 3.0.0.dev0"
210+ tags :
211+ - oss
212+ depends_on :
213+ - ray-wheel-build
214+ - ray-llmbaseextra-testdeps
215+
216+ # Push ray-llm anyscale images to ECR/GCP/Azure registries
217+ - label : " :docker: push: ray-llm-anyscale py{{matrix}} cu12.8.1-cudnn"
97218 key : anyscalellmbuild
98219 instance_type : release-medium
99220 mount_buildkite_agent : true
100221 tags :
101222 - oss
102223 commands :
103- - bazel run //ci/ray_ci:build_in_docker -- anyscale --python-version {{matrix}}
104- --platform cu12.8.1-cudnn --image-type ray-llm --upload
224+ # Authenticate with GCP and Azure before pushing
225+ - bash release/gcloud_docker_login.sh release/aws2gce_iam.json
226+ - bash release/azure_docker_login.sh
227+ - az acr login --name rayreleasetest
228+ # PATH must include gcloud SDK for crane to use docker credential helper
229+ - export PATH=$(pwd)/google-cloud-sdk/bin:$PATH &&
230+ bazel run //ci/ray_ci/automation:push_anyscale_image --
231+ --python-version {{matrix}}
232+ --platform cu12.8.1-cudnn
233+ --image-type ray-llm
234+ --upload
105235 depends_on :
106- - manylinux-x86_64
107- - forge
108- - ray-llmbaseextra-testdeps
236+ - ray-llm-anyscale-cuda-build
109237 matrix :
110238 - " 3.11"
111239
112- - label : " :tapioca: build: ray-ml py{{matrix}} image for release tests"
240+ # Build ray-ml anyscale image using wanda
241+ - name : ray-ml-anyscale-cuda-build
242+ label : " wanda: ray-ml-anyscale py{{matrix.python}} cu{{matrix.cuda}}"
243+ wanda : ci/docker/ray-ml-anyscale-cuda.wanda.yaml
244+ matrix :
245+ setup :
246+ python :
247+ # This list should be kept in sync with the list of supported Python in
248+ # release test suite
249+ - " 3.10"
250+ cuda :
251+ - " 12.1.1-cudnn8"
252+ env :
253+ PYTHON_VERSION : " {{matrix.python}}"
254+ CUDA_VERSION : " {{matrix.cuda}}"
255+ ARCH_SUFFIX : " "
256+ RAY_VERSION : " 3.0.0.dev0"
257+ tags :
258+ - oss
259+ depends_on :
260+ - ray-wheel-build
261+ - ray-mlcudabaseextra-testdeps
262+
263+ # Push ray-ml anyscale images to ECR/GCP/Azure registries
264+ - label : " :docker: push: ray-ml-anyscale py{{matrix}} cu12.1.1-cudnn8"
113265 key : anyscalemlbuild
114266 instance_type : release-medium
115267 mount_buildkite_agent : true
116268 tags :
117269 - oss
118270 commands :
119- - bazel run //ci/ray_ci:build_in_docker -- anyscale --python-version {{matrix}}
120- --platform cu12.1.1-cudnn8 --image-type ray-ml --upload
271+ # Authenticate with GCP and Azure before pushing
272+ - bash release/gcloud_docker_login.sh release/aws2gce_iam.json
273+ - bash release/azure_docker_login.sh
274+ - az acr login --name rayreleasetest
275+ # PATH must include gcloud SDK for crane to use docker credential helper
276+ - export PATH=$(pwd)/google-cloud-sdk/bin:$PATH &&
277+ bazel run //ci/ray_ci/automation:push_anyscale_image --
278+ --python-version {{matrix}}
279+ --platform cu12.1.1-cudnn8
280+ --image-type ray-ml
281+ --upload
121282 depends_on :
122- - manylinux-x86_64
123- - forge
124- - ray-mlcudabaseextra-testdeps
283+ - ray-ml-anyscale-cuda-build
125284 matrix :
126285 # This list should be kept in sync with the list of supported Python in
127286 # release test suite
0 commit comments