-
Notifications
You must be signed in to change notification settings - Fork 0
76 lines (65 loc) · 1.61 KB
/
Copy pathruntime-ci.yml
File metadata and controls
76 lines (65 loc) · 1.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
name: Runtime CI
on:
push:
branches: [main]
paths:
- '.github/workflows/runtime-ci.yml'
- 'README.md'
- 'benchmarks/runtime/**'
- 'build.zig'
- 'build.zig.zon'
- 'src/runtime/**'
- 'zig-pkg/**'
pull_request:
paths:
- '.github/workflows/runtime-ci.yml'
- 'README.md'
- 'benchmarks/runtime/**'
- 'build.zig'
- 'build.zig.zon'
- 'src/runtime/**'
- 'zig-pkg/**'
permissions:
contents: read
env:
ZIG_VERSION: "0.16.0"
defaults:
run:
shell: bash
jobs:
runtime:
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-latest
artifact: linux-x86_64
- os: macos-latest
artifact: macos-arm64
- os: macos-13
artifact: macos-x86_64
- os: windows-latest
artifact: windows-x86_64
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Build runtime
run: zig build
- name: Runtime tests
run: zig build test-runtime
- name: Run benchmarks
run: zig build bench-runtime 2>&1 | tee runtime-benchmarks.txt
- name: Verify benchmark artifact
run: test -s bench-results.json
- name: Upload benchmark results
if: always()
uses: actions/upload-artifact@v4
with:
name: runtime-benchmarks-${{ matrix.artifact }}
path: |
bench-results.json
runtime-benchmarks.txt
if-no-files-found: error