Skip to content

Workflow file for this run

name: Wails build
on:
push:
tags:
# Match any new tag
- '*'
env:
# Necessary for most environments as build failure can occur due to OOM issues
NODE_OPTIONS: "--max-old-space-size=4096"
jobs:
build:
permissions:
contents: write
packages: write
strategy:
# Failure in one platform build won't impact the others
fail-fast: false
matrix:
build:
- name: 'linux-amd64'
platform: 'linux/amd64'
os: 'ubuntu-latest'
- name: 'windows-amd64'
platform: 'windows/amd64'
os: 'windows-latest'
- name: 'darwin-amd64'
platform: 'darwin/amd64'
os: 'macos-latest'
- name: 'darwin-arm64'
platform: 'darwin/arm64'
os: 'macos-latest'
runs-on: ${{ matrix.build.os }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: recursive
- name: Setup Go
uses: actions/setup-go@v2
with:
go-version: '1.22'
cache: 'go-build'
- name: Setup Node
uses: actions/setup-node@v2
with:
node-version: '22'
- name: Setup Bun
uses: oven-sh/setup-bun@v1
with:
bun-version: 'latest'
- name: Install Wails
run: go install github.com/wailsapp/wails/v2/cmd/wails@latest
- name: Build Wails
run: wails build
- name: Upload Artifacts
uses: actions/upload-artifact@v2
with:
name: ${{ matrix.build.name }}
path: build/bin/*