@@ -101,7 +101,7 @@ commands:
101101 steps :
102102 - run :
103103 name : Install test dependencies
104- command : cargo install cargo-nextest cargo-llvm-cov
104+ command : cargo install --locked cargo-nextest cargo-llvm-cov
105105
106106 make-test-dir :
107107 steps :
@@ -145,34 +145,18 @@ commands:
145145 make run_token_server_integration_tests
146146 environment :
147147 SYNCSTORAGE_RS_IMAGE : app:build
148- run-e2e-mysql-tests :
149- steps :
150- - run :
151- name : e2e tests (syncstorage mysql)
152- command : >
153- /usr/local/bin/docker-compose
154- -f docker-compose.mysql.yaml
155- -f docker-compose.e2e.mysql.yaml
156- up
157- --exit-code-from mysql-e2e-tests
158- --abort-on-container-exit
159- environment :
160- SYNCSTORAGE_RS_IMAGE : app:build
161-
162-
163- run-e2e-spanner-tests :
148+ run-e2e-tests :
149+ parameters :
150+ db :
151+ type : enum
152+ enum : ["mysql", "spanner"]
164153 steps :
165154 - run :
166- name : e2e tests (syncstorage spanner )
155+ name : e2e tests (syncstorage << parameters.db >> )
167156 command : >
168- /usr/local/bin/docker-compose
169- -f docker-compose.spanner.yaml
170- -f docker-compose.e2e.spanner.yaml
171- up
172- --exit-code-from spanner-e2e-tests
173- --abort-on-container-exit
157+ make docker_run_<< parameters.db >>_e2e_tests
174158 environment :
175- SYNCSTORAGE_RS_IMAGE : app:build
159+ SYNCSTORAGE_RS_IMAGE : app:build
176160
177161 upload-to-gcs :
178162 parameters :
@@ -283,7 +267,6 @@ jobs:
283267 # if the above tests don't run tokenserver-db tests (i.e. using --workspace)
284268 # then run-tokenserver-scripts-tests will fail. These tests expect the db to be
285269 # configured already, and it appears unit-tests modify the db to the expected state
286- - run-tokenserver-integration-tests
287270 - store-test-results
288271 - upload-to-gcs :
289272 source : workflow/test-results
@@ -324,11 +307,13 @@ jobs:
324307 - run :
325308 name : Save docker-compose config
326309 command : cp docker-compose*mysql.yaml /home/circleci/cache
310+ - run :
311+ name : Save Makefile to cache
312+ command : cp Makefile /home/circleci/cache
327313 - save_cache :
328314 key : mysql-{{ .Branch }}-{{ .Environment.CIRCLE_SHA1 }}-{{ epoch }}
329315 paths :
330316 - /home/circleci/cache
331-
332317 build-spanner-image :
333318 docker :
334319 - image : cimg/rust:1.86 # RUST_VER
@@ -361,6 +346,9 @@ jobs:
361346 - run :
362347 name : Save docker-compose config
363348 command : cp docker-compose*spanner.yaml /home/circleci/cache
349+ - run :
350+ name : Save Makefile to cache
351+ command : cp Makefile /home/circleci/cache
364352 - save_cache :
365353 key : spanner-{{ .Branch }}-{{ .Environment.CIRCLE_SHA1 }}-{{ epoch }}
366354 paths :
@@ -422,7 +410,7 @@ jobs:
422410
423411 mysql-e2e-tests :
424412 docker :
425- - image : docker/compose:1.24.0
413+ - image : cimg/base:2025.04
426414 auth :
427415 username : $DOCKER_USER
428416 password : $DOCKER_PASS
@@ -434,14 +422,24 @@ jobs:
434422 - run :
435423 name : Restore Docker image cache
436424 command : docker load -i /home/circleci/cache/docker.tar
425+ - run :
426+ name : Restore Makefile from save_cache
427+ command : cp /home/circleci/cache/Makefile .
437428 - run :
438429 name : Restore docker-compose config
439430 command : cp /home/circleci/cache/docker-compose*.yaml .
440- - run-e2e-mysql-tests
431+ - make-test-dir
432+ - run-e2e-tests :
433+ db : mysql
434+ - store-test-results
435+ - upload-to-gcs :
436+ source : workflow/test-results
437+ destination : gs://ecosystem-test-eng-metrics/syncstorage-rs/junit
438+ extension : xml
441439
442440 spanner-e2e-tests :
443441 docker :
444- - image : docker/compose:1.24.0
442+ - image : cimg/base:2025.04
445443 auth :
446444 username : $DOCKER_USER
447445 password : $DOCKER_PASS
@@ -453,10 +451,20 @@ jobs:
453451 - run :
454452 name : Restore Docker image cache
455453 command : docker load -i /home/circleci/cache/docker.tar
454+ - run :
455+ name : Restore Makefile from save_cache
456+ command : cp /home/circleci/cache/Makefile .
456457 - run :
457458 name : Restore docker-compose config
458459 command : cp /home/circleci/cache/docker-compose*.yaml .
459- - run-e2e-spanner-tests
460+ - make-test-dir
461+ - run-e2e-tests :
462+ db : spanner
463+ - store-test-results
464+ - upload-to-gcs :
465+ source : workflow/test-results
466+ destination : gs://ecosystem-test-eng-metrics/syncstorage-rs/junit
467+ extension : xml
460468
461469 deploy :
462470 docker :
0 commit comments