Skip to content

fix: exclude tar output from source archive to prevent CI failure #70

fix: exclude tar output from source archive to prevent CI failure

fix: exclude tar output from source archive to prevent CI failure #70

Workflow file for this run

name: Test Suite
on:
push:
pull_request:
workflow_call:
jobs:
test:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install Zig
uses: mlugg/setup-zig@v2
with:
version: 0.15.2
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
- name: Show Zig version
run: zig version
- name: Install dependencies (Ubuntu)
if: runner.os == 'Linux'
run: |
sudo apt-get update
sudo apt-get install -y build-essential libc6-dev
git submodule update --init --recursive
- name: Install dependencies (macOS)
if: runner.os == 'macOS'
run: |
git submodule update --init --recursive
- name: Install dependencies (Windows)
if: runner.os == 'Windows'
run: |
git clone https://github.com/microsoft/vcpkg.git ..\vcpkg
..\vcpkg\bootstrap-vcpkg.bat
git submodule update --init --recursive
- name: Install example-server dependencies
working-directory: example-server
run: npm install
- name: Start example server
working-directory: example-server
shell: bash
run: npx tsx src/index.ts > ../server.log 2>&1 &
- name: Wait for server to be ready
shell: bash
run: |
for i in $(seq 1 30); do
if curl -s http://localhost:2567 > /dev/null 2>&1; then
echo "Server is ready!"
exit 0
fi
echo "Waiting for server... ($i/30)"
sleep 1
done
echo "Server failed to start"
cat server.log
exit 1
- name: Run tests
run: zig build test
- name: Print server logs
if: always()
run: cat server.log || true