1212permissions :
1313 contents : write
1414
15+ env :
16+ RELEASE_TAG : ${{ inputs.release_tag || github.event.release.tag_name }}
17+
1518jobs :
1619 release :
1720 name : Build ${{ matrix.platform.name }}
@@ -47,40 +50,36 @@ jobs:
4750 run : gh release view "$RELEASE_TAG" --repo "$GITHUB_REPOSITORY"
4851 env :
4952 GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
50- RELEASE_TAG : ${{ inputs.release_tag }}
5153
52- - name : Read release notification marker
54+ - name : Read release type
5355 id : release_metadata
5456 shell : bash
5557 run : |
5658 set -euo pipefail
57- gh release view "$RELEASE_TAG" \
59+ is_prerelease="$( gh release view "$RELEASE_TAG" \
5860 --repo "$GITHUB_REPOSITORY" \
59- --json body \
60- --jq .body > "$RUNNER_TEMP/release-body.txt "
61+ --json isPrerelease \
62+ --jq .isPrerelease) "
6163
62- if grep -Fqi '[notify-update]' "$RUNNER_TEMP/release-body.txt "; then
63- echo "notify_update=true " >> "$GITHUB_OUTPUT"
64+ if test "$is_prerelease" = "true "; then
65+ echo "publish_update=false " >> "$GITHUB_OUTPUT"
6466 else
65- echo "notify_update=false " >> "$GITHUB_OUTPUT"
67+ echo "publish_update=true " >> "$GITHUB_OUTPUT"
6668 fi
6769 env :
6870 GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
69- RELEASE_TAG : ${{ inputs.release_tag }}
7071
7172 - name : Check out repository
7273 uses : actions/checkout@v4
7374 with :
74- ref : ${{ inputs.release_tag }}
75+ ref : ${{ env.RELEASE_TAG }}
7576 fetch-depth : 0
7677
7778 - name : Verify checked out tag
7879 shell : bash
7980 run : |
8081 set -euo pipefail
8182 test "$(git describe --tags --exact-match)" = "$RELEASE_TAG"
82- env :
83- RELEASE_TAG : ${{ inputs.release_tag }}
8483
8584 - name : Set up Node.js
8685 uses : actions/setup-node@v4
@@ -130,9 +129,10 @@ jobs:
130129 TAURI_SIGNING_PRIVATE_KEY : ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
131130 TAURI_SIGNING_PRIVATE_KEY_PASSWORD : ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
132131 with :
133- tagName : ${{ inputs.release_tag }}
132+ tagName : ${{ env.RELEASE_TAG }}
134133 releaseDraft : false
135- uploadUpdaterJson : ${{ steps.release_metadata.outputs.notify_update }}
134+ uploadUpdaterJson : ${{ steps.release_metadata.outputs.publish_update }}
135+ uploadUpdaterSignatures : false
136136 updaterJsonPreferNsis : true
137137 args : ${{ matrix.platform.build_args }}
138138
@@ -146,7 +146,6 @@ jobs:
146146 --clobber
147147 env :
148148 GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
149- RELEASE_TAG : ${{ inputs.release_tag }}
150149
151150 - name : Verify macOS DMG and app signature
152151 if : startsWith(matrix.platform.name, 'macOS')
@@ -180,30 +179,29 @@ jobs:
180179 - name : Check out repository
181180 uses : actions/checkout@v4
182181 with :
183- ref : ${{ inputs.release_tag }}
182+ ref : ${{ env.RELEASE_TAG }}
184183 fetch-depth : 0
185184
186- - name : Read release notification marker
185+ - name : Read release type
187186 id : release_metadata
188187 shell : bash
189188 run : |
190189 set -euo pipefail
191- gh release view "$RELEASE_TAG" \
190+ is_prerelease="$( gh release view "$RELEASE_TAG" \
192191 --repo "$GITHUB_REPOSITORY" \
193- --json body \
194- --jq .body > "$RUNNER_TEMP/release-body.txt "
192+ --json isPrerelease \
193+ --jq .isPrerelease) "
195194
196- if grep -Fqi '[notify-update]' "$RUNNER_TEMP/release-body.txt "; then
197- echo "notify_update=true " >> "$GITHUB_OUTPUT"
195+ if test "$is_prerelease" = "true "; then
196+ echo "publish_update=false " >> "$GITHUB_OUTPUT"
198197 else
199- echo "notify_update=false " >> "$GITHUB_OUTPUT"
198+ echo "publish_update=true " >> "$GITHUB_OUTPUT"
200199 fi
201200 env :
202201 GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
203- RELEASE_TAG : ${{ inputs.release_tag }}
204202
205203 - name : Download generated updater metadata
206- if : steps.release_metadata.outputs.notify_update == 'true'
204+ if : steps.release_metadata.outputs.publish_update == 'true'
207205 shell : bash
208206 run : |
209207 set -euo pipefail
@@ -214,10 +212,9 @@ jobs:
214212 test -s "$RUNNER_TEMP/updater-channel/latest.json"
215213 env :
216214 GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
217- RELEASE_TAG : ${{ inputs.release_tag }}
218215
219216 - name : Publish updater channel
220- if : steps.release_metadata.outputs.notify_update == 'true'
217+ if : steps.release_metadata.outputs.publish_update == 'true'
221218 shell : bash
222219 run : |
223220 set -euo pipefail
@@ -243,5 +240,3 @@ jobs:
243240
244241 git commit -m "Offer $RELEASE_TAG through the updater"
245242 git push origin updater-channel
246- env :
247- RELEASE_TAG : ${{ inputs.release_tag }}
0 commit comments