From 80f5d533de9b85b22624e1067d7010e3a0b6fc20 Mon Sep 17 00:00:00 2001 From: Jonatan Heyman Date: Wed, 29 May 2024 10:29:17 +0200 Subject: [PATCH] Add Github workflow for building linux binary and and uploading artifact if #linux-build is specified in commit message --- .github/workflows/linux-build.yml | 46 +++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 .github/workflows/linux-build.yml diff --git a/.github/workflows/linux-build.yml b/.github/workflows/linux-build.yml new file mode 100644 index 00000000..52ce1368 --- /dev/null +++ b/.github/workflows/linux-build.yml @@ -0,0 +1,46 @@ +name: Build only Linux binary + +on: push + +jobs: + release: + runs-on: ${{ matrix.os }} + if: ${{ contains(github.event.head_commit.message, '#linux-build') }} + + strategy: + matrix: + os: [ubuntu-latest] + + steps: + - name: Check out Git repository + uses: actions/checkout@v1 + + - name: Install Node.js, NPM and Yarn + uses: actions/setup-node@v1 + with: + node-version: 18 + + - name: Build/release Electron app + uses: samuelmeuli/action-electron-builder@v1 + with: + # Specify electron-builder config file + args: -c electron-builder.json5 + + # NPM script to execute before electron-builder + build_script_name: prebuild + + # GitHub token, automatically provided to the action + # (No need to define this secret in the repo settings) + github_token: ${{ secrets.github_token }} + + # If the commit is tagged with a version (e.g. "v1.0.0"), + # release the app after building + release: ${{ startsWith(github.ref, 'refs/tags/v') }} + + - name: Upload Linux artifact + if: ${{ matrix.os == 'ubuntu-latest' }} + uses: actions/upload-artifact@v3 + with: + name: heynote-linux-${{ github.sha }} + path: release/*/Heynote_*.AppImage + retention-days: 30