-
Notifications
You must be signed in to change notification settings - Fork 66
49 lines (43 loc) · 1.5 KB
/
dst.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
44
45
46
47
48
49
name: DST
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
dst:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Go
run: |
curl -L -o go-custom-linux-amd64.tar.gz https://github.com/polarsignals/go/releases/download/v0.0.1/go-custom-linux-amd64.tar.gz
tar -xzf go-custom-linux-amd64.tar.gz
sudo mv go /usr/local/go
echo "/usr/local/go/bin" >> $GITHUB_PATH
echo "GOROOT=/usr/local/go" >> $GITHUB_ENV
- name: Setup Go module cache
uses: actions/cache@v4
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-golang-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-golang-
- name: Compile DST Test and runtime
run: |
# ldflags=-checklinkname=0 is required for parquet-go to build with
# Go 1.23.
GOOS=wasip1 GOARCH=wasm go test -tags=faketime -ldflags=-checklinkname=0 -c -o dst.wasm ./dst
go build ./dst/runtime
- name: Run DST Test
run: |
echo "Running DST Test. The first run is slow due to module compilation. A compilation cache is used for subsequent runs."
iterations=10
for ((i=0; i < iterations; i++))
do
export GORANDSEED=$RANDOM$RANDOM$RANDOM$RANDOM$RANDOM$RANDOM
echo "Running DST test iteration $((i+1))/${iterations} with GORANDSEED=${GORANDSEED}"
./runtime --module=./dst.wasm
done