Merge branch 'wailsapp:master' into master #9
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: Build + Test v2 | |
on: | |
push: | |
branches: [release/*, master, bugfix/*] | |
workflow_dispatch: | |
jobs: | |
test_go: | |
name: Run Go Tests | |
if: github.repository == 'wailsapp/wails' | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-22.04, ubuntu-24.04, windows-latest, macos-latest] | |
go-version: ['1.22'] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- uses: awalsh128/cache-apt-pkgs-action@latest | |
if: matrix.os == 'ubuntu-22.04' | |
with: | |
packages: libgtk-3-dev libwebkit2gtk-4.0-dev build-essential pkg-config | |
version: 1.0 | |
- uses: awalsh128/cache-apt-pkgs-action@latest | |
if: matrix.os == 'ubuntu-24.04' | |
with: | |
packages: libgtk-3-dev libwebkit2gtk-4.1-dev build-essential pkg-config libegl1 | |
version: 1.0 | |
- name: Setup Go | |
uses: actions/setup-go@v4 | |
with: | |
go-version: ${{ matrix.go-version }} | |
cache-dependency-path: ./v2/go.sum | |
- name: Run tests (mac) | |
if: matrix.os == 'macos-latest' | |
env: | |
CGO_LDFLAGS: -framework UniformTypeIdentifiers -mmacosx-version-min=10.13 | |
working-directory: ./v2 | |
run: go test -v ./... | |
- name: Run tests (!mac) | |
if: matrix.os != 'macos-latest' && matrix.os != 'ubuntu-24.04' | |
working-directory: ./v2 | |
run: go test -v ./... | |
- name: Run tests (Ubuntu 24.04) | |
if: matrix.os == 'ubuntu-24.04' | |
working-directory: ./v2 | |
run: go test -v -tags webkit2_41 ./... | |
test_js: | |
name: Run JS Tests | |
if: github.repository == 'wailsapp/wails' | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [20.x] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- name: Install dependencies | |
run: npm install | |
working-directory: v2/internal/frontend/runtime | |
- name: Run tests | |
run: npm test | |
working-directory: v2/internal/frontend/runtime | |
test_templates: | |
name: Test Templates | |
needs: test_go | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: true | |
matrix: | |
os: [ubuntu-22.04, windows-latest, macos-latest, ubuntu-24.04] | |
template: | |
[ | |
svelte, | |
svelte-ts, | |
vue, | |
vue-ts, | |
react, | |
react-ts, | |
preact, | |
preact-ts, | |
lit, | |
lit-ts, | |
vanilla, | |
vanilla-ts, | |
plain, | |
] | |
go-version: ['1.22'] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: ${{ matrix.go-version }} | |
cache-dependency-path: ./v2/go.sum | |
- name: Build Wails CLI | |
run: | | |
cd ./v2/cmd/wails | |
go install | |
wails -help | |
- uses: awalsh128/cache-apt-pkgs-action@latest | |
if: matrix.os == 'ubuntu-22.04' | |
with: | |
packages: libgtk-3-dev libwebkit2gtk-4.0-dev build-essential pkg-config | |
version: 1.0 | |
# - name: Install linux dependencies ( 22.04 ) | |
# if: matrix.os == 'ubuntu-22.04' | |
# run: sudo apt-get update -y && sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev build-essential pkg-config | |
- uses: awalsh128/cache-apt-pkgs-action@latest | |
if: matrix.os == 'ubuntu-24.04' | |
with: | |
packages: libgtk-3-dev libwebkit2gtk-4.1-dev build-essential pkg-config libegl1 | |
version: 1.0 | |
# - name: Install linux dependencies ( 24.04 ) | |
# if: matrix.os == 'ubuntu-24.04' | |
# run: sudo apt-get update -y && sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev build-essential pkg-config | |
- name: Generate & Build template '${{ matrix.template }}' | |
if: matrix.os != 'ubuntu-24.04' | |
run: | | |
mkdir -p ./test-${{ matrix.template }} | |
cd ./test-${{ matrix.template }} | |
wails init -n ${{ matrix.template }} -t ${{ matrix.template }} -ci | |
cd ${{ matrix.template }} | |
wails build -v 2 | |
- name: Generate & Build template '${{ matrix.template }}' (ubuntu-24.04) | |
if: matrix.os == 'ubuntu-24.04' | |
run: | | |
mkdir -p ./test-${{ matrix.template }} | |
cd ./test-${{ matrix.template }} | |
wails init -n ${{ matrix.template }} -t ${{ matrix.template }} -ci | |
cd ${{ matrix.template }} | |
wails build -v 2 -tags webkit2_41 | |