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