@@ -62,9 +62,9 @@ commands:
62
62
default : " 1"
63
63
steps :
64
64
- run :
65
- name : Install node
65
+ name : Install packages
66
66
command : |
67
- apt-get update && apt-get install -y nodejs
67
+ apt-get update && apt-get install -y wget nodejs unzip zip
68
68
- run :
69
69
name : Generate Cache Checksum
70
70
command : |
@@ -79,6 +79,7 @@ commands:
79
79
paths :
80
80
- ~/.m2
81
81
- .cpcache
82
+ - base-src.zip
82
83
key : clojure-<< parameters.cache_version >>-{{ checksum "/tmp/clojure_cache_seed" }}
83
84
84
85
# The jobs are relatively simple. One runs utility commands against
98
99
steps :
99
100
- checkout
100
101
- with_cache :
101
- cache_version : " util_v1_1 .11.4"
102
+ cache_version : " util_v3_1 .11.4"
102
103
steps : << parameters.steps >>
103
104
104
105
deploy :
@@ -115,7 +116,7 @@ jobs:
115
116
command : |
116
117
lein with-profile -user,+deploy run -m deploy-release make deploy
117
118
118
- test_code :
119
+ test :
119
120
description : |
120
121
Run tests against given version of JDK and Clojure
121
122
parameters :
@@ -128,21 +129,23 @@ jobs:
128
129
parser_target :
129
130
description : The Orchard Java parser to be exercised
130
131
type : string
131
- test_command :
132
- description : The command to run
133
- type : string
132
+ default : parser
134
133
executor : << parameters.jdk_version >>
135
134
environment :
136
135
CLOJURE_VERSION : << parameters.clojure_version >>
136
+ PARSER_TARGET : << parameters.parser_target >>
137
137
PROJECT_VERSION : 999.99.9
138
138
steps :
139
139
- checkout
140
140
- with_cache :
141
- cache_version : " test_code_v1_ << parameters.clojure_version >>"
141
+ cache_version : " test_code_v3_ << parameters.clojure_version >>"
142
142
steps :
143
143
- run :
144
144
name : Running tests with inlined deps
145
- command : PARSER_TARGET=<< parameters.parser_target >> make --debug << parameters.test_command >>
145
+ command : make --debug test
146
+ - run :
147
+ name : Running smoketest
148
+ command : make --debug smoketest
146
149
147
150
# The ci-test-matrix does the following:
148
151
#
@@ -157,29 +160,28 @@ workflows:
157
160
version : 2.1
158
161
ci-test-matrix :
159
162
jobs :
160
- - test_code :
163
+ - test :
164
+ # Regular tests for all Clojure and JDK versions (except JDK21, see
165
+ # below). This matrix doesn't perform parser tests because we don't
166
+ # have JDK sources here.
161
167
matrix :
162
- alias : " test_code_jdk8 "
168
+ alias : " test "
163
169
parameters :
164
170
clojure_version : ["1.10", "1.11", "1.12"]
165
- jdk_version : [jdk8]
166
- # It doesn't make sense to exercise the newer Orchard Java parsers against JDK8
167
- # (given that JDK8 is explicitly excluded by those parsers)
168
- parser_target : ["legacy-parser"]
169
- test_command : ["test", "smoketest"]
171
+ jdk_version : [jdk8, jdk11, jdk17, jdk22]
170
172
filters :
171
173
branches :
172
174
only : /.*/
173
175
<< : *tags_filter
174
- - test_code :
176
+ - test :
177
+ # We have source for JDK21, so with this JDK version we also perform
178
+ # Java parser tests (for both regular parser and parser-next).
175
179
matrix :
176
- alias : " test_code "
180
+ alias : " test_with_sources "
177
181
parameters :
178
182
clojure_version : ["1.10", "1.11", "1.12"]
179
- jdk_version : [jdk11, jdk17, jdk21, jdk22]
180
- # Don't test legacy parser on JDK11+ since it is never invoked there.
181
- parser_target : ["parser-next", "parser"]
182
- test_command : ["test", "smoketest"]
183
+ jdk_version : [jdk21]
184
+ parser_target : ["parser", "parser-next"]
183
185
filters :
184
186
branches :
185
187
only : /.*/
@@ -206,8 +208,8 @@ workflows:
206
208
make eastwood
207
209
- deploy :
208
210
requires :
209
- - " test_code "
210
- - " test_code_jdk8 "
211
+ - " test "
212
+ - " test_with_sources "
211
213
- " Code Linting"
212
214
filters :
213
215
branches :
0 commit comments