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 push:
9 tags:
10 - nightly
11 schedule:
12 - cron: 0 7 * * *
13jobs:
14 check_style:
15 if: (github.repository_owner == 'zed-industries' || github.repository_owner == 'zed-extensions')
16 runs-on: self-mini-macos
17 steps:
18 - name: steps::checkout_repo
19 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
20 with:
21 clean: false
22 fetch-depth: 0
23 - id: cargo_fmt
24 name: steps::cargo_fmt
25 run: cargo fmt --all -- --check
26 shell: bash -euxo pipefail {0}
27 - name: ./script/clippy
28 run: ./script/clippy
29 shell: bash -euxo pipefail {0}
30 timeout-minutes: 60
31 run_tests_windows:
32 if: (github.repository_owner == 'zed-industries' || github.repository_owner == 'zed-extensions')
33 runs-on: self-32vcpu-windows-2022
34 steps:
35 - name: steps::checkout_repo
36 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
37 with:
38 clean: false
39 - name: steps::setup_cargo_config
40 run: |
41 New-Item -ItemType Directory -Path "./../.cargo" -Force
42 Copy-Item -Path "./.cargo/ci-config.toml" -Destination "./../.cargo/config.toml"
43 shell: pwsh
44 - name: steps::setup_node
45 uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020
46 with:
47 node-version: '20'
48 - id: clippy
49 name: steps::clippy
50 run: ./script/clippy.ps1
51 shell: pwsh
52 - name: steps::clear_target_dir_if_large
53 run: ./script/clear-target-dir-if-larger-than.ps1 250
54 shell: pwsh
55 - name: steps::cargo_nextest
56 run: cargo nextest run --workspace --no-fail-fast
57 shell: pwsh
58 - name: steps::cleanup_cargo_config
59 if: always()
60 run: |
61 Remove-Item -Recurse -Path "./../.cargo" -Force -ErrorAction SilentlyContinue
62 shell: pwsh
63 timeout-minutes: 60
64 bundle_linux_aarch64:
65 needs:
66 - check_style
67 - run_tests_windows
68 runs-on: namespace-profile-8x32-ubuntu-2004-arm-m4
69 env:
70 CARGO_INCREMENTAL: 0
71 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
72 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
73 steps:
74 - name: steps::checkout_repo
75 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
76 with:
77 clean: false
78 - name: run_bundling::set_release_channel_to_nightly
79 run: |
80 set -eu
81 version=$(git rev-parse --short HEAD)
82 echo "Publishing version: ${version} on release channel nightly"
83 echo "nightly" > crates/zed/RELEASE_CHANNEL
84 shell: bash -euxo pipefail {0}
85 - name: steps::setup_sentry
86 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
87 with:
88 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
89 - name: steps::setup_linux
90 run: ./script/linux
91 shell: bash -euxo pipefail {0}
92 - name: steps::install_mold
93 run: ./script/install-mold
94 shell: bash -euxo pipefail {0}
95 - name: steps::download_wasi_sdk
96 run: ./script/download-wasi-sdk
97 shell: bash -euxo pipefail {0}
98 - name: ./script/bundle-linux
99 run: ./script/bundle-linux
100 shell: bash -euxo pipefail {0}
101 - name: '@actions/upload-artifact zed-linux-aarch64.tar.gz'
102 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
103 with:
104 name: zed-linux-aarch64.tar.gz
105 path: target/release/zed-linux-aarch64.tar.gz
106 if-no-files-found: error
107 - name: '@actions/upload-artifact zed-remote-server-linux-aarch64.gz'
108 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
109 with:
110 name: zed-remote-server-linux-aarch64.gz
111 path: target/zed-remote-server-linux-aarch64.gz
112 if-no-files-found: error
113 timeout-minutes: 60
114 bundle_linux_x86_64:
115 needs:
116 - check_style
117 - run_tests_windows
118 runs-on: namespace-profile-32x64-ubuntu-2004
119 env:
120 CARGO_INCREMENTAL: 0
121 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
122 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
123 steps:
124 - name: steps::checkout_repo
125 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
126 with:
127 clean: false
128 - name: run_bundling::set_release_channel_to_nightly
129 run: |
130 set -eu
131 version=$(git rev-parse --short HEAD)
132 echo "Publishing version: ${version} on release channel nightly"
133 echo "nightly" > crates/zed/RELEASE_CHANNEL
134 shell: bash -euxo pipefail {0}
135 - name: steps::setup_sentry
136 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
137 with:
138 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
139 - name: steps::setup_linux
140 run: ./script/linux
141 shell: bash -euxo pipefail {0}
142 - name: steps::install_mold
143 run: ./script/install-mold
144 shell: bash -euxo pipefail {0}
145 - name: steps::download_wasi_sdk
146 run: ./script/download-wasi-sdk
147 shell: bash -euxo pipefail {0}
148 - name: ./script/bundle-linux
149 run: ./script/bundle-linux
150 shell: bash -euxo pipefail {0}
151 - name: '@actions/upload-artifact zed-linux-x86_64.tar.gz'
152 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
153 with:
154 name: zed-linux-x86_64.tar.gz
155 path: target/release/zed-linux-x86_64.tar.gz
156 if-no-files-found: error
157 - name: '@actions/upload-artifact zed-remote-server-linux-x86_64.gz'
158 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
159 with:
160 name: zed-remote-server-linux-x86_64.gz
161 path: target/zed-remote-server-linux-x86_64.gz
162 if-no-files-found: error
163 timeout-minutes: 60
164 bundle_mac_aarch64:
165 needs:
166 - check_style
167 - run_tests_windows
168 runs-on: self-mini-macos
169 env:
170 CARGO_INCREMENTAL: 0
171 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
172 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
173 MACOS_CERTIFICATE: ${{ secrets.MACOS_CERTIFICATE }}
174 MACOS_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_CERTIFICATE_PASSWORD }}
175 APPLE_NOTARIZATION_KEY: ${{ secrets.APPLE_NOTARIZATION_KEY }}
176 APPLE_NOTARIZATION_KEY_ID: ${{ secrets.APPLE_NOTARIZATION_KEY_ID }}
177 APPLE_NOTARIZATION_ISSUER_ID: ${{ secrets.APPLE_NOTARIZATION_ISSUER_ID }}
178 steps:
179 - name: steps::checkout_repo
180 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
181 with:
182 clean: false
183 - name: run_bundling::set_release_channel_to_nightly
184 run: |
185 set -eu
186 version=$(git rev-parse --short HEAD)
187 echo "Publishing version: ${version} on release channel nightly"
188 echo "nightly" > crates/zed/RELEASE_CHANNEL
189 shell: bash -euxo pipefail {0}
190 - name: steps::setup_node
191 uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020
192 with:
193 node-version: '20'
194 - name: steps::setup_sentry
195 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
196 with:
197 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
198 - name: steps::clear_target_dir_if_large
199 run: ./script/clear-target-dir-if-larger-than 300
200 shell: bash -euxo pipefail {0}
201 - name: run_bundling::bundle_mac::bundle_mac
202 run: ./script/bundle-mac aarch64-apple-darwin
203 shell: bash -euxo pipefail {0}
204 - name: '@actions/upload-artifact Zed-aarch64.dmg'
205 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
206 with:
207 name: Zed-aarch64.dmg
208 path: target/aarch64-apple-darwin/release/Zed-aarch64.dmg
209 if-no-files-found: error
210 - name: '@actions/upload-artifact zed-remote-server-macos-aarch64.gz'
211 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
212 with:
213 name: zed-remote-server-macos-aarch64.gz
214 path: target/zed-remote-server-macos-aarch64.gz
215 if-no-files-found: error
216 timeout-minutes: 60
217 bundle_mac_x86_64:
218 needs:
219 - check_style
220 - run_tests_windows
221 runs-on: self-mini-macos
222 env:
223 CARGO_INCREMENTAL: 0
224 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
225 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
226 MACOS_CERTIFICATE: ${{ secrets.MACOS_CERTIFICATE }}
227 MACOS_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_CERTIFICATE_PASSWORD }}
228 APPLE_NOTARIZATION_KEY: ${{ secrets.APPLE_NOTARIZATION_KEY }}
229 APPLE_NOTARIZATION_KEY_ID: ${{ secrets.APPLE_NOTARIZATION_KEY_ID }}
230 APPLE_NOTARIZATION_ISSUER_ID: ${{ secrets.APPLE_NOTARIZATION_ISSUER_ID }}
231 steps:
232 - name: steps::checkout_repo
233 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
234 with:
235 clean: false
236 - name: run_bundling::set_release_channel_to_nightly
237 run: |
238 set -eu
239 version=$(git rev-parse --short HEAD)
240 echo "Publishing version: ${version} on release channel nightly"
241 echo "nightly" > crates/zed/RELEASE_CHANNEL
242 shell: bash -euxo pipefail {0}
243 - name: steps::setup_node
244 uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020
245 with:
246 node-version: '20'
247 - name: steps::setup_sentry
248 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
249 with:
250 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
251 - name: steps::clear_target_dir_if_large
252 run: ./script/clear-target-dir-if-larger-than 300
253 shell: bash -euxo pipefail {0}
254 - name: run_bundling::bundle_mac::bundle_mac
255 run: ./script/bundle-mac x86_64-apple-darwin
256 shell: bash -euxo pipefail {0}
257 - name: '@actions/upload-artifact Zed-x86_64.dmg'
258 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
259 with:
260 name: Zed-x86_64.dmg
261 path: target/x86_64-apple-darwin/release/Zed-x86_64.dmg
262 if-no-files-found: error
263 - name: '@actions/upload-artifact zed-remote-server-macos-x86_64.gz'
264 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
265 with:
266 name: zed-remote-server-macos-x86_64.gz
267 path: target/zed-remote-server-macos-x86_64.gz
268 if-no-files-found: error
269 timeout-minutes: 60
270 bundle_windows_aarch64:
271 needs:
272 - check_style
273 - run_tests_windows
274 runs-on: self-32vcpu-windows-2022
275 env:
276 CARGO_INCREMENTAL: 0
277 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
278 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
279 AZURE_TENANT_ID: ${{ secrets.AZURE_SIGNING_TENANT_ID }}
280 AZURE_CLIENT_ID: ${{ secrets.AZURE_SIGNING_CLIENT_ID }}
281 AZURE_CLIENT_SECRET: ${{ secrets.AZURE_SIGNING_CLIENT_SECRET }}
282 ACCOUNT_NAME: ${{ vars.AZURE_SIGNING_ACCOUNT_NAME }}
283 CERT_PROFILE_NAME: ${{ vars.AZURE_SIGNING_CERT_PROFILE_NAME }}
284 ENDPOINT: ${{ vars.AZURE_SIGNING_ENDPOINT }}
285 FILE_DIGEST: SHA256
286 TIMESTAMP_DIGEST: SHA256
287 TIMESTAMP_SERVER: http://timestamp.acs.microsoft.com
288 steps:
289 - name: steps::checkout_repo
290 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
291 with:
292 clean: false
293 - name: run_bundling::set_release_channel_to_nightly
294 run: |
295 $ErrorActionPreference = "Stop"
296 $version = git rev-parse --short HEAD
297 Write-Host "Publishing version: $version on release channel nightly"
298 "nightly" | Set-Content -Path "crates/zed/RELEASE_CHANNEL"
299 shell: pwsh
300 working-directory: ${{ env.ZED_WORKSPACE }}
301 - name: steps::setup_sentry
302 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
303 with:
304 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
305 - name: run_bundling::bundle_windows::bundle_windows
306 run: script/bundle-windows.ps1 -Architecture aarch64
307 shell: pwsh
308 working-directory: ${{ env.ZED_WORKSPACE }}
309 - name: '@actions/upload-artifact Zed-aarch64.exe'
310 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
311 with:
312 name: Zed-aarch64.exe
313 path: target/Zed-aarch64.exe
314 if-no-files-found: error
315 timeout-minutes: 60
316 bundle_windows_x86_64:
317 needs:
318 - check_style
319 - run_tests_windows
320 runs-on: self-32vcpu-windows-2022
321 env:
322 CARGO_INCREMENTAL: 0
323 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
324 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
325 AZURE_TENANT_ID: ${{ secrets.AZURE_SIGNING_TENANT_ID }}
326 AZURE_CLIENT_ID: ${{ secrets.AZURE_SIGNING_CLIENT_ID }}
327 AZURE_CLIENT_SECRET: ${{ secrets.AZURE_SIGNING_CLIENT_SECRET }}
328 ACCOUNT_NAME: ${{ vars.AZURE_SIGNING_ACCOUNT_NAME }}
329 CERT_PROFILE_NAME: ${{ vars.AZURE_SIGNING_CERT_PROFILE_NAME }}
330 ENDPOINT: ${{ vars.AZURE_SIGNING_ENDPOINT }}
331 FILE_DIGEST: SHA256
332 TIMESTAMP_DIGEST: SHA256
333 TIMESTAMP_SERVER: http://timestamp.acs.microsoft.com
334 steps:
335 - name: steps::checkout_repo
336 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
337 with:
338 clean: false
339 - name: run_bundling::set_release_channel_to_nightly
340 run: |
341 $ErrorActionPreference = "Stop"
342 $version = git rev-parse --short HEAD
343 Write-Host "Publishing version: $version on release channel nightly"
344 "nightly" | Set-Content -Path "crates/zed/RELEASE_CHANNEL"
345 shell: pwsh
346 working-directory: ${{ env.ZED_WORKSPACE }}
347 - name: steps::setup_sentry
348 uses: matbour/setup-sentry-cli@3e938c54b3018bdd019973689ef984e033b0454b
349 with:
350 token: ${{ secrets.SENTRY_AUTH_TOKEN }}
351 - name: run_bundling::bundle_windows::bundle_windows
352 run: script/bundle-windows.ps1 -Architecture x86_64
353 shell: pwsh
354 working-directory: ${{ env.ZED_WORKSPACE }}
355 - name: '@actions/upload-artifact Zed-x86_64.exe'
356 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
357 with:
358 name: Zed-x86_64.exe
359 path: target/Zed-x86_64.exe
360 if-no-files-found: error
361 timeout-minutes: 60
362 build_nix_linux_x86_64:
363 needs:
364 - check_style
365 - run_tests_windows
366 if: (github.repository_owner == 'zed-industries' || github.repository_owner == 'zed-extensions')
367 runs-on: namespace-profile-32x64-ubuntu-2004
368 env:
369 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
370 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
371 ZED_CLOUD_PROVIDER_ADDITIONAL_MODELS_JSON: ${{ secrets.ZED_CLOUD_PROVIDER_ADDITIONAL_MODELS_JSON }}
372 GIT_LFS_SKIP_SMUDGE: '1'
373 steps:
374 - name: steps::checkout_repo
375 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
376 with:
377 clean: false
378 - name: nix_build::build_nix::install_nix
379 uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f
380 with:
381 github_access_token: ${{ secrets.GITHUB_TOKEN }}
382 - name: nix_build::build_nix::cachix_action
383 uses: cachix/cachix-action@0fc020193b5a1fa3ac4575aa3a7d3aa6a35435ad
384 with:
385 name: zed
386 authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
387 cachixArgs: -v
388 - name: nix_build::build_nix::build
389 run: nix build .#default -L --accept-flake-config
390 shell: bash -euxo pipefail {0}
391 timeout-minutes: 60
392 continue-on-error: true
393 build_nix_mac_aarch64:
394 needs:
395 - check_style
396 - run_tests_windows
397 if: (github.repository_owner == 'zed-industries' || github.repository_owner == 'zed-extensions')
398 runs-on: self-mini-macos
399 env:
400 ZED_CLIENT_CHECKSUM_SEED: ${{ secrets.ZED_CLIENT_CHECKSUM_SEED }}
401 ZED_MINIDUMP_ENDPOINT: ${{ secrets.ZED_SENTRY_MINIDUMP_ENDPOINT }}
402 ZED_CLOUD_PROVIDER_ADDITIONAL_MODELS_JSON: ${{ secrets.ZED_CLOUD_PROVIDER_ADDITIONAL_MODELS_JSON }}
403 GIT_LFS_SKIP_SMUDGE: '1'
404 steps:
405 - name: steps::checkout_repo
406 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
407 with:
408 clean: false
409 - name: nix_build::build_nix::set_path
410 run: |
411 echo "/nix/var/nix/profiles/default/bin" >> "$GITHUB_PATH"
412 echo "/Users/administrator/.nix-profile/bin" >> "$GITHUB_PATH"
413 shell: bash -euxo pipefail {0}
414 - name: nix_build::build_nix::cachix_action
415 uses: cachix/cachix-action@0fc020193b5a1fa3ac4575aa3a7d3aa6a35435ad
416 with:
417 name: zed
418 authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
419 cachixArgs: -v
420 - name: nix_build::build_nix::build
421 run: nix build .#default -L --accept-flake-config
422 shell: bash -euxo pipefail {0}
423 - name: nix_build::build_nix::limit_store
424 run: |-
425 if [ "$(du -sm /nix/store | cut -f1)" -gt 50000 ]; then
426 nix-collect-garbage -d || true
427 fi
428 shell: bash -euxo pipefail {0}
429 timeout-minutes: 60
430 continue-on-error: true
431 update_nightly_tag:
432 needs:
433 - bundle_linux_aarch64
434 - bundle_linux_x86_64
435 - bundle_mac_aarch64
436 - bundle_mac_x86_64
437 - bundle_windows_aarch64
438 - bundle_windows_x86_64
439 if: (github.repository_owner == 'zed-industries' || github.repository_owner == 'zed-extensions')
440 runs-on: namespace-profile-4x8-ubuntu-2204
441 steps:
442 - name: steps::checkout_repo
443 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
444 with:
445 clean: false
446 fetch-depth: 0
447 - name: release::download_workflow_artifacts
448 uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53
449 with:
450 path: ./artifacts/
451 - name: ls -lR ./artifacts
452 run: ls -lR ./artifacts
453 shell: bash -euxo pipefail {0}
454 - name: release::prep_release_artifacts
455 run: |-
456 mkdir -p release-artifacts/
457
458 mv ./artifacts/Zed-aarch64.dmg/Zed-aarch64.dmg release-artifacts/Zed-aarch64.dmg
459 mv ./artifacts/Zed-x86_64.dmg/Zed-x86_64.dmg release-artifacts/Zed-x86_64.dmg
460 mv ./artifacts/zed-linux-aarch64.tar.gz/zed-linux-aarch64.tar.gz release-artifacts/zed-linux-aarch64.tar.gz
461 mv ./artifacts/zed-linux-x86_64.tar.gz/zed-linux-x86_64.tar.gz release-artifacts/zed-linux-x86_64.tar.gz
462 mv ./artifacts/Zed-x86_64.exe/Zed-x86_64.exe release-artifacts/Zed-x86_64.exe
463 mv ./artifacts/Zed-aarch64.exe/Zed-aarch64.exe release-artifacts/Zed-aarch64.exe
464 mv ./artifacts/zed-remote-server-macos-aarch64.gz/zed-remote-server-macos-aarch64.gz release-artifacts/zed-remote-server-macos-aarch64.gz
465 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
466 mv ./artifacts/zed-remote-server-linux-aarch64.gz/zed-remote-server-linux-aarch64.gz release-artifacts/zed-remote-server-linux-aarch64.gz
467 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
468 shell: bash -euxo pipefail {0}
469 - name: ./script/upload-nightly
470 run: ./script/upload-nightly
471 shell: bash -euxo pipefail {0}
472 env:
473 DIGITALOCEAN_SPACES_ACCESS_KEY: ${{ secrets.DIGITALOCEAN_SPACES_ACCESS_KEY }}
474 DIGITALOCEAN_SPACES_SECRET_KEY: ${{ secrets.DIGITALOCEAN_SPACES_SECRET_KEY }}
475 - name: release_nightly::update_nightly_tag_job::update_nightly_tag
476 run: |
477 if [ "$(git rev-parse nightly)" = "$(git rev-parse HEAD)" ]; then
478 echo "Nightly tag already points to current commit. Skipping tagging."
479 exit 0
480 fi
481 git config user.name github-actions
482 git config user.email github-actions@github.com
483 git tag -f nightly
484 git push origin nightly --force
485 shell: bash -euxo pipefail {0}
486 - name: release::create_sentry_release
487 uses: getsentry/action-release@526942b68292201ac6bbb99b9a0747d4abee354c
488 with:
489 environment: production
490 env:
491 SENTRY_ORG: zed-dev
492 SENTRY_PROJECT: zed
493 SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
494 timeout-minutes: 60
495 notify_on_failure:
496 needs:
497 - bundle_linux_aarch64
498 - bundle_linux_x86_64
499 - bundle_mac_aarch64
500 - bundle_mac_x86_64
501 - bundle_windows_aarch64
502 - bundle_windows_x86_64
503 if: failure()
504 runs-on: namespace-profile-2x4-ubuntu-2404
505 steps:
506 - name: release::notify_on_failure::notify_slack
507 run: |-
508 curl -X POST -H 'Content-type: application/json'\
509 --data '{"text":"${{ github.workflow }} failed: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"}' "$SLACK_WEBHOOK"
510 shell: bash -euxo pipefail {0}
511 env:
512 SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_WORKFLOW_FAILURES }}