feat: ship an Inno Setup installer from the windows release job
This commit is contained in:
parent
6bb850b9af
commit
433573693c
4 changed files with 90 additions and 10 deletions
|
|
@ -77,9 +77,11 @@ jobs:
|
|||
# desktop machine that isn't guaranteed to be on when a tag is pushed,
|
||||
# so it must never gate the release (and must not be gated by it
|
||||
# either). It builds and bundles via windows/bundle.sh - the same
|
||||
# script windows/setup.sh runs for local one-command builds - then
|
||||
# appends the zip to the release the linux+flatpak jobs create, with
|
||||
# the same poll-for-the-release the macos job does.
|
||||
# script windows/setup.sh runs for local one-command builds - wraps
|
||||
# the bundle in an Inno Setup installer (windows/installer.sh; Inno
|
||||
# lives in this runner host's user profile), then appends both the
|
||||
# portable zip and the setup.exe to the release the linux+flatpak jobs
|
||||
# create, with the same poll-for-the-release the macos job does.
|
||||
windows:
|
||||
runs-on: windows-x86_64
|
||||
steps:
|
||||
|
|
@ -102,6 +104,9 @@ jobs:
|
|||
- run: bash windows/bundle.sh
|
||||
working-directory: carrier
|
||||
shell: bash
|
||||
- run: bash windows/installer.sh
|
||||
working-directory: carrier
|
||||
shell: bash
|
||||
- run: |
|
||||
REPO="${{ forge.repository }}"
|
||||
TAG="${{ forge.ref_name }}"
|
||||
|
|
@ -109,8 +114,7 @@ jobs:
|
|||
FORGEJO="${FORGEJO%%/}"
|
||||
TOKEN="${{ forge.token }}"
|
||||
VERSION=$(sed -n 's/^version = "\(.*\)"$/\1/p' Cargo.toml | head -1)
|
||||
FILE="carrier-windows-$VERSION.zip"
|
||||
NAME="carrier-windows-$VERSION.zip"
|
||||
FILES="carrier-windows-$VERSION.zip carrier-windows-$VERSION-setup.exe"
|
||||
|
||||
release_id=""
|
||||
for i in $(seq 1 40); do
|
||||
|
|
@ -128,11 +132,13 @@ jobs:
|
|||
exit 1
|
||||
fi
|
||||
|
||||
curl --retry 5 --fail -sS -X POST \
|
||||
-H "Authorization: token $TOKEN" \
|
||||
-H "Content-Type: multipart/form-data" \
|
||||
-F "attachment=@$FILE" \
|
||||
"$FORGEJO/api/v1/repos/$REPO/releases/$release_id/assets?name=$NAME"
|
||||
for FILE in $FILES; do
|
||||
curl --retry 5 --fail -sS -X POST \
|
||||
-H "Authorization: token $TOKEN" \
|
||||
-H "Content-Type: multipart/form-data" \
|
||||
-F "attachment=@$FILE" \
|
||||
"$FORGEJO/api/v1/repos/$REPO/releases/$release_id/assets?name=$FILE"
|
||||
done
|
||||
working-directory: carrier
|
||||
shell: bash
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue