Skip to content

Update CI

Update CI #66

Workflow file for this run

name: wasm
on:
push:
env:
# Required Swift toolchain version for WASM builds
# Must match REQUIRED_TOOLCHAIN_VERSION in scripts/build-and-test-wasm.sh
SWIFT_TOOLCHAIN_VERSION: "DEVELOPMENT-SNAPSHOT-2025-11-03-a"
jobs:
build:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
# Install the specific Swift development snapshot required for WASM builds
- name: Install Swift Toolchain
run: |
SWIFT_URL="https://download.swift.org/development/ubuntu2404/swift-${SWIFT_TOOLCHAIN_VERSION}/swift-${SWIFT_TOOLCHAIN_VERSION}-ubuntu24.04.tar.gz"
echo "Downloading Swift toolchain from: $SWIFT_URL"
curl -sL "$SWIFT_URL" | tar xz --strip-components=1 -C /opt
echo "/opt/usr/bin" >> $GITHUB_PATH
- name: Verify Swift Installation
run: swift --version
# Wasmtime is required because `swift test` doesn't work for WebAssembly targets.
# For WASM, we must build tests separately and run them with a WASM runtime.
# See: https://book.swiftwasm.org/getting-started/testing.html
- name: Install Wasmtime
uses: bytecodealliance/actions/wasmtime/setup@v1
with:
version: "40.0.2"
github_token: ${{ github.token }}
- name: Build and Test
run: ./scripts/build-and-test-wasm.sh