Skip to content

Commit cb0945e

Browse files
ci
1 parent 3ffd461 commit cb0945e

2 files changed

Lines changed: 65 additions & 8 deletions

File tree

.github/workflows/shared-setup.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
name: Shared setup
2+
3+
on:
4+
workflow_call:
5+
6+
jobs:
7+
setup:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- uses: actions/checkout@v4
11+
- uses: erlef/setup-beam@v1
12+
with:
13+
otp-version: "28"
14+
gleam-version: "1.13.0"
15+
rebar3-version: "3"

.github/workflows/test.yml

Lines changed: 50 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,19 +7,61 @@ on:
77
pull_request:
88

99
jobs:
10-
test:
10+
build:
1111
runs-on: ubuntu-latest
1212
steps:
1313
- uses: actions/checkout@v4
14-
- uses: erlef/setup-beam@v1
15-
with:
16-
otp-version: "27.1.2"
17-
gleam-version: "1.13.0"
18-
rebar3-version: "3"
14+
- uses: ./.github/workflows/shared-setup.yml
1915
- run: gleam deps download
16+
- run: gleam build --target=erl
17+
- run: gleam build --target=js
18+
19+
format:
20+
runs-on: ubuntu-latest
21+
needs: build
22+
steps:
23+
- uses: actions/checkout@v4
24+
- uses: ./.github/workflows/shared-setup.yml
25+
- run: gleam format --check src test
26+
27+
test-erl:
28+
runs-on: ubuntu-latest
29+
needs: build
30+
steps:
31+
- uses: actions/checkout@v4
32+
- uses: ./.github/workflows/shared-setup.yml
2033
- run: gleam test --target=erl
34+
- run: gleam run -m birdie stale check
35+
36+
test-node:
37+
runs-on: ubuntu-latest
38+
needs: build
39+
steps:
40+
- uses: actions/checkout@v4
41+
- uses: ./.github/workflows/shared-setup.yml
42+
- uses: actions/setup-node@v6
43+
with:
44+
node-version: "latest"
2145
- run: gleam test --target=js --runtime=node
46+
47+
test-deno:
48+
runs-on: ubuntu-latest
49+
needs: build
50+
steps:
51+
- uses: actions/checkout@v4
52+
- uses: ./.github/workflows/shared-setup.yml
53+
- uses: denoland/setup-deno@v2
54+
with:
55+
deno-version: "lts"
2256
- run: gleam test --target=js --runtime=deno
57+
58+
test-bun:
59+
runs-on: ubuntu-latest
60+
needs: build
61+
steps:
62+
- uses: actions/checkout@v4
63+
- uses: ./.github/workflows/shared-setup.yml
64+
- uses: oven-sh/setup-bun@v2
65+
with:
66+
bun-version: "latest"
2367
- run: gleam test --target=js --runtime=bun
24-
- run: gleam run -m birdie stale check
25-
- run: gleam format --check src test

0 commit comments

Comments
 (0)