Skip to content

Commit bbcc320

Browse files
committed
Parallelize CI validation jobs
1 parent ac8c83e commit bbcc320

1 file changed

Lines changed: 79 additions & 2 deletions

File tree

.github/workflows/ci.yml

Lines changed: 79 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ env:
1515
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
1616

1717
jobs:
18-
validate:
18+
format-and-unit:
1919
runs-on: ubuntu-latest
2020

2121
steps:
@@ -39,24 +39,96 @@ jobs:
3939
- name: Run test suite
4040
run: dotnet test tests/CodecMapper.Tests/CodecMapper.Tests.fsproj --nologo -v minimal
4141

42+
compat:
43+
runs-on: ubuntu-latest
44+
45+
steps:
46+
- name: Check out repository
47+
uses: actions/checkout@v4
48+
49+
- name: Set up .NET
50+
uses: actions/setup-dotnet@v4
51+
with:
52+
dotnet-version: 10.0.x
53+
54+
- name: Restore local tools
55+
run: dotnet tool restore
56+
57+
- name: Restore solution
58+
run: dotnet restore CodecMapper.sln --nologo
59+
4260
- name: Run AOT sentinel
4361
run: dotnet run --project tests/CodecMapper.AotTests/CodecMapper.AotTests.fsproj --nologo
4462

4563
- name: Run Fable sentinel
4664
run: dotnet run --project tests/CodecMapper.FableTests/CodecMapper.FableTests.fsproj --nologo
4765

66+
fable-transpile:
67+
runs-on: ubuntu-latest
68+
69+
steps:
70+
- name: Check out repository
71+
uses: actions/checkout@v4
72+
73+
- name: Set up .NET
74+
uses: actions/setup-dotnet@v4
75+
with:
76+
dotnet-version: 10.0.x
77+
78+
- name: Restore local tools
79+
run: dotnet tool restore
80+
81+
- name: Restore solution
82+
run: dotnet restore CodecMapper.sln --nologo
83+
4884
- name: Check Fable transpilation
4985
run: bash scripts/check-fable-compat.sh
5086

5187
- name: Check Fable 5 transpilation
5288
run: bash scripts/check-fable5-compat.sh
5389

90+
fable-package:
91+
runs-on: ubuntu-latest
92+
93+
steps:
94+
- name: Check out repository
95+
uses: actions/checkout@v4
96+
97+
- name: Set up .NET
98+
uses: actions/setup-dotnet@v4
99+
with:
100+
dotnet-version: 10.0.x
101+
102+
- name: Restore local tools
103+
run: dotnet tool restore
104+
105+
- name: Restore solution
106+
run: dotnet restore CodecMapper.sln --nologo
107+
54108
- name: Check packaged Fable transpilation
55109
run: bash scripts/check-fable-package-compat.sh
56110

57111
- name: Check packaged Fable 5 transpilation
58112
run: bash scripts/check-fable5-package-compat.sh
59113

114+
docs-and-bench:
115+
runs-on: ubuntu-latest
116+
117+
steps:
118+
- name: Check out repository
119+
uses: actions/checkout@v4
120+
121+
- name: Set up .NET
122+
uses: actions/setup-dotnet@v4
123+
with:
124+
dotnet-version: 10.0.x
125+
126+
- name: Restore local tools
127+
run: dotnet tool restore
128+
129+
- name: Restore solution
130+
run: dotnet restore CodecMapper.sln --nologo
131+
60132
- name: Validate benchmark snapshot generator
61133
run: bash scripts/generate-benchmark-snapshot.sh --stdout-only
62134

@@ -81,7 +153,12 @@ jobs:
81153

82154
deploy-pages:
83155
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master')
84-
needs: validate
156+
needs:
157+
- format-and-unit
158+
- compat
159+
- fable-transpile
160+
- fable-package
161+
- docs-and-bench
85162
runs-on: ubuntu-latest
86163
permissions:
87164
pages: write

0 commit comments

Comments
 (0)