@@ -93,6 +93,7 @@ commands:
93
93
cd tests/pytest/logs
94
94
rm -f *.aof *.rdb
95
95
fi
96
+ when : always
96
97
- store_artifacts :
97
98
path : tests/pytest/logs
98
99
@@ -194,14 +195,47 @@ commands:
194
195
make publish OSNICK="<<parameters.platform>>" VERSION=$CIRCLE_TAG BRANCH=$CIRCLE_BRANCH OFFICIAL=0 SHOW=1 VERBOSE=1
195
196
- persist-artifacts
196
197
198
+ vm-build-platforms-steps :
199
+ parameters :
200
+ platform :
201
+ type : string
202
+ steps :
203
+ - early-returns
204
+ - checkout
205
+ - setup-automation
206
+ - run :
207
+ name : Install Docker
208
+ command : bash <(curl -fsSL https://raw.githubusercontent.com/docker/docker-install/master/install.sh)
209
+ - run :
210
+ name : Build for platform
211
+ command : |
212
+ ROOT=$PWD
213
+ # make -C build/docker build DOCKER_SUFFIX=".<<parameters.platform>>" OSNICK=<<parameters.platform>> PACK=1 TEST=1 VERBOSE=1
214
+ cd build/platforms
215
+ make build OSNICK="<<parameters.platform>>" VERSION=$CIRCLE_TAG BRANCH=$CIRCLE_BRANCH ARTIFACTS=1 TEST=1 SHOW=1
216
+ cd $ROOT
217
+ mkdir -p tests/pytest/logs
218
+ tar -C tests/pytest/logs -xzf bin/artifacts/pytest-logs*.tgz
219
+ no_output_timeout : 30m
220
+ - save-tests-logs
221
+ - early-return-for-forked-pull-requests
222
+ - run :
223
+ name : Build for platform (publish)
224
+ command : |
225
+ docker login -u redisfab -p $DOCKER_REDISFAB_PWD
226
+ # make -C build/docker build DOCKER_SUFFIX=".<<parameters.platform>>" OSNICK=<<parameters.platform>> PACK=1 TEST=1 VERBOSE=1 PUBLISH=1 DOCKERWRAPPER_EXTRA_VARS="DOCKER_PUSH_ONLY=1"
227
+ cd build/platforms
228
+ make publish OSNICK="<<parameters.platform>>" VERSION=$CIRCLE_TAG BRANCH=$CIRCLE_BRANCH OFFICIAL=0 SHOW=1 VERBOSE=1
229
+ - persist-artifacts
230
+
197
231
benchmark-steps :
198
232
parameters :
199
233
github_actor :
200
234
type : string
201
235
default : $CIRCLE_USERNAME
202
236
module_path :
203
237
type : string
204
- default : ../../target/ release/rejson.so
238
+ default : bin/linux-x64- release/rejson.so
205
239
steps :
206
240
- run :
207
241
name : Install remote benchmark tool dependencies
@@ -215,15 +249,16 @@ commands:
215
249
timeout : 60m
216
250
no_output_timeout : 30m
217
251
command : |
218
- cd ./tests/benchmarks
252
+ ROOT="$PWD"
253
+ cd tests/benchmarks
219
254
export AWS_ACCESS_KEY_ID=$PERFORMANCE_EC2_ACCESS_KEY
220
255
export AWS_SECRET_ACCESS_KEY=$PERFORMANCE_EC2_SECRET_KEY
221
256
export AWS_DEFAULT_REGION=$PERFORMANCE_EC2_REGION
222
257
export EC2_PRIVATE_PEM=$PERFORMANCE_EC2_PRIVATE_PEM
223
258
224
259
redisbench-admin run-remote \
225
260
--required-module ReJSON \
226
- --module_path "<< parameters.module_path >>" \
261
+ --module_path "$ROOT/ << parameters.module_path >>" \
227
262
--github_actor "<< parameters.github_actor >>" \
228
263
--github_repo $CIRCLE_PROJECT_REPONAME \
229
264
--github_org $CIRCLE_PROJECT_USERNAME \
@@ -248,11 +283,22 @@ jobs:
248
283
platform :
249
284
type : string
250
285
docker :
251
- - image : debian:buster
286
+ - image : debian:bullseye
252
287
steps :
253
288
- platforms-build-steps :
254
289
platform : <<parameters.platform>>
255
290
291
+ build-arm-platforms :
292
+ parameters :
293
+ platform :
294
+ type : string
295
+ machine :
296
+ image : ubuntu-2004:202101-01
297
+ resource_class : arm.medium
298
+ steps :
299
+ - vm-build-platforms-steps :
300
+ platform : <<parameters.platform>>
301
+
256
302
build-macos :
257
303
macos :
258
304
xcode : 11.6.0
@@ -388,6 +434,12 @@ workflows:
388
434
matrix :
389
435
parameters :
390
436
platform : [focal, bionic, xenial, centos8, centos7, bullseye]
437
+ - build-arm-platforms :
438
+ << : *on-integ-and-version-tags
439
+ context : common
440
+ matrix :
441
+ parameters :
442
+ platform : [focal]
391
443
- build-macos :
392
444
<< : *on-integ-and-version-tags
393
445
- deploy-artifacts :
@@ -397,15 +449,18 @@ workflows:
397
449
<< : *on-integ-branch
398
450
requires :
399
451
- platforms-build
452
+ - build-arm-platforms
400
453
- build-macos
401
454
- deploy-artifacts :
402
455
name : deploy_release
403
456
context : common
404
457
<< : *on-version-tags
405
458
requires :
406
459
- platforms-build
460
+ - build-arm-platforms
407
461
- build-macos
408
462
- release-automation :
463
+ context : common
409
464
<< : *on-version-tags
410
465
requires :
411
466
- deploy_release
@@ -425,4 +480,3 @@ workflows:
425
480
jobs :
426
481
- performance-automation :
427
482
context : common
428
-
0 commit comments