Skip to repository content664 lines · 27.3 KB · yaml
tenant.openagents/omega
No repository description is available.
OpenAgents Git authority 2026-07-28T01:39:37.400Z Public web read
NIP-34 coordinate
30617:7649603503856e5148d571eac2766b288a8ff1e9e35d380337a1d2b0015b4f92:omegaMaintainersHidden in public view
References2 branches · 1 tag
Read-only clone
git clone https://openagents.com/git/tenant.openagents/omega.gitBrowse files
release_nightly.yml
1# Generated from xtask::workflows::release_nightly
2# Rebuild with `cargo xtask workflows`.
3name: release_nightly
4env:
5 CARGO_TERM_COLOR: always
6 RUST_BACKTRACE: '1'
7on:
8 schedule:
9 - cron: 0 */4 * * *
10 workflow_dispatch: {}
11permissions:
12 contents: read
13jobs:
14 check_nightly_tag:
15 if: (github.repository_owner == 'zed-industries' || github.repository_owner == 'zed-extensions')
16 runs-on: namespace-profile-2x4-ubuntu-2404
17 steps:
18 - name: steps::checkout_repo
19 uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
20 with:
21 clean: false
22 fetch-tags: true
23 - id: check
24 name: release_nightly::check_nightly_tag
25 run: |
26 NIGHTLY_SHA=$(git rev-parse "nightly" 2>/dev/null || echo "")
27 if [ "$NIGHTLY_SHA" = "$GITHUB_SHA" ]; then
28 echo "Nightly tag already points to current commit. Skipping."
29 echo "skip=true" >> "$GITHUB_OUTPUT"
30 else
31 echo "skip=false" >> "$GITHUB_OUTPUT"
32 fi
33 outputs:
34 skip: ${{ steps.check.outputs.skip }}
35 timeout-minutes: 5
36 run_tests_linux:
37 needs:
38 - check_nightly_tag
39 if: (github.repository_owner == 'zed-industries' || github.repository_owner == 'zed-extensions') && needs.check_nightly_tag.outputs.skip != 'true'
40 runs-on: namespace-profile-16x32-ubuntu-2204
41 env:
42 CC: clang
43 CXX: clang++
44 steps:
45 - name: steps::checkout_repo
46 uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
47 with:
48 clean: false
49 - name: steps::setup_cargo_config
50 run: |
51 mkdir -p ./../.cargo
52 cp ./.cargo/ci-config.toml ./../.cargo/config.toml
53 - name: steps::cache_rust_dependencies_namespace
54 uses: namespacelabs/nscloud-cache-action@a90bb5d4b27522ce881c6e98eebd7d7e6d1653f9
55 with:
56 cache: rust
57 path: ~/.rustup
58 - name: steps::setup_linux
59 run: ./script/linux
60 - name: steps::download_wasi_sdk
61 run: ./script/download-wasi-sdk
62 - name: steps::setup_node
63 uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e
64 with:
65 node-version: '24'
66 check-latest: true
67 package-manager-cache: false
68 - name: steps::cargo_install_nextest
69 uses: taiki-e/install-action@a6b2e2dcd845ddd7f509ce4f3ed3d922b80cc5d9
70 with:
71 tool: nextest
72 - name: steps::clear_target_dir_if_large
73 run: ./script/clear-target-dir-if-larger-than 350 200
74 - name: steps::setup_sccache
75 run: ./script/setup-sccache
76 env:
77 R2_ACCOUNT_ID: ${{ secrets.R2_ACCOUNT_ID }}
78 R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }}
79 R2_SECRET_ACCESS_KEY: ${{ secrets.R2_SECRET_ACCESS_KEY }}
80 SCCACHE_BUCKET: sccache-zed
81 - name: steps::cargo_nextest
82 run: cargo nextest run --workspace --no-fail-fast --no-tests=warn
83 - name: steps::show_sccache_stats
84 run: sccache --show-stats || true
85 - name: steps::cleanup_cargo_config
86 if: always()
87 run: |
88 rm -rf ./../.cargo
89 timeout-minutes: 60
90 services:
91 postgres:
92 image: postgres:15@sha256:1b92e7a80c021647bf70f5d3eb66066a998e4f5cf43c07bb9dc9f729782cf88e
93 env:
94 POSTGRES_HOST_AUTH_METHOD: trust
95 ports:
96 - 5432:5432
97 options: --health-cmd pg_isready --health-interval 500ms --health-timeout 5s --health-retries 10
98 bundle_linux_aarch64:
99 needs:
100 - run_tests_linux
101 runs-on: namespace-profile-8x32-ubuntu-2004-arm-m4
102 env:
103 CARGO_INCREMENTAL: 0
104 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
105 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
106 CC: clang-18
107 CXX: clang++-18
108 steps:
109 - name: steps::checkout_repo
110 uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
111 with:
112 clean: false
113 - name: steps::cache_rust_dependencies_namespace
114 uses: namespacelabs/nscloud-cache-action@a90bb5d4b27522ce881c6e98eebd7d7e6d1653f9
115 with:
116 cache: rust
117 path: ~/.rustup
118 - name: run_bundling::set_release_channel_to_nightly
119 run: |
120 set -eu
121 version=$(git rev-parse --short HEAD)
122 echo "Publishing version: ${version} on release channel nightly"
123 echo "nightly" > crates/zed/RELEASE_CHANNEL
124 - name: steps::setup_sentry
125 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
126 with:
127 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
128 - name: steps::setup_linux
129 run: ./script/linux
130 - name: steps::download_wasi_sdk
131 run: ./script/download-wasi-sdk
132 - name: ./script/bundle-linux
133 run: ./script/bundle-linux
134 - name: run_bundling::upload_artifact
135 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
136 with:
137 name: zed-linux-aarch64.tar.gz
138 path: target/release/zed-linux-aarch64.tar.gz
139 if-no-files-found: error
140 - name: run_bundling::upload_artifact
141 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
142 with:
143 name: zed-remote-server-linux-aarch64.gz
144 path: target/zed-remote-server-linux-aarch64.gz
145 if-no-files-found: error
146 timeout-minutes: 60
147 bundle_linux_x86_64:
148 needs:
149 - run_tests_linux
150 runs-on: namespace-profile-32x64-ubuntu-2004
151 env:
152 CARGO_INCREMENTAL: 0
153 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
154 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
155 CC: clang-18
156 CXX: clang++-18
157 steps:
158 - name: steps::checkout_repo
159 uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
160 with:
161 clean: false
162 - name: steps::cache_rust_dependencies_namespace
163 uses: namespacelabs/nscloud-cache-action@a90bb5d4b27522ce881c6e98eebd7d7e6d1653f9
164 with:
165 cache: rust
166 path: ~/.rustup
167 - name: run_bundling::set_release_channel_to_nightly
168 run: |
169 set -eu
170 version=$(git rev-parse --short HEAD)
171 echo "Publishing version: ${version} on release channel nightly"
172 echo "nightly" > crates/zed/RELEASE_CHANNEL
173 - name: steps::setup_sentry
174 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
175 with:
176 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
177 - name: steps::setup_linux
178 run: ./script/linux
179 - name: steps::download_wasi_sdk
180 run: ./script/download-wasi-sdk
181 - name: ./script/bundle-linux
182 run: ./script/bundle-linux
183 - name: run_bundling::upload_artifact
184 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
185 with:
186 name: zed-linux-x86_64.tar.gz
187 path: target/release/zed-linux-x86_64.tar.gz
188 if-no-files-found: error
189 - name: run_bundling::upload_artifact
190 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
191 with:
192 name: zed-remote-server-linux-x86_64.gz
193 path: target/zed-remote-server-linux-x86_64.gz
194 if-no-files-found: error
195 timeout-minutes: 60
196 build_static_bwrap_linux_aarch64:
197 needs:
198 - run_tests_linux
199 runs-on: namespace-profile-8x32-ubuntu-2004-arm-m4
200 steps:
201 - name: steps::cache_nix_dependencies_namespace
202 uses: namespacelabs/nscloud-cache-action@a90bb5d4b27522ce881c6e98eebd7d7e6d1653f9
203 with:
204 cache: nix
205 - name: run_bundling::build_static_bwrap
206 uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f
207 with:
208 github_access_token: ${{ secrets.GITHUB_TOKEN }}
209 - name: run_bundling::build_static_bwrap
210 uses: cachix/cachix-action@0fc020193b5a1fa3ac4575aa3a7d3aa6a35435ad
211 with:
212 name: zed
213 authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
214 cachixArgs: -v
215 - name: run_bundling::build_static_bwrap
216 run: nix build nixpkgs#pkgsStatic.bubblewrap -L
217 - name: run_bundling::build_static_bwrap
218 run: |
219 cp result/bin/bwrap bwrap-linux-aarch64
220 chmod 755 bwrap-linux-aarch64
221 gzip -f --stdout --best bwrap-linux-aarch64 > bwrap-linux-aarch64.gz
222 - name: run_bundling::upload_artifact
223 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
224 with:
225 name: bwrap-linux-aarch64.gz
226 path: bwrap-linux-aarch64.gz
227 if-no-files-found: error
228 timeout-minutes: 60
229 build_static_bwrap_linux_x86_64:
230 needs:
231 - run_tests_linux
232 runs-on: namespace-profile-32x64-ubuntu-2004
233 steps:
234 - name: steps::cache_nix_dependencies_namespace
235 uses: namespacelabs/nscloud-cache-action@a90bb5d4b27522ce881c6e98eebd7d7e6d1653f9
236 with:
237 cache: nix
238 - name: run_bundling::build_static_bwrap
239 uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f
240 with:
241 github_access_token: ${{ secrets.GITHUB_TOKEN }}
242 - name: run_bundling::build_static_bwrap
243 uses: cachix/cachix-action@0fc020193b5a1fa3ac4575aa3a7d3aa6a35435ad
244 with:
245 name: zed
246 authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
247 cachixArgs: -v
248 - name: run_bundling::build_static_bwrap
249 run: nix build nixpkgs#pkgsStatic.bubblewrap -L
250 - name: run_bundling::build_static_bwrap
251 run: |
252 cp result/bin/bwrap bwrap-linux-x86_64
253 chmod 755 bwrap-linux-x86_64
254 gzip -f --stdout --best bwrap-linux-x86_64 > bwrap-linux-x86_64.gz
255 - name: run_bundling::upload_artifact
256 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
257 with:
258 name: bwrap-linux-x86_64.gz
259 path: bwrap-linux-x86_64.gz
260 if-no-files-found: error
261 timeout-minutes: 60
262 bundle_mac_aarch64:
263 needs:
264 - run_tests_linux
265 runs-on: namespace-profile-mac-large
266 env:
267 CARGO_INCREMENTAL: 0
268 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
269 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
270 MACOS_CERTIFICATE: ${{ secrets.MACOS_CERTIFICATE }}
271 MACOS_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_CERTIFICATE_PASSWORD }}
272 APPLE_NOTARIZATION_KEY: ${{ secrets.APPLE_NOTARIZATION_KEY }}
273 APPLE_NOTARIZATION_KEY_ID: ${{ secrets.APPLE_NOTARIZATION_KEY_ID }}
274 APPLE_NOTARIZATION_ISSUER_ID: ${{ secrets.APPLE_NOTARIZATION_ISSUER_ID }}
275 steps:
276 - name: steps::checkout_repo
277 uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
278 with:
279 clean: false
280 - name: steps::cache_rust_dependencies_namespace
281 uses: namespacelabs/nscloud-cache-action@a90bb5d4b27522ce881c6e98eebd7d7e6d1653f9
282 with:
283 cache: rust
284 path: ~/.rustup
285 - name: run_bundling::set_release_channel_to_nightly
286 run: |
287 set -eu
288 version=$(git rev-parse --short HEAD)
289 echo "Publishing version: ${version} on release channel nightly"
290 echo "nightly" > crates/zed/RELEASE_CHANNEL
291 - name: steps::setup_node
292 uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e
293 with:
294 node-version: '24'
295 check-latest: true
296 package-manager-cache: false
297 - name: steps::setup_sentry
298 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
299 with:
300 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
301 - name: steps::clear_target_dir_if_large
302 run: ./script/clear-target-dir-if-larger-than 350 200
303 - name: run_bundling::bundle_mac::bundle_mac
304 run: ./script/bundle-mac aarch64-apple-darwin
305 - name: run_bundling::upload_artifact
306 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
307 with:
308 name: Zed-aarch64.dmg
309 path: target/aarch64-apple-darwin/release/Zed-aarch64.dmg
310 if-no-files-found: error
311 - name: run_bundling::upload_artifact
312 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
313 with:
314 name: zed-remote-server-macos-aarch64.gz
315 path: target/zed-remote-server-macos-aarch64.gz
316 if-no-files-found: error
317 timeout-minutes: 60
318 bundle_mac_x86_64:
319 needs:
320 - run_tests_linux
321 runs-on: namespace-profile-mac-large
322 env:
323 CARGO_INCREMENTAL: 0
324 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
325 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
326 MACOS_CERTIFICATE: ${{ secrets.MACOS_CERTIFICATE }}
327 MACOS_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_CERTIFICATE_PASSWORD }}
328 APPLE_NOTARIZATION_KEY: ${{ secrets.APPLE_NOTARIZATION_KEY }}
329 APPLE_NOTARIZATION_KEY_ID: ${{ secrets.APPLE_NOTARIZATION_KEY_ID }}
330 APPLE_NOTARIZATION_ISSUER_ID: ${{ secrets.APPLE_NOTARIZATION_ISSUER_ID }}
331 steps:
332 - name: steps::checkout_repo
333 uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
334 with:
335 clean: false
336 - name: steps::cache_rust_dependencies_namespace
337 uses: namespacelabs/nscloud-cache-action@a90bb5d4b27522ce881c6e98eebd7d7e6d1653f9
338 with:
339 cache: rust
340 path: ~/.rustup
341 - name: run_bundling::set_release_channel_to_nightly
342 run: |
343 set -eu
344 version=$(git rev-parse --short HEAD)
345 echo "Publishing version: ${version} on release channel nightly"
346 echo "nightly" > crates/zed/RELEASE_CHANNEL
347 - name: steps::setup_node
348 uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e
349 with:
350 node-version: '24'
351 check-latest: true
352 package-manager-cache: false
353 - name: steps::setup_sentry
354 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
355 with:
356 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
357 - name: steps::clear_target_dir_if_large
358 run: ./script/clear-target-dir-if-larger-than 350 200
359 - name: run_bundling::bundle_mac::bundle_mac
360 run: ./script/bundle-mac x86_64-apple-darwin
361 - name: run_bundling::upload_artifact
362 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
363 with:
364 name: Zed-x86_64.dmg
365 path: target/x86_64-apple-darwin/release/Zed-x86_64.dmg
366 if-no-files-found: error
367 - name: run_bundling::upload_artifact
368 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
369 with:
370 name: zed-remote-server-macos-x86_64.gz
371 path: target/zed-remote-server-macos-x86_64.gz
372 if-no-files-found: error
373 timeout-minutes: 60
374 bundle_windows_aarch64:
375 needs:
376 - run_tests_linux
377 runs-on: self-32vcpu-windows-2022
378 env:
379 CARGO_INCREMENTAL: 0
380 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
381 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
382 AZURE_TENANT_ID: ${{ secrets.AZURE_SIGNING_TENANT_ID }}
383 AZURE_CLIENT_ID: ${{ secrets.AZURE_SIGNING_CLIENT_ID }}
384 AZURE_CLIENT_SECRET: ${{ secrets.AZURE_SIGNING_CLIENT_SECRET }}
385 ACCOUNT_NAME: ${{ vars.AZURE_SIGNING_ACCOUNT_NAME }}
386 CERT_PROFILE_NAME: ${{ vars.AZURE_SIGNING_CERT_PROFILE_NAME }}
387 ENDPOINT: ${{ vars.AZURE_SIGNING_ENDPOINT }}
388 FILE_DIGEST: SHA256
389 TIMESTAMP_DIGEST: SHA256
390 TIMESTAMP_SERVER: http://timestamp.acs.microsoft.com
391 steps:
392 - name: steps::checkout_repo
393 uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
394 with:
395 clean: false
396 - name: run_bundling::set_release_channel_to_nightly
397 run: |
398 $ErrorActionPreference = "Stop"
399 $version = git rev-parse --short HEAD
400 Write-Host "Publishing version: $version on release channel nightly"
401 "nightly" | Set-Content -Path "crates/zed/RELEASE_CHANNEL"
402 shell: pwsh
403 working-directory: ${{ env.ZED_WORKSPACE }}
404 - name: steps::setup_sentry
405 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
406 with:
407 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
408 - name: steps::clear_target_dir_if_large
409 run: ./script/clear-target-dir-if-larger-than.ps1 350 200
410 shell: pwsh
411 - name: run_bundling::bundle_windows::bundle_windows
412 run: script/bundle-windows.ps1 -Architecture aarch64
413 shell: pwsh
414 working-directory: ${{ env.ZED_WORKSPACE }}
415 - name: run_bundling::upload_artifact
416 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
417 with:
418 name: Zed-aarch64.exe
419 path: target/Zed-aarch64.exe
420 if-no-files-found: error
421 - name: run_bundling::upload_artifact
422 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
423 with:
424 name: zed-remote-server-windows-aarch64.zip
425 path: target/zed-remote-server-windows-aarch64.zip
426 if-no-files-found: error
427 timeout-minutes: 60
428 bundle_windows_x86_64:
429 needs:
430 - run_tests_linux
431 runs-on: self-32vcpu-windows-2022
432 env:
433 CARGO_INCREMENTAL: 0
434 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
435 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
436 AZURE_TENANT_ID: ${{ secrets.AZURE_SIGNING_TENANT_ID }}
437 AZURE_CLIENT_ID: ${{ secrets.AZURE_SIGNING_CLIENT_ID }}
438 AZURE_CLIENT_SECRET: ${{ secrets.AZURE_SIGNING_CLIENT_SECRET }}
439 ACCOUNT_NAME: ${{ vars.AZURE_SIGNING_ACCOUNT_NAME }}
440 CERT_PROFILE_NAME: ${{ vars.AZURE_SIGNING_CERT_PROFILE_NAME }}
441 ENDPOINT: ${{ vars.AZURE_SIGNING_ENDPOINT }}
442 FILE_DIGEST: SHA256
443 TIMESTAMP_DIGEST: SHA256
444 TIMESTAMP_SERVER: http://timestamp.acs.microsoft.com
445 steps:
446 - name: steps::checkout_repo
447 uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
448 with:
449 clean: false
450 - name: run_bundling::set_release_channel_to_nightly
451 run: |
452 $ErrorActionPreference = "Stop"
453 $version = git rev-parse --short HEAD
454 Write-Host "Publishing version: $version on release channel nightly"
455 "nightly" | Set-Content -Path "crates/zed/RELEASE_CHANNEL"
456 shell: pwsh
457 working-directory: ${{ env.ZED_WORKSPACE }}
458 - name: steps::setup_sentry
459 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
460 with:
461 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
462 - name: steps::clear_target_dir_if_large
463 run: ./script/clear-target-dir-if-larger-than.ps1 350 200
464 shell: pwsh
465 - name: run_bundling::bundle_windows::bundle_windows
466 run: script/bundle-windows.ps1 -Architecture x86_64
467 shell: pwsh
468 working-directory: ${{ env.ZED_WORKSPACE }}
469 - name: run_bundling::upload_artifact
470 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
471 with:
472 name: Zed-x86_64.exe
473 path: target/Zed-x86_64.exe
474 if-no-files-found: error
475 - name: run_bundling::upload_artifact
476 uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
477 with:
478 name: zed-remote-server-windows-x86_64.zip
479 path: target/zed-remote-server-windows-x86_64.zip
480 if-no-files-found: error
481 timeout-minutes: 60
482 build_nix_linux_x86_64:
483 needs:
484 - run_tests_linux
485 if: (github.repository_owner == 'zed-industries' || github.repository_owner == 'zed-extensions')
486 runs-on: namespace-profile-32x64-ubuntu-2004
487 env:
488 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
489 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
490 ZED_CLOUD_PROVIDER_ADDITIONAL_MODELS_JSON: ${{ secrets.ZED_CLOUD_PROVIDER_ADDITIONAL_MODELS_JSON }}
491 GIT_LFS_SKIP_SMUDGE: '1'
492 steps:
493 - name: steps::checkout_repo
494 uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
495 with:
496 clean: false
497 - name: steps::cache_nix_dependencies_namespace
498 uses: namespacelabs/nscloud-cache-action@a90bb5d4b27522ce881c6e98eebd7d7e6d1653f9
499 with:
500 cache: nix
501 - name: nix_build::build_nix::install_nix
502 uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f
503 with:
504 github_access_token: ${{ secrets.GITHUB_TOKEN }}
505 - name: nix_build::build_nix::cachix_action
506 uses: cachix/cachix-action@0fc020193b5a1fa3ac4575aa3a7d3aa6a35435ad
507 with:
508 name: zed
509 authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
510 cachixArgs: -v
511 - name: nix_build::build_nix::build
512 run: nix build .#default -L --accept-flake-config
513 timeout-minutes: 60
514 continue-on-error: true
515 build_nix_mac_aarch64:
516 needs:
517 - run_tests_linux
518 if: (github.repository_owner == 'zed-industries' || github.repository_owner == 'zed-extensions')
519 runs-on: namespace-profile-mac-large
520 env:
521 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
522 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
523 ZED_CLOUD_PROVIDER_ADDITIONAL_MODELS_JSON: ${{ secrets.ZED_CLOUD_PROVIDER_ADDITIONAL_MODELS_JSON }}
524 GIT_LFS_SKIP_SMUDGE: '1'
525 steps:
526 - name: steps::checkout_repo
527 uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
528 with:
529 clean: false
530 - name: steps::cache_nix_store_macos
531 uses: namespacelabs/nscloud-cache-action@a90bb5d4b27522ce881c6e98eebd7d7e6d1653f9
532 with:
533 path: ~/nix-cache
534 - name: nix_build::build_nix::install_nix
535 uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f
536 with:
537 github_access_token: ${{ secrets.GITHUB_TOKEN }}
538 - name: nix_build::build_nix::configure_local_nix_cache
539 run: |
540 mkdir -p ~/nix-cache
541 echo "extra-substituters = file://$HOME/nix-cache?priority=10" | sudo tee -a /etc/nix/nix.conf
542 echo "require-sigs = false" | sudo tee -a /etc/nix/nix.conf
543 sudo launchctl kickstart -k system/org.nixos.nix-daemon
544 - name: nix_build::build_nix::cachix_action
545 uses: cachix/cachix-action@0fc020193b5a1fa3ac4575aa3a7d3aa6a35435ad
546 with:
547 name: zed
548 authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
549 cachixArgs: -v
550 - name: nix_build::build_nix::build
551 run: nix build .#default -L --accept-flake-config
552 - name: nix_build::build_nix::export_to_local_nix_cache
553 if: always()
554 run: |
555 if [ -L result ]; then
556 echo "Copying build closure to local binary cache..."
557 nix copy --to "file://$HOME/nix-cache" ./result || echo "Warning: nix copy to local cache failed"
558 else
559 echo "No build result found, skipping cache export."
560 fi
561 timeout-minutes: 60
562 continue-on-error: true
563 update_nightly_tag:
564 needs:
565 - bundle_linux_aarch64
566 - bundle_linux_x86_64
567 - build_static_bwrap_linux_aarch64
568 - build_static_bwrap_linux_x86_64
569 - bundle_mac_aarch64
570 - bundle_mac_x86_64
571 - bundle_windows_aarch64
572 - bundle_windows_x86_64
573 if: (github.repository_owner == 'zed-industries' || github.repository_owner == 'zed-extensions')
574 runs-on: namespace-profile-4x8-ubuntu-2204
575 steps:
576 - id: generate-token
577 name: steps::authenticate_as_zippy
578 uses: actions/create-github-app-token@f8d387b68d61c58ab83c6c016672934102569859
579 with:
580 app-id: ${{ secrets.ZED_ZIPPY_APP_ID }}
581 private-key: ${{ secrets.ZED_ZIPPY_APP_PRIVATE_KEY }}
582 owner: ${{ github.repository_owner }}
583 repositories: ${{ github.event.repository.name }}
584 permission-contents: write
585 - name: steps::checkout_repo
586 uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
587 with:
588 clean: false
589 fetch-tags: true
590 - name: release::download_workflow_artifacts
591 uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c
592 with:
593 path: ./artifacts/
594 - name: ls -lR ./artifacts
595 run: ls -lR ./artifacts
596 - name: release::prep_release_artifacts
597 run: |-
598 mkdir -p release-artifacts/
599
600 mv ./artifacts/Zed-aarch64.dmg/Zed-aarch64.dmg release-artifacts/Zed-aarch64.dmg
601 mv ./artifacts/Zed-x86_64.dmg/Zed-x86_64.dmg release-artifacts/Zed-x86_64.dmg
602 mv ./artifacts/zed-linux-aarch64.tar.gz/zed-linux-aarch64.tar.gz release-artifacts/zed-linux-aarch64.tar.gz
603 mv ./artifacts/zed-linux-x86_64.tar.gz/zed-linux-x86_64.tar.gz release-artifacts/zed-linux-x86_64.tar.gz
604 mv ./artifacts/bwrap-linux-aarch64.gz/bwrap-linux-aarch64.gz release-artifacts/bwrap-linux-aarch64.gz
605 mv ./artifacts/bwrap-linux-x86_64.gz/bwrap-linux-x86_64.gz release-artifacts/bwrap-linux-x86_64.gz
606 mv ./artifacts/Zed-x86_64.exe/Zed-x86_64.exe release-artifacts/Zed-x86_64.exe
607 mv ./artifacts/Zed-aarch64.exe/Zed-aarch64.exe release-artifacts/Zed-aarch64.exe
608 mv ./artifacts/zed-remote-server-macos-aarch64.gz/zed-remote-server-macos-aarch64.gz release-artifacts/zed-remote-server-macos-aarch64.gz
609 mv ./artifacts/zed-remote-server-macos-x86_64.gz/zed-remote-server-macos-x86_64.gz release-artifacts/zed-remote-server-macos-x86_64.gz
610 mv ./artifacts/zed-remote-server-linux-aarch64.gz/zed-remote-server-linux-aarch64.gz release-artifacts/zed-remote-server-linux-aarch64.gz
611 mv ./artifacts/zed-remote-server-linux-x86_64.gz/zed-remote-server-linux-x86_64.gz release-artifacts/zed-remote-server-linux-x86_64.gz
612 mv ./artifacts/zed-remote-server-windows-aarch64.zip/zed-remote-server-windows-aarch64.zip release-artifacts/zed-remote-server-windows-aarch64.zip
613 mv ./artifacts/zed-remote-server-windows-x86_64.zip/zed-remote-server-windows-x86_64.zip release-artifacts/zed-remote-server-windows-x86_64.zip
614 - name: ./script/upload-nightly
615 run: ./script/upload-nightly
616 env:
617 DIGITALOCEAN_SPACES_ACCESS_KEY: ${{ secrets.DIGITALOCEAN_SPACES_ACCESS_KEY }}
618 DIGITALOCEAN_SPACES_SECRET_KEY: ${{ secrets.DIGITALOCEAN_SPACES_SECRET_KEY }}
619 - name: steps::update_tag
620 uses: actions/github-script@f28e40c7f34bde8b3046d885e986cb6290c5673b
621 with:
622 script: |
623 github.rest.git.updateRef({
624 owner: context.repo.owner,
625 repo: context.repo.repo,
626 ref: 'tags/nightly',
627 sha: context.sha,
628 force: true
629 })
630 github-token: ${{ steps.generate-token.outputs.token }}
631 - name: release::create_sentry_release
632 uses: getsentry/action-release@526942b68292201ac6bbb99b9a0747d4abee354c
633 with:
634 environment: production
635 env:
636 SENTRY_ORG: zed-dev
637 SENTRY_PROJECT: zed
638 SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
639 timeout-minutes: 60
640 notify_on_failure:
641 needs:
642 - bundle_linux_aarch64
643 - bundle_linux_x86_64
644 - build_static_bwrap_linux_aarch64
645 - build_static_bwrap_linux_x86_64
646 - bundle_mac_aarch64
647 - bundle_mac_x86_64
648 - bundle_windows_aarch64
649 - bundle_windows_x86_64
650 if: failure()
651 runs-on: namespace-profile-2x4-ubuntu-2404
652 steps:
653 - name: release::send_slack_message
654 run: 'curl -X POST -H ''Content-type: application/json'' --data "$(jq -n --arg text "$SLACK_MESSAGE" ''{"text": $text}'')" "$SLACK_WEBHOOK"'
655 env:
656 SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_WORKFLOW_FAILURES }}
657 SLACK_MESSAGE: '❌ ${{ github.workflow }} failed: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}'
658concurrency:
659 group: release-nightly
660 cancel-in-progress: true
661defaults:
662 run:
663 shell: bash -euxo pipefail {0}
664