-
Notifications
You must be signed in to change notification settings - Fork 593
43 lines (36 loc) · 1.14 KB
/
ice2slice.yml
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
name: Run ice2slice
on:
workflow_dispatch:
push:
branches: ["main"]
pull_request:
# The branches below must be a subset of the branches above
branches: ["main"]
jobs:
ice2slice:
runs-on: ubuntu-24.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup Dependencies
uses: ./.github/actions/setup-dependencies
with:
use_ccache: false
- name: Build ice2slice
working-directory: ./cpp
run: make V=1 ice2slice
- name: Test ice2slice
working-directory: ./slice
run: |
# Run ice2slice on all .ice files in the slice directory
for dir in */; do ../cpp/bin/ice2slice -I. "$dir"/*.ice --output-dir $dir; done
while IFS= read -r file; do
# Derive the matching *.slice filename
base="${file%.ice}"
slice_file="${base}.slice"
# Check if the *.slice file exists
if [ ! -f "$slice_file" ]; then
echo "Error: No matching .slice file for $file"
exit 1
fi
done < <(find . -type f -name "*.ice")