Make build scripts executable (#924) #2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release | |
on: | |
push: | |
branches: [main] | |
workflow_dispatch: | |
jobs: | |
release-check: | |
name: Check if version changed | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
ref: main | |
- name: Use Node.js from nvmrc | |
uses: actions/setup-node@v4 | |
with: | |
node-version-file: ".nvmrc" | |
- name: Check if version has been updated | |
id: check | |
uses: EndBug/version-check@v2 | |
outputs: | |
publish: ${{ steps.check.outputs.changed }} | |
release: | |
name: Release | |
needs: release-check | |
if: ${{ needs.release-check.outputs.publish == 'true' }} | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
ref: main | |
- name: Use Node.js from nvmrc | |
uses: actions/setup-node@v4 | |
with: | |
node-version-file: ".nvmrc" | |
registry-url: "https://registry.npmjs.org" | |
- name: Set up Go for desktop build | |
uses: actions/setup-go@v5 | |
with: | |
go-version: ^1.23.x | |
cache-dependency-path: desktop/go.sum | |
id: go | |
- name: Get version | |
id: package-version | |
uses: martinbeentjes/[email protected] | |
- name: Install | |
run: npm ci | |
- name: Build | |
run: | | |
npm run build | |
npm run build-desktop | |
- name: Tag commit and push | |
id: tag_version | |
uses: mathieudutour/[email protected] | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
custom_tag: ${{ steps.package-version.outputs.current-version }} | |
- name: Create Archives | |
run: | | |
zip -r dist dist | |
zip -r desktop desktop/bin/ | |
- name: Build Release Notes | |
id: release_notes | |
run: | | |
RELEASE_NOTES_PATH="${PWD}/release_notes.txt" | |
./build/release-notes.js > ${RELEASE_NOTES_PATH} | |
echo "release_notes=${RELEASE_NOTES_PATH}" >> $GITHUB_OUTPUT | |
- name: Create GitHub Release | |
id: create_regular_release | |
uses: ncipollo/release-action@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
tag: ${{ steps.tag_version.outputs.new_tag }} | |
name: ${{ steps.tag_version.outputs.new_tag }} | |
bodyFile: ${{ steps.release_notes.outputs.release_notes }} | |
artifacts: "dist.zip,desktop.zip" | |
allowUpdates: true | |
draft: false | |
prerelease: false | |