By explicitly setting the shell to bash in GitHub actions workflow, this
commit fixes the failure of automated releases on Windows. Previously,
the default PowerShell environment on Windows runners led to syntax
incompatibilities, causing the release process to fail with an error
when executing git checkout commands.
This changes allows successful application publishing on Windows by
avoiding syntax issues due to PowerShell interpreting commands
differently, fixing the following error encountered:
```
Run git checkout "$(git rev-list "0.13.0"..master | tail -1)"
git checkout "$(git rev-list "0.13.0"..master | tail -1)"
shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'"
fatal: empty string is not a valid pathspec. please use . instead if you meant to match all paths
Error: Process completed with exit code 1.
```
43 lines
1.3 KiB
YAML
43 lines
1.3 KiB
YAML
name: release-desktop
|
|
|
|
on:
|
|
release:
|
|
types: [created] # will be triggered when a NON-draft release is created and published.
|
|
|
|
jobs:
|
|
publish-desktop-app:
|
|
name: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [macos, ubuntu, windows]
|
|
fail-fast: false # So publish runs for other OSes if one fails
|
|
runs-on: ${{ matrix.os }}-latest
|
|
steps:
|
|
-
|
|
uses: actions/checkout@v4
|
|
with:
|
|
ref: master # otherwise it defaults to the version tag missing bump commit
|
|
fetch-depth: 0 # fetch all history
|
|
-
|
|
name: Checkout to bump commit
|
|
shell: bash
|
|
run: git checkout "$(git rev-list "${{ github.event.release.tag_name }}"..master | tail -1)"
|
|
-
|
|
name: Setup node
|
|
uses: ./.github/actions/setup-node
|
|
-
|
|
name: Install dependencies
|
|
uses: ./.github/actions/npm-install-dependencies
|
|
-
|
|
name: Run unit tests
|
|
run: npm run test:unit
|
|
-
|
|
name: Prebuild
|
|
run: npm run electron:prebuild
|
|
-
|
|
name: Build and publish
|
|
run: npm run electron:build -- --publish always
|
|
env:
|
|
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
EP_GH_IGNORE_TIME: true # Otherwise publishing fails if GitHub release is more than 2 hours old https://github.com/electron-userland/electron-builder/issues/2074
|