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