Skip to content

Commit 8b8ea96

Browse files
Trevor159Evergreen Agent
authored andcommitted
SERVER-83208 fix future git tag multiversion dependency chain
1 parent 3f63faa commit 8b8ea96

File tree

4 files changed

+88
-31
lines changed

4 files changed

+88
-31
lines changed

buildscripts/resmokelib/utils/evergreen_conn.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -272,11 +272,15 @@ def _filter_successful_tasks(evg_api: RetryingEvergreenApi,
272272

273273
# Only set the compile task if there isn't one already, otherwise
274274
# newer tasks like "archive_dist_test_debug" take precedence.
275-
if evg_task.display_name in ("compile", "archive_dist_test") and compile_task is None:
275+
if evg_task.display_name in (
276+
"compile", "archive_dist_test",
277+
"archive_dist_test_future_git_tag_multiversion") and compile_task is None:
276278
compile_task = evg_task
277279
elif evg_task.display_name == "push":
278280
push_task = evg_task
279-
elif evg_task.display_name == "archive_dist_test_debug":
281+
elif evg_task.display_name in ("archive_dist_test_debug",
282+
"archive_dist_test_debug_future_git_tag_multiversion"
283+
) and archive_symbols_task is None:
280284
archive_symbols_task = evg_task
281285
if compile_task and push_task and archive_symbols_task:
282286
break

etc/evergreen.yml

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1720,14 +1720,12 @@ buildvariants:
17201720
test_flags: >-
17211721
--excludeWithAnyTags=future_git_tag_incompatible
17221722
depends_on:
1723-
- name: version_expansions_gen
1724-
variant: &enterprise-rhel-80-64-bit-future-git-tag-multiversion-version-gen enterprise-rhel-80-64-bit-future-git-tag-multiversion-version-gen
17251723
- name: version_gen
17261724
variant: generate-tasks-for-version
17271725
# This is added because of EVG-18211.
17281726
# Without this we are adding extra dependencies on evergreen and it is causing strain
17291727
omit_generated_tasks: true
1730-
- name: archive_dist_test
1728+
- name: archive_dist_test_debug_future_git_tag_multiversion
17311729
variant: linux-x86-dynamic-compile-future-tag-multiversion
17321730
tasks:
17331731
- name: .multiversion !.future_git_tag_incompatible
@@ -1738,19 +1736,6 @@ buildvariants:
17381736
# If we decide we need this task we can add it to its own variant that depends on archive_dist_test_debug
17391737
# - name: generate_buildid_to_debug_symbols_mapping
17401738

1741-
# This variant exists becuase this is the only way to correctly have
1742-
# enterprise-rhel-80-64-bit-future-git-tag-multiversion depend the the "correct" version_expansions_gen task
1743-
# Without this extra variant depending on version_expansions_gen will yeild the version_expansions_gen task in version_gen
1744-
# Adding this variant removes that race condition
1745-
- <<: *enterprise-rhel-80-64-bit-future-git-tag-multiversion-template
1746-
name: *enterprise-rhel-80-64-bit-future-git-tag-multiversion-version-gen
1747-
display_name: "Enterprise RHEL 8.0 (future git tag multiversion) (version gen)"
1748-
depends_on: null
1749-
tasks:
1750-
- name: version_expansions_gen
1751-
distros:
1752-
- rhel80-small
1753-
17541739
- name: &enterprise-rhel-80-64-bit-suggested enterprise-rhel-80-64-bit-suggested
17551740
display_name: "* Enterprise RHEL 8.0"
17561741
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter

etc/evergreen_yml_components/definitions.yml

Lines changed: 79 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2666,7 +2666,8 @@ functions:
26662666
tasks:
26672667

26682668
## compile - build all scons targets except unittests ##
2669-
- name: compile_dist_test
2669+
- &compile_dist_test
2670+
name: compile_dist_test
26702671
tags: []
26712672
depends_on:
26722673
- name: version_expansions_gen
@@ -2680,6 +2681,11 @@ tasks:
26802681
task_compile_flags: >-
26812682
PREFIX=dist-test
26822683
2684+
- <<: *compile_dist_test
2685+
name: compile_dist_test_future_git_tag_multiversion
2686+
depends_on:
2687+
- name: version_expansions_future_git_tag_multiversion_gen
2688+
26832689
## compile - build bazel targets ##
26842690
## The bazel migration is in progress & this
26852691
## task ensures we can build with bazel.
@@ -2938,7 +2944,8 @@ tasks:
29382944
args:
29392945
- "src/evergreen/gen_patch_test_tags.sh"
29402946

2941-
- name: archive_dist_test
2947+
- &archive_dist_test
2948+
name: archive_dist_test
29422949
tags: []
29432950
depends_on:
29442951
- name: compile_dist_test
@@ -3036,7 +3043,13 @@ tasks:
30363043
content_type: application/tar
30373044
display_name: Python venv (see included venv_readme.txt)
30383045

3039-
- name: archive_dist_test_debug
3046+
- <<: *archive_dist_test
3047+
name: archive_dist_test_future_git_tag_multiversion
3048+
depends_on:
3049+
- name: compile_dist_test_future_git_tag_multiversion
3050+
3051+
- &archive_dist_test_debug
3052+
name: archive_dist_test_debug
30403053
tags: []
30413054
depends_on:
30423055
- name: archive_dist_test
@@ -3050,6 +3063,11 @@ tasks:
30503063
30513064
- func: "upload debugsymbols"
30523065

3066+
- <<: *archive_dist_test_debug
3067+
name: archive_dist_test_debug_future_git_tag_multiversion
3068+
depends_on:
3069+
- name: archive_dist_test_future_git_tag_multiversion
3070+
30533071
- name: compile_ninja
30543072
tags: []
30553073
depends_on:
@@ -3320,7 +3338,8 @@ tasks:
33203338
display_name: Libdeps Graph Data
33213339

33223340
## compile_all - build all scons targets ##
3323-
- name: compile_all
3341+
- &compile_all
3342+
name: compile_all
33243343
tags: []
33253344
depends_on:
33263345
- name: compile_dist_test
@@ -3330,6 +3349,11 @@ tasks:
33303349
targets: install-all-meta
33313350
compiling_for_test: true
33323351

3352+
- <<: *compile_all
3353+
name: compile_all_future_git_tag_multiversion
3354+
depends_on:
3355+
- name: compile_dist_test_future_git_tag_multiversion
3356+
33333357
- name: compile_all_but_not_unittests
33343358
tags: []
33353359
depends_on:
@@ -3380,6 +3404,11 @@ tasks:
33803404
targets: install-unittests install-unittests-debug
33813405
compiling_for_test: true
33823406

3407+
- <<: *compile_unittests
3408+
name: compile_unittests_future_git_tag_multiversion
3409+
depends_on:
3410+
- name: compile_dist_test_future_git_tag_multiversion
3411+
33833412
- name: build_metrics_tasks_gen
33843413
depends_on:
33853414
- name: version_expansions_gen
@@ -3422,7 +3451,8 @@ tasks:
34223451
name: compile_unittests_for_recorded_unittest
34233452

34243453
## run_unittests ##
3425-
- name: run_unittests
3454+
- &run_unittests
3455+
name: run_unittests
34263456
tags: []
34273457
depends_on:
34283458
- name: compile_unittests
@@ -3437,6 +3467,11 @@ tasks:
34373467
suite: unittests
34383468
install_dir: build/install/bin
34393469

3470+
- <<: *run_unittests
3471+
name: run_unittests_future_git_tag_multiversion
3472+
depends_on:
3473+
- name: compile_unittests_future_git_tag_multiversion
3474+
34403475
## pretty_printer ##
34413476
- <<: *task_template
34423477
name: run_pretty_printer_tests
@@ -3568,7 +3603,8 @@ tasks:
35683603
- func: "run tests"
35693604

35703605
## compile_dbtest ##
3571-
- name: compile_dbtest
3606+
- &compile_dbtest
3607+
name: compile_dbtest
35723608
tags: []
35733609
depends_on:
35743610
- name: compile_dist_test
@@ -3578,8 +3614,14 @@ tasks:
35783614
targets: install-dbtest install-dbtest-debug
35793615
compiling_for_test: true
35803616

3617+
- <<: *compile_dbtest
3618+
name: compile_dbtest_future_git_tag_multiversion
3619+
depends_on:
3620+
- name: compile_dist_test_future_git_tag_multiversion
3621+
35813622
## run_dbtest ##
3582-
- name: run_dbtest
3623+
- &run_dbtest
3624+
name: run_dbtest
35833625
tags: []
35843626
depends_on:
35853627
- name: compile_dbtest
@@ -3594,7 +3636,13 @@ tasks:
35943636
suite: dbtest
35953637
install_dir: build/install/bin
35963638

3597-
- name: archive_dbtest
3639+
- <<: *run_dbtest
3640+
name: run_dbtest_future_git_tag_multiversion
3641+
depends_on:
3642+
- name: compile_dbtest_future_git_tag_multiversion
3643+
3644+
- &archive_dbtest
3645+
name: archive_dbtest
35983646
tags: []
35993647
depends_on:
36003648
- name: compile_dbtest
@@ -3604,6 +3652,11 @@ tasks:
36043652
targets: archive-dbtest archive-dbtest-debug
36053653
compiling_for_test: true
36063654

3655+
- <<: *archive_dbtest
3656+
name: archive_dbtest_future_git_tag_multiversion
3657+
depends_on:
3658+
- name: compile_dbtest_future_git_tag_multiversion
3659+
36073660
- name: compile_integration_test
36083661
tags: []
36093662
depends_on:
@@ -5531,7 +5584,8 @@ tasks:
55315584
- func: "upload pip requirements"
55325585
- func: "generate version burn in"
55335586

5534-
- name: version_expansions_gen
5587+
- &version_expansions_gen
5588+
name: version_expansions_gen
55355589
commands:
55365590
- command: manifest.load
55375591
- *git_get_project
@@ -5544,6 +5598,9 @@ tasks:
55445598
- func: "generate and upload version expansions"
55455599
- func: "generate and upload resmoke constants"
55465600

5601+
- <<: *version_expansions_gen
5602+
name: version_expansions_future_git_tag_multiversion_gen
5603+
55475604
- <<: *gen_task_template
55485605
name: auth_audit_gen
55495606
tags: ["auth", "audit", "patch_build"]
@@ -9497,6 +9554,19 @@ task_groups:
94979554
- archive_dbtest
94989555
- compile_all
94999556

9557+
- <<: *compile_task_group_template
9558+
name: compile_test_serial_future_git_tag_multiversion_TG
9559+
tasks:
9560+
- compile_dist_test_future_git_tag_multiversion
9561+
- archive_dist_test_future_git_tag_multiversion
9562+
- archive_dist_test_debug_future_git_tag_multiversion
9563+
- compile_unittests_future_git_tag_multiversion
9564+
- run_unittests_future_git_tag_multiversion
9565+
- compile_dbtest_future_git_tag_multiversion
9566+
- run_dbtest_future_git_tag_multiversion
9567+
- archive_dbtest_future_git_tag_multiversion
9568+
- compile_all_future_git_tag_multiversion
9569+
95009570
- <<: *compile_task_group_template
95019571
name: compile_test_and_package_serial_TG
95029572
tasks:

etc/evergreen_yml_components/variants/compile_static_analysis.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -138,11 +138,9 @@ buildvariants:
138138
<<: *linux-x86-dynamic-compile-expansions
139139
bv_future_git_tag: r100.0.0-9999
140140
compile_variant: *linux-x86-dynamic-compile-future-tag-multiversion
141-
depends_on:
142-
- name: version_expansions_gen
143-
variant: enterprise-rhel-80-64-bit-future-git-tag-multiversion-version-gen
144141
tasks:
145-
- name: compile_test_serial_TG
142+
- name: version_expansions_future_git_tag_multiversion_gen
143+
- name: compile_test_serial_future_git_tag_multiversion_TG
146144

147145
- <<: *generic_linux_compile_params
148146
name: &linux-x86-dynamic-debug-compile-required linux-x86-dynamic-debug-compile-required # TODO: replace with Sanitizer.

0 commit comments

Comments
 (0)