-
Notifications
You must be signed in to change notification settings - Fork 5.6k
/
Copy pathevergreen.yml
177 lines (154 loc) · 7.77 KB
/
evergreen.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
####################################################
# YAML Conventions #
#####################################################
# Please see our conventions document at
# https://wiki.corp.mongodb.com/pages/viewpage.action?pageId=133273894
# for help navigating this document, or for help with our lint rules.
#####################################################
# A note on expansions #
#####################################################
# Expansions usually appear in the form ${key|default}
# If 'key' is found in the executor's map of currently known
# expansions, the corresponding value is used. If the key can
# not be found, the default is used.
#
# Arbitrary expansions can be specified in the YAML configuration
# files in the following places:
# - The 'expansions' field for buildvariants (branch file)
# - The 'expansions' field for distros (distros file)
#
# A number of 'built-in' expansions are also available for use; these include:
# - environment variables available on the host machine
# - 'workdir' (references the executor's work directory).
# - 'task_id' (references the task id of the task the executor is working on).
# - 'build_variant' (references the executing task's buildvariant).
# - 'config_root' (references the root directory for the executor's configuration artifacts).
#####################################################
# Setup environment in a new task #
#####################################################
# There are several ways to setup the environment in your task.
#
# 1. If your task depends on 'archive_dist_test'/'archive_dist_test_debug' task you can call the function "do setup"
# - func: "do setup"
# Or alternatively call the functions in the sequence below, if you don't need everything else from "do setup"
# - func: "fetch artifacts" (includes python, shell scripts, jstests etc. from the mongo and enterprise repos)
# - func: "f_expansions_write"
# - func: "kill processes"
# - func: "cleanup environment"
# - func: "set up venv"
#
# 2. If your task does not depend on 'archive_dist_test'/'archive_dist_test_debug' task use the following functions
# call sequence
# - command: manifest.load
# - func: "git get shallow project" (clone the entire mongo and enterprise repos)
# - func: "restore git history and tags"
# - func: "f_expansions_write"
# - func: "kill processes"
# - func: "cleanup environment"
# - func: "set up venv"
include:
- filename: etc/evergreen_yml_components/configuration.yml
- filename: etc/evergreen_yml_components/definitions.yml
- filename: etc/evergreen_yml_components/tasks/resmoke/server_divisions/clusters_and_integrations/tasks.yml
- filename: etc/evergreen_yml_components/tasks/resmoke/server_divisions/durable_transactions_and_availability/tasks.yml
- filename: etc/evergreen_yml_components/tasks/resmoke/server_divisions/query/tasks.yml
- filename: etc/evergreen_yml_components/tasks/resmoke/non_server_teams/tasks.yml
- filename: etc/evergreen_yml_components/tasks/compile_tasks.yml
- filename: etc/evergreen_yml_components/tasks/compile_tasks_shared.yml
- filename: etc/evergreen_yml_components/tasks/misc_tasks.yml
- filename: etc/evergreen_yml_components/variants/misc/task_generation.yml
- filename: etc/evergreen_yml_components/variants/misc/misc.yml
- filename: etc/evergreen_yml_components/variants/misc/misc_master_branch_only.yml
- filename: etc/evergreen_yml_components/variants/amazon/test_dev.yml
- filename: etc/evergreen_yml_components/variants/amazon/test_dev_master_branch_only.yml
- filename: etc/evergreen_yml_components/variants/macos/test_dev_master_branch_only.yml
- filename: etc/evergreen_yml_components/variants/mongot/test_dev.yml
- filename: etc/evergreen_yml_components/variants/rhel/test_dev.yml
- filename: etc/evergreen_yml_components/variants/rhel/test_dev_master_and_lts_branches_only.yml
- filename: etc/evergreen_yml_components/variants/rhel/test_dev_master_branch_only.yml
- filename: etc/evergreen_yml_components/variants/sanitizer/test_dev.yml
- filename: etc/evergreen_yml_components/variants/sanitizer/test_dev_master_branch_only.yml
- filename: etc/evergreen_yml_components/variants/ubuntu/test_dev_master_and_lts_branches_only.yml
- filename: etc/evergreen_yml_components/variants/ubuntu/test_dev_master_branch_only.yml
- filename: etc/evergreen_yml_components/variants/debian/test_dev_master_branch_only.yml
- filename: etc/evergreen_yml_components/variants/suse/test_dev_master_branch_only.yml
- filename: etc/evergreen_yml_components/variants/ibm/test_dev_master_branch_only.yml
- filename: etc/evergreen_yml_components/variants/windows/test_dev.yml
- filename: etc/evergreen_yml_components/variants/windows/test_dev_master_and_lts_branches_only.yml
- filename: etc/evergreen_yml_components/variants/windows/test_dev_master_branch_only.yml
- filename: etc/evergreen_yml_components/variants/wiredtiger/test_dev_master_branch_only.yml
- filename: etc/evergreen_yml_components/variants/codecoverage/test_dev.yml
parameters:
- key: evergreen_config_file_path
value: "etc/evergreen.yml"
description: "path to this file"
- key: enable_evergreen_api_test_selection
value: false
description: "Enable test selection using Evergreen API"
commit_queue_aliases:
- variant: "commit-queue"
task: "^(bazel_.*|run_.*|compile_.*|lint_.*|jsCore|version_gen_validation|validate_commit_message|resmoke_validation_tests|buildscripts_test)$"
variant_tags: []
task_tags: []
- variant: "^(amazon-linux2-arm64-static-compile|linux-x86-dynamic-compile-required)$"
variant_tags: []
task_tags: ["clang_tidy"]
- variant: "^(al2023-arm64-sep-benchmark)$"
variant_tags: []
task_tags: ["benchmarks_sep"]
github_pr_aliases:
- variant: "commit-queue"
task: "^(bazel_.*|run_.*|compile_.*|lint_.*|jsCore|version_gen_validation|validate_commit_message|resmoke_validation_tests|buildscripts_test)$"
variant_tags: []
task_tags: []
- variant: "^(amazon-linux2-arm64-static-compile|linux-x86-dynamic-compile-required)$"
variant_tags: []
task_tags: ["clang_tidy"]
- variant: "^(AL2023-arm64-coverage)$"
task: ".*"
- variant: "^(al2023-arm64-sep-benchmark)$"
variant_tags: []
task_tags: ["benchmarks_sep"]
patch_aliases:
- alias: required
variant_tags: ["required"]
task: ".*"
- alias: query
variant: "^(.*query-patch-only|amazon-linux2-arm64-static-compile)$"
task: ".*"
- alias: query-quick
variant: "^(.*query-quick-patch-only|linux-x86-dynamic-compile)$"
task: ".*"
- alias: security
variant: "^(.*security-patch-only|linux-x86-dynamic-compile|windows-compile-required)$"
task: ".*"
- alias: bazel
description: "Runs bazel build system tests"
variant_tags: ["bazel_check"]
task_tags: ["bazel_check"]
- alias: bazel_variants
description: "Runs bazel build system tests"
variant_tags: ["bazel_check"]
task: ".*"
- alias: search
description: "Runs all $search, $vectorSearch tests"
variant: ".*"
task: "^.*search*"
- alias: required-and-mongot-e2e-tests
description: >
This alias selects all tasks in all required variants and all tasks in variants that use a real mongot.
Once more e2e tests have been contributed and thus our coverage is better, this alias can be refined
to only select tests that use a real mongot.
variant_tags: ["required", "mongot_e2e"]
task: ".*"
- alias: codecoverage
description: "Run tests and report code coverage"
variant: ".*-coverage"
task: ".*"
- alias: unittestcoverage
description: "Run unit tests and report code coverage"
variant: ".*-coverage"
task: "^(compile_and_run_unittests_.*|bazel_coverage)$"
- alias: cluster_scalability
variant_tags: ["cluster_scalability_only"]
task_tags: ["cluster_scalability_only"]