Skip to content

Commit 74379a6

Browse files
authored
Run each implementation's tests in separate Github Actions steps (#841)
* Run each implementation's tests in separate Github Actions steps * Default PR triggers * Oops!
1 parent b9bd881 commit 74379a6

File tree

1 file changed

+75
-13
lines changed

1 file changed

+75
-13
lines changed

.github/workflows/ci.yml

Lines changed: 75 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,16 @@ name: tests
22

33
on:
44
pull_request:
5-
branches: [main]
65
push:
7-
branches: [main]
6+
branches: [ main ]
87
workflow_dispatch: # Supports manual triggering
98

109
env:
1110
# increment to "clear" the cache
1211
CACHE_VERSION: "v1"
1312

1413
jobs:
15-
test:
14+
test-jvm:
1615
runs-on: ubuntu-latest
1716
steps:
1817
- uses: actions/checkout@v4
@@ -41,13 +40,37 @@ jobs:
4140
key: cljdeps-${{ env.CACHE_VERSION }}-${{ hashFiles('project.clj') }}-${{ hashFiles('deps.edn') }}-${{ hashFiles('bb.edn') }}
4241
restore-keys: cljdeps-${{ env.CACHE_VERSION }}-
4342

44-
- name: Prepare dotnet
45-
uses: xt0rted/setup-dotnet@v1.5.0
43+
- name: Run Clojure tests
44+
run: lein test
4645

47-
- name: Install ClojureCLR
48-
run: |
49-
dotnet tool install --global Clojure.Main --version 1.12.3-alpha4
50-
dotnet tool install --global Clojure.Cljr --version 0.1.0-alpha6
46+
test-cljs:
47+
runs-on: ubuntu-latest
48+
steps:
49+
- uses: actions/checkout@v4
50+
51+
- name: Prepare java
52+
uses: actions/setup-java@v4
53+
with:
54+
distribution: "temurin"
55+
java-version: "21"
56+
57+
- name: Install clojure tools
58+
uses: DeLaGuardo/setup-clojure@13.2
59+
with:
60+
cli: 1.12.0.1530
61+
lein: 2.11.2
62+
bb: latest
63+
64+
- name: Cache clojure dependencies
65+
uses: actions/cache@v4
66+
with:
67+
path: |
68+
~/.m2/repository
69+
~/.gitlibs
70+
~/.deps.clj
71+
# List all files containing dependencies:
72+
key: cljdeps-${{ env.CACHE_VERSION }}-${{ hashFiles('project.clj') }}-${{ hashFiles('deps.edn') }}-${{ hashFiles('bb.edn') }}
73+
restore-keys: cljdeps-${{ env.CACHE_VERSION }}-
5174

5275
- name: Prepare node
5376
uses: actions/setup-node@v4
@@ -66,11 +89,50 @@ jobs:
6689
- name: Run ClojureScript Tests
6790
run: npm test
6891

69-
- name: Run Clojure tests
70-
run: lein test
92+
test-bb:
93+
runs-on: ubuntu-latest
94+
steps:
95+
- uses: actions/checkout@v4
7196

72-
- name: Run ClojureCLR Tests
73-
run: cljr -X:test
97+
- name: Prepare java
98+
uses: actions/setup-java@v4
99+
with:
100+
distribution: "temurin"
101+
java-version: "21"
102+
103+
- name: Install clojure tools
104+
uses: DeLaGuardo/setup-clojure@13.2
105+
with:
106+
cli: 1.12.0.1530
107+
lein: 2.11.2
108+
bb: latest
109+
110+
- name: Cache clojure dependencies
111+
uses: actions/cache@v4
112+
with:
113+
path: |
114+
~/.m2/repository
115+
~/.gitlibs
116+
~/.deps.clj
117+
# List all files containing dependencies:
118+
key: cljdeps-${{ env.CACHE_VERSION }}-${{ hashFiles('project.clj') }}-${{ hashFiles('deps.edn') }}-${{ hashFiles('bb.edn') }}
119+
restore-keys: cljdeps-${{ env.CACHE_VERSION }}-
74120

75121
- name: Run babashka tests
76122
run: bb test-bb
123+
124+
test-clr:
125+
runs-on: ubuntu-latest
126+
steps:
127+
- uses: actions/checkout@v4
128+
129+
- name: Prepare dotnet
130+
uses: xt0rted/setup-dotnet@v1.5.0
131+
132+
- name: Install ClojureCLR
133+
run: |
134+
dotnet tool install --global Clojure.Main --version 1.12.3-alpha4
135+
dotnet tool install --global Clojure.Cljr --version 0.1.0-alpha6
136+
137+
- name: Run ClojureCLR Tests
138+
run: cljr -X:test

0 commit comments

Comments
 (0)