Skip to content

Commit 306b019

Browse files
p-mongop
andauthored
MONGOID-5216 Run all tests in docker on evergreen (#5306)
* MONGOID-5216 Run all tests in docker on evergreen * set up erb preprocessing for evergreen config files * check that docker distro is set and quote properly * typo fix * update mrss * use the os selector * add some whitespace * set node environment from toolchain also * Work around ruby 3.1 incompatibility with rails * fix bundle install on jruby 9.2 Co-authored-by: Oleg Pudeyev <[email protected]>
1 parent 13044a8 commit 306b019

11 files changed

+905
-51
lines changed

.evergreen/config.yml

+44-45
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
########################################
2-
# Evergreen Template for MongoDB Drivers
3-
########################################
1+
# GENERATED FILE - DO NOT EDIT.
2+
# Run ./.evergreen/update-evergreen-configs to regenerate this file.
43

54
# When a task that used to pass starts to fail
65
# Go through all versions that may have been skipped to detect
@@ -25,7 +24,6 @@ timeout:
2524
params:
2625
script: |
2726
ls -la
28-
2927
functions:
3028
"fetch source":
3129
# Executes git clone and applies the submitted patch, if any
@@ -96,6 +94,7 @@ functions:
9694
export AUTH=${AUTH}
9795
export SSL=${SSL}
9896
export APP_TESTS=${APP_TESTS}
97+
export DOCKER_DISTRO=${DOCKER_DISTRO}
9998
EOT
10099
# See what we've done
101100
cat expansion.yml
@@ -283,7 +282,7 @@ functions:
283282
DRIVER="${DRIVER}" \
284283
I18N="${I18N}" \
285284
TEST_I18N_FALLBACKS="${TEST_I18N_FALLBACKS}" \
286-
./egos .evergreen/run-tests.sh
285+
./egos .evergreen/run-tests-docker.sh
287286
288287
"fix absolute paths":
289288
- command: shell.exec
@@ -322,7 +321,6 @@ tasks:
322321
- name: "test"
323322
commands:
324323
- func: "run tests"
325-
326324
axes:
327325
- id: "mongodb-version"
328326
display_name: MongoDB Version
@@ -351,6 +349,7 @@ axes:
351349
display_name: "MongoDB 3.6"
352350
variables:
353351
VERSION: "3.6"
352+
354353
- id: "topology"
355354
display_name: Topology
356355
values:
@@ -367,6 +366,7 @@ axes:
367366
variables:
368367
TOPOLOGY: "sharded-cluster"
369368
SINGLE_MONGOS: true
369+
370370
- id: "auth"
371371
display_name: Authentication
372372
values:
@@ -378,6 +378,7 @@ axes:
378378
display_name: NoAuth
379379
variables:
380380
AUTH: "noauth"
381+
381382
- id: "ssl"
382383
display_name: SSL
383384
values:
@@ -389,6 +390,7 @@ axes:
389390
display_name: NoSSL
390391
variables:
391392
SSL: "nossl"
393+
392394
- id: "ruby"
393395
display_name: Ruby Version
394396
values:
@@ -416,6 +418,7 @@ axes:
416418
display_name: ruby-head
417419
variables:
418420
RVM_RUBY: "ruby-head"
421+
419422
- id: "jruby"
420423
display_name: JRuby Version
421424
values:
@@ -427,24 +430,36 @@ axes:
427430
display_name: jruby-9.3
428431
variables:
429432
RVM_RUBY: "jruby-9.3"
433+
430434
- id: "os"
431435
display_name: OS
432436
values:
433437
- id: ubuntu-16.04
434438
display_name: "Ubuntu 16.04"
435439
run_on: ubuntu1604-small
440+
variables:
441+
DOCKER_DISTRO: ubuntu1604
436442
- id: ubuntu-18.04
437443
display_name: "Ubuntu 18.04"
438444
run_on: ubuntu1804-small
445+
variables:
446+
DOCKER_DISTRO: ubuntu1804
439447
- id: ubuntu-20.04
440448
display_name: "Ubuntu 20.04"
441449
run_on: ubuntu2004-small
450+
variables:
451+
DOCKER_DISTRO: ubuntu2004
442452
- id: rhel70
443453
display_name: "RHEL 7.0"
444454
run_on: rhel70-small
455+
variables:
456+
DOCKER_DISTRO: rhel70
445457
- id: rhel80
446458
display_name: "RHEL 8.0"
447459
run_on: rhel80-small
460+
variables:
461+
DOCKER_DISTRO: rhel80
462+
448463
- id: "driver"
449464
display_name: Driver Version
450465
values:
@@ -492,6 +507,7 @@ axes:
492507
display_name: "BSON-master"
493508
variables:
494509
DRIVER: "bson-master"
510+
495511
- id: "rails"
496512
display_name: Rails Version
497513
values:
@@ -519,6 +535,7 @@ axes:
519535
display_name: "Rails 7.0"
520536
variables:
521537
RAILS: "7.0"
538+
522539
- id: "i18n"
523540
display_name: I18n version
524541
values:
@@ -528,31 +545,31 @@ axes:
528545
I18N: "1.0"
529546
- id: current
530547
display_name: "i18n-current"
548+
531549
- id: "test-i18n-fallbacks"
532550
display_name: Test i18n fallbacks
533551
values:
534552
- id: yes
535553
display_name: "i18n-fallbacks"
536554
variables:
537555
TEST_I18N_FALLBACKS: yes
556+
538557
- id: app-tests
539558
display_name: Mongoid application tests
540559
values:
541560
- id: yes
542561
display_name: Yes
543562
variables:
544563
APP_TESTS: yes
545-
546564
buildvariants:
547565
- matrix_name: "ruby-3.1"
548566
matrix_spec:
549567
ruby: ["ruby-3.1"]
550568
driver: ["current"]
551569
topology: '*'
552570
mongodb-version: ['6.0']
571+
os: ubuntu-20.04
553572
display_name: "${ruby}, ${driver}, ${mongodb-version}, ${topology}"
554-
run_on:
555-
- ubuntu2004-small
556573
tasks:
557574
- name: "test"
558575

@@ -562,9 +579,8 @@ buildvariants:
562579
driver: ["current"]
563580
topology: ['replica-set']
564581
mongodb-version: ['5.0']
582+
os: ubuntu-20.04
565583
display_name: "${ruby}, ${driver}, ${mongodb-version}, ${topology}"
566-
run_on:
567-
- ubuntu2004-small
568584
tasks:
569585
- name: "test"
570586

@@ -574,9 +590,8 @@ buildvariants:
574590
driver: ["current"]
575591
topology: ['replica-set', 'sharded-cluster']
576592
mongodb-version: '5.0'
593+
os: ubuntu-18.04
577594
display_name: "${jruby}, ${driver}, ${mongodb-version}, ${topology}"
578-
run_on:
579-
- ubuntu1804-small
580595
tasks:
581596
- name: "test"
582597

@@ -586,9 +601,8 @@ buildvariants:
586601
driver: ["current"]
587602
topology: '*'
588603
mongodb-version: ['4.4']
604+
os: ubuntu-18.04
589605
display_name: "${ruby}, ${driver}, ${mongodb-version}, ${topology}"
590-
run_on:
591-
- ubuntu1804-small
592606
tasks:
593607
- name: "test"
594608

@@ -598,9 +612,8 @@ buildvariants:
598612
driver: ["current"]
599613
topology: ['replica-set']
600614
mongodb-version: ['4.0']
615+
os: ubuntu-16.04
601616
display_name: "${ruby}, ${driver}, ${mongodb-version}, ${topology}"
602-
run_on:
603-
- ubuntu1604-small
604617
tasks:
605618
- name: "test"
606619

@@ -610,9 +623,8 @@ buildvariants:
610623
driver: ["current"]
611624
topology: ['replica-set']
612625
mongodb-version: ['3.6']
626+
os: ubuntu-16.04
613627
display_name: "${ruby}, ${driver}, ${mongodb-version}, ${topology}"
614-
run_on:
615-
- ubuntu1604-small
616628
tasks:
617629
- name: "test"
618630

@@ -622,9 +634,8 @@ buildvariants:
622634
ruby: ["ruby-3.1"]
623635
mongodb-version: "5.0"
624636
topology: ['replica-set', 'sharded-cluster']
637+
os: ubuntu-20.04
625638
display_name: "${ruby}, ${driver}, ${mongodb-version}, ${topology}"
626-
run_on:
627-
- ubuntu2004-small
628639
tasks:
629640
- name: "test"
630641

@@ -634,9 +645,8 @@ buildvariants:
634645
ruby: ["ruby-2.5"]
635646
mongodb-version: "4.0"
636647
topology: ['replica-set', 'sharded-cluster']
648+
os: ubuntu-18.04
637649
display_name: "${ruby}, ${driver}, ${mongodb-version}, ${topology}"
638-
run_on:
639-
- ubuntu1804-small
640650
tasks:
641651
- name: "test"
642652

@@ -646,9 +656,8 @@ buildvariants:
646656
ruby: ["ruby-2.5"]
647657
mongodb-version: "3.6"
648658
topology: "standalone"
659+
os: ubuntu-16.04
649660
display_name: "${ruby}, ${driver}, ${mongodb-version}, ${topology}"
650-
run_on:
651-
- ubuntu1604-small
652661
tasks:
653662
- name: "test"
654663

@@ -659,9 +668,8 @@ buildvariants:
659668
mongodb-version: "5.0"
660669
topology: "standalone"
661670
rails: ['7.0']
671+
os: ubuntu-20.04
662672
display_name: "${rails}, ${driver}, ${mongodb-version}"
663-
run_on:
664-
- ubuntu2004-small
665673
tasks:
666674
- name: "test"
667675

@@ -671,9 +679,8 @@ buildvariants:
671679
ruby: ["ruby-2.7"]
672680
mongodb-version: "5.0"
673681
topology: "standalone"
682+
os: ubuntu-18.04
674683
display_name: "${ruby}, ${driver}, ${mongodb-version}, ${topology}"
675-
run_on:
676-
- ubuntu1804-small
677684
tasks:
678685
- name: "test"
679686

@@ -683,9 +690,8 @@ buildvariants:
683690
ruby: ["ruby-3.0"]
684691
mongodb-version: "5.0"
685692
topology: "standalone"
693+
os: ubuntu-18.04
686694
display_name: "${ruby}, ${driver}, ${mongodb-version}, ${topology}"
687-
run_on:
688-
- ubuntu1804-small
689695
tasks:
690696
- name: "test"
691697

@@ -697,9 +703,8 @@ buildvariants:
697703
mongodb-version: "5.0"
698704
topology: "standalone"
699705
rails: ['6.0', '6.1']
706+
os: ubuntu-20.04
700707
display_name: "${rails}, ${driver}, ${mongodb-version}"
701-
run_on:
702-
- ubuntu2004-small
703708
tasks:
704709
- name: "test"
705710

@@ -710,9 +715,8 @@ buildvariants:
710715
mongodb-version: "4.0"
711716
topology: "standalone"
712717
rails: ['5.1', '5.2']
718+
os: ubuntu-18.04
713719
display_name: "${rails}, ${driver}, ${mongodb-version}"
714-
run_on:
715-
- ubuntu1804-small
716720
tasks:
717721
- name: "test"
718722

@@ -723,9 +727,8 @@ buildvariants:
723727
mongodb-version: "4.4"
724728
topology: "standalone"
725729
i18n: '1.0'
730+
os: ubuntu-18.04
726731
display_name: "i18n-1.0 ${rails}, ${driver}, ${mongodb-version}"
727-
run_on:
728-
- ubuntu1804-small
729732
tasks:
730733
- name: "test"
731734

@@ -737,9 +740,8 @@ buildvariants:
737740
topology: "standalone"
738741
i18n: '*'
739742
test-i18n-fallbacks: yes
743+
os: ubuntu-18.04
740744
display_name: "i18n fallbacks ${rails}, ${driver}, ${mongodb-version}, ${i18n}"
741-
run_on:
742-
- ubuntu1804-small
743745
tasks:
744746
- name: "test"
745747

@@ -751,9 +753,8 @@ buildvariants:
751753
topology: standalone
752754
app-tests: yes
753755
rails: ['6.0', '6.1', '7.0']
756+
os: ubuntu-20.04
754757
display_name: "app tests ${driver}, ${ruby}, ${rails}"
755-
run_on:
756-
- ubuntu2004-small
757758
tasks:
758759
- name: "test"
759760

@@ -765,9 +766,8 @@ buildvariants:
765766
topology: standalone
766767
app-tests: yes
767768
rails: ['5.1', '5.2']
769+
os: ubuntu-18.04
768770
display_name: "app tests ${driver}, ${ruby}, ${rails}"
769-
run_on:
770-
- ubuntu1804-small
771771
tasks:
772772
- name: "test"
773773

@@ -779,8 +779,7 @@ buildvariants:
779779
topology: standalone
780780
app-tests: yes
781781
rails: ['6.0']
782+
os: ubuntu-18.04
782783
display_name: "app tests ${driver}, ${jruby}"
783-
run_on:
784-
- ubuntu1804-small
785784
tasks:
786785
- name: "test"

0 commit comments

Comments
 (0)