1# Generated from xtask::workflows::after_release
2# Rebuild with `cargo xtask workflows`.
3name: after_release
4on:
5 release:
6 types:
7 - published
8jobs:
9 rebuild_releases_page:
10 if: github.repository_owner == 'zed-industries'
11 runs-on: namespace-profile-2x4-ubuntu-2404
12 steps:
13 - name: after_release::rebuild_releases_page
14 run: 'curl https://zed.dev/api/revalidate-releases -H "Authorization: Bearer ${RELEASE_NOTES_API_TOKEN}"'
15 shell: bash -euxo pipefail {0}
16 env:
17 RELEASE_NOTES_API_TOKEN: ${{ secrets.RELEASE_NOTES_API_TOKEN }}
18 post_to_discord:
19 needs:
20 - rebuild_releases_page
21 if: github.repository_owner == 'zed-industries'
22 runs-on: namespace-profile-2x4-ubuntu-2404
23 steps:
24 - id: get-release-url
25 name: after_release::post_to_discord::get_release_url
26 run: |
27 if [ "${{ github.event.release.prerelease }}" == "true" ]; then
28 URL="https://zed.dev/releases/preview"
29 else
30 URL="https://zed.dev/releases/stable"
31 fi
32
33 echo "URL=$URL" >> "$GITHUB_OUTPUT"
34 shell: bash -euxo pipefail {0}
35 - id: get-content
36 name: after_release::post_to_discord::get_content
37 uses: 2428392/gh-truncate-string-action@b3ff790d21cf42af3ca7579146eedb93c8fb0757
38 with:
39 stringToTruncate: |
40 📣 Zed [${{ github.event.release.tag_name }}](<${{ steps.get-release-url.outputs.URL }}>) was just released!
41
42 ${{ github.event.release.body }}
43 maxLength: 2000
44 truncationSymbol: '...'
45 - name: after_release::post_to_discord::discord_webhook_action
46 uses: tsickert/discord-webhook@c840d45a03a323fbc3f7507ac7769dbd91bfb164
47 with:
48 webhook-url: ${{ secrets.DISCORD_WEBHOOK_RELEASE_NOTES }}
49 content: ${{ steps.get-content.outputs.string }}
50 publish_winget:
51 runs-on: namespace-profile-2x4-ubuntu-2404
52 steps:
53 - id: set-package-name
54 name: after_release::publish_winget::set_package_name
55 run: |
56 if [ "${{ github.event.release.prerelease }}" == "true" ]; then
57 PACKAGE_NAME=ZedIndustries.Zed.Preview
58 else
59 PACKAGE_NAME=ZedIndustries.Zed
60 fi
61
62 echo "PACKAGE_NAME=$PACKAGE_NAME" >> "$GITHUB_OUTPUT"
63 shell: bash -euxo pipefail {0}
64 - name: after_release::publish_winget::winget_releaser
65 uses: vedantmgoyal9/winget-releaser@19e706d4c9121098010096f9c495a70a7518b30f
66 with:
67 identifier: ${{ steps.set-package-name.outputs.PACKAGE_NAME }}
68 max-versions-to-keep: 5
69 token: ${{ secrets.WINGET_TOKEN }}