Add a github release workflow

This commit is contained in:
Jared Miller 2025-12-15 12:09:52 -05:00
parent cdf07c768e
commit ed829d3b13

57
.github/workflows/release.yml vendored Normal file
View file

@ -0,0 +1,57 @@
name: release
on:
release:
types: [published]
jobs:
build:
strategy:
matrix:
include:
- os: ubuntu-latest
artifact: sandbox-linux-x86_64
- os: macos-latest
artifact: sandbox-macos-aarch64
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- uses: goto-bus-stop/setup-zig@v2
with:
version: 0.15.2
- name: Install X11 dependencies (Linux)
if: matrix.os == 'ubuntu-latest'
run: sudo apt-get update && sudo apt-get install -y libx11-dev libxcursor-dev libxrandr-dev libxinerama-dev libxi-dev libxext-dev libxfixes-dev libgl1-mesa-dev
- run: zig build -Doptimize=ReleaseFast
- run: mv zig-out/bin/sandbox ${{ matrix.artifact }}
- uses: actions/upload-artifact@v4
with:
name: ${{ matrix.artifact }}
path: ${{ matrix.artifact }}
release:
needs: build
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/download-artifact@v4
with:
path: artifacts
merge-multiple: true
- run: chmod +x artifacts/*
- uses: softprops/action-gh-release@v2
with:
files: artifacts/*