mirror of
https://github.com/mongodb/mongo.git
synced 2024-12-01 09:32:32 +01:00
8602 lines
245 KiB
YAML
8602 lines
245 KiB
YAML
####################################################
|
|
# This file contains static Evergreen config definitions used by other YAML files.
|
|
# It is not run directly by any Evergreen project.
|
|
#
|
|
# Any global task, function, or taskgroup definition can be added here. Note that if
|
|
# the definition is added to another file, YAML anchors from this file can't be used.
|
|
|
|
command_type: system
|
|
exec_timeout_secs: 21600 # 6 hours.
|
|
oom_tracker: true
|
|
pre_error_fails_task: true
|
|
stepback: true
|
|
|
|
|
|
# Files that match an ignore-list pattern will not trigger a build, if they're the only modified
|
|
# files in the patch.
|
|
ignore:
|
|
- ".*"
|
|
- "!.clang-format"
|
|
- "!.eslintrc.yml"
|
|
- "*.md"
|
|
- "*.rst"
|
|
- "*.txt"
|
|
- "/distsrc/**"
|
|
- "/docs/**"
|
|
- "/etc/*.yml"
|
|
- "!/etc/evergreen.yml"
|
|
- "README"
|
|
|
|
|
|
## Parameters for parameterized builds (see https://github.com/evergreen-ci/evergreen/wiki/Parameterized-Builds)
|
|
parameters:
|
|
- key: patch_compile_flags
|
|
description: "Additional SCons flags to be applied during scons compile invocations in this patch"
|
|
|
|
- key: future_git_tag
|
|
description: "Future git tag to be added. If empty, we will use the most recent git tag instead."
|
|
|
|
- key: last_lts_evg_version_id
|
|
description: "The Evergreen Version ID of the last-lts MongoDB binaries. Only binaries from release variants are used"
|
|
|
|
- key: last_continuous_evg_version_id
|
|
description: "The Evergreen Version ID of the last-continuous MongoDB binaries. Only binaries from release variants are used"
|
|
|
|
- key: antithesis_image_tag
|
|
description: "The docker tag to use when pushing images to Antithesis"
|
|
|
|
## Cron parameters.
|
|
- key: project_required_suggested_cron
|
|
value: "0 */4 * * *" # Every 4 hours starting at 0000 UTC
|
|
description: "Cron schedule for required and suggested variants"
|
|
- key: project_nightly_cron
|
|
value: "0 4 * * *" # Every day starting at 0400 UTC
|
|
description: "Cron schedule for nightly variants"
|
|
- key: project_weekly_cron
|
|
value: "0 4 * * 0" # Every week starting 0400 UTC Sunday
|
|
description: "Cron schedule for nightly variants"
|
|
|
|
|
|
#######################################
|
|
# Modules #
|
|
#######################################
|
|
# if a module is added and to be added to the manifest
|
|
# be sure to add the module to git.get_project revisions parameter
|
|
modules:
|
|
- name: enterprise
|
|
repo: git@github.com:10gen/mongo-enterprise-modules.git
|
|
prefix: src/mongo/db/modules
|
|
branch: master
|
|
|
|
- name: wtdevelop
|
|
repo: git@github.com:wiredtiger/wiredtiger.git
|
|
prefix: src/third_party
|
|
branch: develop
|
|
|
|
#######################################
|
|
# Variable #
|
|
#######################################
|
|
## Some variables for convenience:
|
|
variables:
|
|
|
|
# Used when the tests it runs depend only on mongod, mongos, the jstestshell and the tools.
|
|
- &task_template
|
|
name: template
|
|
depends_on:
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_args: --help
|
|
resmoke_jobs_max: 0 # No cap on number of jobs.
|
|
|
|
- &gen_task_template
|
|
name: gen_task_template
|
|
depends_on:
|
|
- name: version_gen
|
|
variant: generate-tasks-for-version
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_args: --help
|
|
|
|
- &gen_burn_in_task_template
|
|
name: gen_burn_in_task_template
|
|
depends_on:
|
|
- name: version_gen
|
|
variant: generate-tasks-for-version
|
|
- name: version_burn_in_gen
|
|
variant: generate-tasks-for-version
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_args: --help
|
|
|
|
- &benchmark_template
|
|
name: benchmark_template
|
|
depends_on:
|
|
- name: compile_upload_benchmarks
|
|
commands:
|
|
- func: "do benchmark setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_args: --help
|
|
resmoke_jobs_max: 1
|
|
- func: "send benchmark results"
|
|
# - func: "analyze benchmark results"
|
|
vars:
|
|
suite: benchmark_suite
|
|
|
|
- &jepsen_config_vars
|
|
jepsen_key_time_limit: --key-time-limit 15
|
|
jepsen_protocol_version: --protocol-version 1
|
|
jepsen_read_concern: ""
|
|
jepsen_read_with_find_and_modify: ""
|
|
jepsen_storage_engine: ""
|
|
jepsen_test_name: ""
|
|
# Empirically, we've had greater success in reproducing the issues found in MongoDB versions
|
|
# 3.4.0-rc3 and 3.4.0-rc4 when running Jepsen with at least --time-limit=600.
|
|
jepsen_time_limit: --time-limit 1200
|
|
jepsen_write_concern: ""
|
|
|
|
# Template for running Jepsen tests
|
|
- &run_jepsen_template
|
|
name: run_jepsen_template
|
|
depends_on:
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "do jepsen setup"
|
|
- func: "run jepsen test"
|
|
vars:
|
|
<<: *jepsen_config_vars
|
|
|
|
- &jstestfuzz_config_vars
|
|
is_jstestfuzz: true
|
|
num_files: 15
|
|
num_tasks: 5 # Upperbound by `max_sub_suites` specified through the variant with each task still running `num_files` files.
|
|
resmoke_args: --help # resmoke_args needs to be overridden to specify one of the jstestfuzz suites
|
|
resmoke_jobs_max: 1
|
|
should_shuffle: false
|
|
continue_on_failure: false
|
|
# Terminate the function when there has been no output to stdout for 30 minutes. E.g. when something is stuck in an infinite loop.
|
|
# resmoke.py writes the test output to logkeeper and only writes to stdout when starting the next test.
|
|
# resmoke.py not producing output on stdout means that the test is still running and presumably not going to finish.
|
|
# Note that timeout_secs is different from exec_timeout_secs, which applies to a task and times out regardless of whether output has been written to stdout.
|
|
timeout_secs: 1800
|
|
|
|
# Used for tests that invoke 'resmoke.py --suites=jstestfuzz*'.
|
|
- &jstestfuzz_template
|
|
name: jstestfuzz_template
|
|
exec_timeout_secs: 14400 # Time out the task if it runs for more than 4 hours.
|
|
depends_on:
|
|
- name: version_gen
|
|
variant: generate-tasks-for-version
|
|
- archive_dist_test_debug
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
# Templates used by powercycle
|
|
- &powercycle_remote_credentials
|
|
private_key_file: src/powercycle.pem
|
|
private_key_remote: ${__project_aws_ssh_key_value}
|
|
|
|
- &compile_task_group_template
|
|
name: compile_task_group_template
|
|
max_hosts: 1
|
|
tasks: []
|
|
setup_task:
|
|
- func: "f_expansions_write"
|
|
- func: "apply compile expansions"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
teardown_task:
|
|
- func: "f_expansions_write"
|
|
- func: "attach scons logs"
|
|
- func: "send scons cedar report"
|
|
- func: "attach report"
|
|
- func: "attach artifacts"
|
|
- func: "kill processes"
|
|
- func: "save code coverage data"
|
|
- func: "save mongo coredumps"
|
|
- func: "save failed unittests"
|
|
- func: "save UndoDB recordings"
|
|
- func: "save unstripped dbtest"
|
|
- func: "save hang analyzer debugger files"
|
|
- func: "save disk statistics"
|
|
- func: "save system resource information"
|
|
- func: "save libfuzzertest corpora"
|
|
- func: "remove files"
|
|
vars:
|
|
files: >-
|
|
src/resmoke_error_code
|
|
src/build/scons/config.log
|
|
src/*.gcda.gcov
|
|
src/gcov-intermediate-files.tgz
|
|
src/*.core src/*.mdmp
|
|
mongo-coredumps.tgz
|
|
src/dist-unittests/bin/*
|
|
src/dist-unittests/lib/*
|
|
mongo-unittests.tgz
|
|
src/debugger*.*
|
|
src/mongo-hanganalyzer.tgz
|
|
diskstats.tgz
|
|
system-resource-info.tgz
|
|
${report_file|src/report.json}
|
|
${archive_file|src/archive.json}
|
|
setup_group_can_fail_task: true
|
|
setup_group:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
- func: "kill processes"
|
|
- func: "cleanup environment"
|
|
# The python virtual environment is installed in ${workdir}, which is created in
|
|
# "set up venv".
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "get all modified patch files"
|
|
- func: "f_expansions_write"
|
|
- func: "configure evergreen api credentials"
|
|
- func: "get buildnumber"
|
|
- func: "f_expansions_write"
|
|
- func: "set up credentials"
|
|
- func: "use WiredTiger develop" # noop if ${use_wt_develop} is not "true"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions"
|
|
- func: "f_expansions_write"
|
|
teardown_group:
|
|
- func: "f_expansions_write"
|
|
- func: "umount shared scons directory"
|
|
- func: "cleanup environment"
|
|
timeout:
|
|
- func: "f_expansions_write"
|
|
- func: "run hang analyzer"
|
|
- func: "wait for resmoke to shutdown"
|
|
|
|
- &stitch_support_task_group_template
|
|
name: stitch_support_task_group_template
|
|
setup_task:
|
|
- func: "apply compile expansions"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
teardown_task:
|
|
- func: "attach scons logs"
|
|
- func: "send scons cedar report"
|
|
setup_group_can_fail_task: true
|
|
setup_group:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
- func: "kill processes"
|
|
- func: "cleanup environment"
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "get buildnumber"
|
|
- func: "f_expansions_write"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions"
|
|
teardown_group:
|
|
- func: "umount shared scons directory"
|
|
|
|
# TODO: split this up into the user files.
|
|
# List of all variants that make mongocryptd
|
|
# If a variant is listed here and has a push task, mongocryptd is pushed
|
|
- mongocryptd_variants: &mongocryptd_variants
|
|
- enterprise-amazon2
|
|
- enterprise-amazon2-arm64
|
|
- enterprise-amazon2022
|
|
- enterprise-amazon2022-arm64
|
|
- enterprise-debian10-64
|
|
- enterprise-debian11-64
|
|
- enterprise-linux-64-amazon-ami
|
|
- enterprise-macos
|
|
- enterprise-macos-arm64
|
|
- enterprise-rhel-70-64-bit
|
|
- enterprise-rhel-81-ppc64le
|
|
- enterprise-rhel-72-s390x
|
|
- enterprise-rhel-80-64-bit
|
|
- enterprise-rhel-80-64-bit-coverage
|
|
- enterprise-rhel-80-64-bit-suggested
|
|
- enterprise-rhel-82-arm64
|
|
- enterprise-rhel-83-s390x
|
|
- enterprise-rhel-90-64-bit
|
|
- enterprise-rhel-90-arm64
|
|
- enterprise-suse12-64
|
|
- enterprise-suse15-64
|
|
- enterprise-ubuntu1804-64
|
|
- enterprise-ubuntu1804-arm64
|
|
- enterprise-ubuntu2004-arm64
|
|
- enterprise-ubuntu2204-arm64
|
|
- enterprise-ubuntu2004-64
|
|
- enterprise-ubuntu2204-64
|
|
- enterprise-windows
|
|
- enterprise-windows-debug-unoptimized
|
|
- enterprise-windows-inmem
|
|
- enterprise-windows-wtdevelop
|
|
- ubuntu1804-debug-asan
|
|
- ubuntu1804-debug-ubsan
|
|
- ubuntu1804-debug-aubsan-lite-required
|
|
- ubuntu1804-debug-aubsan-lite_fuzzer
|
|
|
|
|
|
# List of all variants that make mh artifacts.
|
|
# If a variant is listed here and has a push task, the mh artifacts are pushed
|
|
- mh_variants: &mh_variants
|
|
- enterprise-macos
|
|
- enterprise-macos-arm64
|
|
- enterprise-rhel-80-64-bit
|
|
- enterprise-rhel-80-64-bit-dynamic-all-feature-flags-required
|
|
- enterprise-rhel-70-64-bit
|
|
- enterprise-rhel-82-arm64
|
|
- enterprise-rhel-90-64-bit
|
|
- enterprise-rhel-90-arm64
|
|
- enterprise-amazon2-arm64
|
|
- enterprise-amazon2022
|
|
- enterprise-amazon2022-arm64
|
|
- enterprise-ubuntu1804-64
|
|
- enterprise-ubuntu2004-64
|
|
- enterprise-ubuntu2204-64
|
|
- enterprise-windows
|
|
|
|
# List of all variants that use the packages.tgz
|
|
- package_variants: &package_variants
|
|
- amazon
|
|
- enterprise-linux-64-amazon-ami
|
|
- amazon2
|
|
- amazon2022
|
|
- amazon2022-arm64
|
|
- enterprise-amazon2
|
|
- enterprise-amazon2-arm64
|
|
- enterprise-amazon2022
|
|
- enterprise-amazon2022-arm64
|
|
- debian10
|
|
- debian11
|
|
- enterprise-debian10-64
|
|
- enterprise-debian11-64
|
|
- rhel70
|
|
- rhel76_compile_rhel70
|
|
- enterprise-rhel-70-64-bit
|
|
- enterprise-rhel-81-ppc64le
|
|
- enterprise-rhel-72-s390x
|
|
- ubi8
|
|
- rhel80
|
|
- rhel-82-arm64
|
|
- rhel90
|
|
- rhel90-arm64
|
|
- enterprise-rhel-80-64-bit
|
|
- enterprise-rhel-80-64-bit-suggested # For testing selinux.
|
|
- enterprise-rhel-82-arm64
|
|
- enterprise-rhel-83-s390x
|
|
- enterprise-rhel-90-64-bit
|
|
- enterprise-rhel-90-arm64
|
|
- suse12
|
|
- enterprise-suse12-64
|
|
- suse15
|
|
- enterprise-suse15-64
|
|
- ubuntu1804
|
|
- ubuntu1804-arm64
|
|
- ubuntu2004-arm64
|
|
- ubuntu2204-arm64
|
|
- ubuntu2004
|
|
- ubuntu2204
|
|
- enterprise-ubuntu1804-64
|
|
- enterprise-ubuntu1804-arm64
|
|
- enterprise-ubuntu2004-arm64
|
|
- enterprise-ubuntu2204-arm64
|
|
- enterprise-ubuntu2004-64
|
|
- enterprise-windows
|
|
- windows
|
|
|
|
|
|
#######################################
|
|
# Functions #
|
|
#######################################
|
|
|
|
functions:
|
|
"f_expansions_write": &f_expansions_write
|
|
command: expansions.write
|
|
params:
|
|
file: expansions.yml
|
|
redacted: true
|
|
|
|
"remove files":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/functions/files_remove.sh"
|
|
|
|
"configure evergreen api credentials": &configure_evergreen_api_credentials
|
|
command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/functions/evergreen_api_credentials_configure.sh"
|
|
|
|
"git get project": &git_get_project
|
|
command: git.get_project
|
|
params:
|
|
directory: ${git_project_directory|src}
|
|
revisions: # for each module include revision as <module_name> : ${<module_name>_rev}
|
|
enterprise: ${enterprise_rev}
|
|
wtdevelop: ${wtdevelop_rev}
|
|
|
|
# Get get the mongo repo, no modules. Useful for inspecting the commit history with the
|
|
# `git` Python tool.
|
|
"git get project no modules":
|
|
- *f_expansions_write
|
|
- command: git.get_project
|
|
params:
|
|
directory: ${git_project_directory|src}
|
|
|
|
"add git tag": &add_git_tag
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/functions/add_git_tag.sh"
|
|
env:
|
|
future_git_tag: ${future_git_tag}
|
|
bv_future_git_tag: ${bv_future_git_tag}
|
|
|
|
"git get project and add git tag":
|
|
- *f_expansions_write
|
|
- *git_get_project
|
|
- *add_git_tag
|
|
|
|
"gen feature flags": &gen_feature_flags
|
|
command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/gen_feature_flags.sh"
|
|
|
|
"fetch artifacts": &fetch_artifacts
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${mongo_artifacts}
|
|
bucket: mciuploads
|
|
extract_to: src
|
|
|
|
"fetch venv": &fetch_venv
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${mongo_venv}
|
|
bucket: mciuploads
|
|
extract_to: "."
|
|
|
|
"adjust venv": &adjust_venv
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/functions/venv_adjust.sh"
|
|
|
|
"fetch packages": &fetch_packages
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${project}/${build_variant}/${revision}/artifacts/${build_id}-packages.tgz
|
|
bucket: mciuploads
|
|
extract_to: src
|
|
build_variants: *package_variants
|
|
|
|
"fetch dist tarball": &fetch_dist_tarball
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${project}/${build_variant}/${revision}/dist/mongo-${build_id}.${ext|tgz}
|
|
bucket: mciuploads
|
|
local_file: src/mongo-binaries.tgz
|
|
|
|
"fetch dist debugsymbols": &fetch_dist_debugsymbols
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${project}/${build_variant}/${revision}/dist/mongo-${build_id}-debugsymbols.${ext|tgz}
|
|
bucket: mciuploads
|
|
local_file: src/mongo-debugsymbols.tgz
|
|
optional: true
|
|
|
|
"fetch binaries": &fetch_binaries
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${mongo_binaries}
|
|
bucket: mciuploads
|
|
local_file: src/mongo-binaries.tgz
|
|
|
|
"extract binaries": &extract_binaries
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/functions/binaries_extract.sh"
|
|
|
|
"get version expansions": &get_version_expansions
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${project}/${version_id}/${bv_future_git_tag|version}_expansions.yml
|
|
bucket: mciuploads
|
|
local_file: src/version_expansions.yml
|
|
|
|
"apply version expansions": &apply_version_expansions
|
|
command: expansions.update
|
|
params:
|
|
file: src/version_expansions.yml
|
|
|
|
"get and apply version expansions":
|
|
- *get_version_expansions
|
|
- *apply_version_expansions
|
|
|
|
"fetch benchmarks": &fetch_benchmarks
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${project}/${build_variant}/${revision}/benchmarks/${build_id}.tgz
|
|
bucket: mciuploads
|
|
extract_to: src
|
|
|
|
"fetch corpus": &fetch_corpus
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${s3_access_key_id}
|
|
aws_secret: ${s3_secret_access_key}
|
|
bucket: fuzzer-artifacts
|
|
extract_to: src/corpora
|
|
remote_file: ${mongo_fuzzer_corpus}
|
|
|
|
"fetch legacy corpus": &fetch_legacy_corpus
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${s3_access_key_id}
|
|
aws_secret: ${s3_secret_access_key}
|
|
bucket: fuzzer-artifacts
|
|
# Extract the legacy corpora to the merge directory to synthesize together until we burn in.
|
|
extract_to: src/corpora-merged
|
|
remote_file: ${project}/corpus/mongo-${build_variant}-latest.tgz
|
|
|
|
"archive new corpus": &archive_new_corpus
|
|
command: archive.targz_pack
|
|
params:
|
|
target: corpora.tgz
|
|
source_dir: src/corpora-merged
|
|
include:
|
|
- "**"
|
|
|
|
"upload new corpus": &upload_new_corpus
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${s3_access_key_id}
|
|
aws_secret: ${s3_secret_access_key}
|
|
bucket: fuzzer-artifacts
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: "Fuzzer Tests Corpus Tar Archive"
|
|
local_file: corpora.${ext|tgz}
|
|
optional: true
|
|
permissions: private
|
|
remote_file: ${mongo_fuzzer_corpus}
|
|
visibility: signed
|
|
|
|
"upload new corpus for mciuploads": &upload_new_corpus_mciuploads
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
bucket: mciuploads
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: Input Corpora
|
|
local_file: corpora.${ext|tgz}
|
|
optional: true
|
|
permissions: private
|
|
remote_file: ${mongo_fuzzer_corpus_mciuploads}
|
|
visibility: signed
|
|
|
|
"get buildnumber": &get_buildnumber
|
|
command: keyval.inc
|
|
params:
|
|
key: "${build_variant}_master"
|
|
destination: "builder_num"
|
|
|
|
"run diskstats": &run_diskstats
|
|
command: subprocess.exec
|
|
params:
|
|
background: true
|
|
system_log: true
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/run_diskstats.sh"
|
|
|
|
"collect system resource info": &collect_system_resource_info
|
|
command: subprocess.exec
|
|
params:
|
|
background: true
|
|
system_log: true
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/system_resource_info_collect.sh"
|
|
|
|
"collect ulimit info": &collect_ulimit_info
|
|
command: subprocess.exec
|
|
params:
|
|
background: true
|
|
system_log: true
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/ulimit_info_collect.sh"
|
|
|
|
# Run a monitor process as a background, system task to periodically
|
|
# display how many threads interesting processes are using.
|
|
"monitor process threads": &monitor_process_threads
|
|
command: subprocess.exec
|
|
params:
|
|
background: true
|
|
system_log: true
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/process_threads_monitor.sh"
|
|
|
|
"set up credentials": &set_up_credentials
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
silent: true
|
|
args:
|
|
- "./src/evergreen/functions/credentials_setup.sh"
|
|
|
|
"set up win mount script":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
silent: true
|
|
args:
|
|
- "./src/evergreen/functions/win_mount_script_setup.sh"
|
|
|
|
"set up notary client credentials":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
silent: true
|
|
args:
|
|
- "./src/evergreen/functions/notary_client_credentials_setup.sh"
|
|
|
|
"f_remote_credentials_setup_exec": &set_up_remote_credentials
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/remote_credentials_setup.sh"
|
|
env:
|
|
private_key_remote_bash_var: ${private_key_remote}
|
|
|
|
"set up remote credentials":
|
|
- *f_expansions_write
|
|
- *set_up_remote_credentials
|
|
|
|
"upload debugsymbols": &upload_debugsymbols
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongo-debugsymbols.${ext|tgz}
|
|
remote_file: ${mongo_debugsymbols}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
|
|
"use WiredTiger develop":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/wiredtiger_develop_use.sh"
|
|
|
|
"shared scons cache pruning":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: system
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/shared_scons_cache_pruning.sh"
|
|
|
|
"umount shared scons directory":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/shared_scons_directory_umount.sh"
|
|
|
|
"get all modified patch files":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/modified_patch_files_get_all.sh"
|
|
|
|
# This function should only be called from patch-build-only tasks.
|
|
"get added and modified patch files":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/added_and_modified_patch_files_get.sh"
|
|
|
|
"determine resmoke jobs": &determine_resmoke_jobs
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/resmoke_jobs_determine.sh"
|
|
|
|
"update resmoke jobs expansions": &update_resmoke_jobs_expansions
|
|
command: expansions.update
|
|
params:
|
|
ignore_missing_file: true
|
|
file: src/resmoke_jobs_expansion.yml
|
|
|
|
"determine task timeout": &determine_task_timeout
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/task_timeout_determine.sh"
|
|
|
|
"update task timeout expansions": &update_task_timeout_expansions
|
|
command: expansions.update
|
|
params:
|
|
ignore_missing_file: true
|
|
file: src/task_timeout_expansions.yml
|
|
|
|
"update task timeout": &update_task_timeout
|
|
command: timeout.update
|
|
params:
|
|
exec_timeout_secs: ${exec_timeout_secs}
|
|
timeout_secs: ${timeout_secs}
|
|
|
|
### Set expansion macros used in each task.
|
|
"set task expansion macros": &set_task_expansion_macros
|
|
command: expansions.update
|
|
params:
|
|
updates:
|
|
- key: mongo_binaries
|
|
value: ${project}/${compile_variant}/${version_id}/binaries/mongo-${revision_order_id}.${ext|tgz}
|
|
- key: mongo_cryptd
|
|
value: ${project}/${compile_variant}/${version_id}/binaries/mongo-cryptd-${revision_order_id}.${ext|tgz}
|
|
- key: mongo_cryptd_debugsymbols
|
|
value: ${project}/${compile_variant}/${version_id}/binaries/mongo-cryptd-debugsymbols-${revision_order_id}.${ext|tgz}
|
|
- key: mh_archive
|
|
value: ${project}/${compile_variant}/${version_id}/binaries/mh-${revision_order_id}.${ext|tgz}
|
|
- key: mh_debugsymbols
|
|
value: ${project}/${compile_variant}/${version_id}/debugsymbols/mh-debugsymbols-${revision_order_id}.${ext|tgz}
|
|
- key: mongo_debugsymbols
|
|
value: ${project}/${compile_variant}/${version_id}/debugsymbols/debugsymbols-${revision_order_id}.${ext|tgz}
|
|
- key: mongo_jstestshell
|
|
value: ${project}/${compile_variant}/${version_id}/binaries/mongo-jstestshell-${revision_order_id}.${ext|tgz}
|
|
- key: mongo_jstestshell_debugsymbols
|
|
value: ${project}/${compile_variant}/${version_id}/binaries/mongo-jstestshell-debugsymbols-${revision_order_id}.tgz
|
|
- key: mongo_artifacts
|
|
value: ${project}/${compile_variant}/${version_id}/artifacts/${revision_order_id}.tgz
|
|
- key: mongo_venv
|
|
value: ${project}/${compile_variant}/${version_id}/venv/${revision_order_id}.tgz
|
|
- key: mongo_fuzzer_corpus_mciuploads
|
|
value: ${project}/${build_variant}/${version_id}/libfuzzer-corpora/corpora-${revision_order_id}.${ext|tgz}
|
|
- key: mongo_fuzzer_corpus
|
|
value: corpora-${project}-${build_variant}.${ext|tgz}
|
|
- key: skip_tests
|
|
value: skip_test-${build_id}
|
|
|
|
"set up venv": &set_up_venv
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/functions/venv_setup.sh"
|
|
env:
|
|
pip_dir: ${pip_dir}
|
|
|
|
"upload pip requirements": &upload_pip_requirements
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: pip-requirements.txt
|
|
remote_file: ${project}/${build_variant}/${version_id}/pip-requirements-${task_id}-${execution}.txt
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
display_name: Pip Requirements
|
|
|
|
"upload clang tidy results": &upload_clang_tidy_results
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/clang_tidy_fixes.tgz
|
|
remote_file: ${project}/${build_variant}/${version_id}/${task_id}/clang_tidy_fixes.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: clang_tidy_fixes.tgz
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/clang_tidy_fixes/clang_tidy_fixes.json
|
|
remote_file: ${project}/${build_variant}/${version_id}/${task_id}/clang_tidy_fixes.json
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/json
|
|
display_name: clang_tidy_fixes.json
|
|
|
|
"send benchmark results":
|
|
- command: perf.send
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
bucket: mciuploads
|
|
prefix: ${task_id}_${execution}
|
|
file: src/cedar_report.json
|
|
|
|
"analyze benchmark results":
|
|
- *f_expansions_write
|
|
- *configure_evergreen_api_credentials
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/benchmark_results_analyze.sh"
|
|
|
|
"cleanup environment": &cleanup_environment
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/cleanup_environment.sh"
|
|
|
|
"kill processes": &kill_processes
|
|
command: subprocess.exec
|
|
params:
|
|
silent: true
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/kill_processes.sh"
|
|
|
|
"do setup":
|
|
- *f_expansions_write
|
|
- *fetch_artifacts
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *fetch_venv
|
|
- *adjust_venv
|
|
- *fetch_binaries
|
|
- *extract_binaries
|
|
- *get_buildnumber
|
|
- *f_expansions_write
|
|
- *set_up_credentials
|
|
- *run_diskstats
|
|
- *monitor_process_threads
|
|
- *collect_system_resource_info
|
|
- *collect_ulimit_info
|
|
|
|
"do non-compile setup":
|
|
- command: manifest.load
|
|
- *git_get_project
|
|
- *f_expansions_write
|
|
- *add_git_tag
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *set_up_venv
|
|
- *upload_pip_requirements
|
|
- *get_buildnumber
|
|
- *f_expansions_write
|
|
- *set_up_credentials
|
|
|
|
"do benchmark setup":
|
|
- command: manifest.load
|
|
- *git_get_project
|
|
- *f_expansions_write
|
|
- *add_git_tag
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *set_up_venv
|
|
- *upload_pip_requirements
|
|
- *get_buildnumber
|
|
- *f_expansions_write
|
|
- *set_up_credentials
|
|
- *fetch_benchmarks
|
|
|
|
"f_multiversion_setup_exec": &do_multiversion_setup
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/multiversion_setup.sh"
|
|
|
|
"do multiversion setup":
|
|
- *f_expansions_write
|
|
- *set_up_venv
|
|
- *do_multiversion_setup
|
|
|
|
# Used by generator
|
|
"get compiled binaries":
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/compiled_binaries_get.sh"
|
|
|
|
"generate powercycle tasks":
|
|
- command: manifest.load
|
|
- *git_get_project
|
|
- *f_expansions_write
|
|
- *add_git_tag
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *set_up_venv
|
|
- *upload_pip_requirements
|
|
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/powercycle_tasks_generate.sh"
|
|
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: powercycle_tasks_config.tgz
|
|
source_dir: "./"
|
|
include:
|
|
- "powercycle_tasks.json"
|
|
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: powercycle_tasks_config.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/powercycle_tasks/${task_name}-${build_id}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: Generated Task Config - Execution ${execution}
|
|
|
|
- command: generate.tasks
|
|
params:
|
|
files:
|
|
- powercycle_tasks.json
|
|
|
|
"run powercycle sentinel":
|
|
- command: manifest.load
|
|
- *git_get_project
|
|
- *f_expansions_write
|
|
- *add_git_tag
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *set_up_venv
|
|
- *upload_pip_requirements
|
|
- *configure_evergreen_api_credentials
|
|
|
|
- command: subprocess.exec
|
|
type: system
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/powercycle_sentinel_run.sh"
|
|
|
|
"execute resmoke tests": &execute_resmoke_tests
|
|
command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/resmoke_tests_execute.sh"
|
|
|
|
"retrieve generated test configuration": &retrieve_generated_test_configuration
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
bucket: mciuploads
|
|
remote_file: ${project}/${revision}/generate_tasks/generated-config-${version_id}.tgz
|
|
local_file: "generate_tasks_config.tgz"
|
|
|
|
"extract generated test configuration": &extract_generated_test_configuration
|
|
command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/extract_generated_test_configuration.sh"
|
|
|
|
"minimize jstestfuzz":
|
|
command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/jstestfuzz_minimize.sh"
|
|
|
|
"generate version":
|
|
- *f_expansions_write
|
|
- *configure_evergreen_api_credentials
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/generate_version.sh"
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: generate_tasks_config.tgz
|
|
source_dir: src/generated_resmoke_config
|
|
include:
|
|
- "*"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/run_python_script.sh"
|
|
- "buildscripts/validate_file_size.py"
|
|
- "generate_tasks_config.tgz"
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: generate_tasks_config.tgz
|
|
remote_file: ${project}/${revision}/generate_tasks/generated-config-${version_id}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: Generated Task Config - Execution ${execution}
|
|
optional: true
|
|
- command: generate.tasks
|
|
params:
|
|
optional: true
|
|
files:
|
|
- src/generated_resmoke_config/*.json
|
|
|
|
"generate version burn in":
|
|
- *f_expansions_write
|
|
- *configure_evergreen_api_credentials
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/generate_version_burn_in.sh"
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: generate_tasks_config.tgz
|
|
source_dir: src/generated_resmoke_config
|
|
include:
|
|
- "*"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/run_python_script.sh"
|
|
- "buildscripts/validate_file_size.py"
|
|
- "generate_tasks_config.tgz"
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: generate_tasks_config.tgz
|
|
remote_file: ${project}/${revision}/generate_tasks/generated-burn-in-config-${version_id}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: Generated Burn In Task Config - Execution ${execution}
|
|
optional: true
|
|
- command: generate.tasks
|
|
params:
|
|
optional: true
|
|
files:
|
|
- src/generated_resmoke_config/*.json
|
|
|
|
"generate resmoke tasks":
|
|
- *fetch_artifacts
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *get_version_expansions
|
|
- *apply_version_expansions
|
|
- *fetch_venv
|
|
- *adjust_venv
|
|
- *f_expansions_write
|
|
- *configure_evergreen_api_credentials
|
|
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/gen_tasks_activate.sh"
|
|
|
|
# Used by generator
|
|
"validate resmoke tests runtime":
|
|
- *f_expansions_write
|
|
- *configure_evergreen_api_credentials
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/resmoke_tests_runtime_validate.sh"
|
|
|
|
# Used by generator
|
|
"run generated tests":
|
|
- *f_expansions_write
|
|
- *retrieve_generated_test_configuration
|
|
- *extract_generated_test_configuration
|
|
- *f_expansions_write
|
|
- command: expansions.update
|
|
params:
|
|
updates:
|
|
- key: aws_key_remote
|
|
value: ${mongodatafiles_aws_key}
|
|
- key: aws_profile_remote
|
|
value: mongodata_aws
|
|
- key: aws_secret_remote
|
|
value: ${mongodatafiles_aws_secret}
|
|
- *f_expansions_write
|
|
- *set_up_remote_credentials
|
|
- *f_expansions_write
|
|
- *determine_resmoke_jobs
|
|
- *update_resmoke_jobs_expansions
|
|
- *f_expansions_write
|
|
- *configure_evergreen_api_credentials
|
|
- *determine_task_timeout
|
|
- *update_task_timeout_expansions
|
|
- *update_task_timeout
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/multiversion_exclude_tags_generate.sh"
|
|
- *execute_resmoke_tests
|
|
# The existence of the "run_tests_infrastructure_failure" file indicates this failure isn't
|
|
# directly actionable. We use type=setup rather than type=system or type=test for this command
|
|
# because we don't intend for any human to look at this failure.
|
|
- command: subprocess.exec
|
|
type: setup
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/check_run_tests_infrastructure_failure.sh"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/check_resmoke_failure.sh"
|
|
|
|
"run tests":
|
|
- *f_expansions_write
|
|
- *configure_evergreen_api_credentials
|
|
- *determine_task_timeout
|
|
- *update_task_timeout_expansions
|
|
- *f_expansions_write
|
|
- *update_task_timeout
|
|
- *f_expansions_write
|
|
- command: expansions.update
|
|
params:
|
|
env:
|
|
CEDAR_USER: ${cedar_user}
|
|
CEDAR_API_KEY: ${cedar_api_key}
|
|
updates:
|
|
- key: aws_key_remote
|
|
value: ${mongodatafiles_aws_key}
|
|
- key: aws_profile_remote
|
|
value: mongodata_aws
|
|
- key: aws_secret_remote
|
|
value: ${mongodatafiles_aws_secret}
|
|
- *f_expansions_write
|
|
- *set_up_remote_credentials
|
|
- *f_expansions_write
|
|
- *determine_resmoke_jobs
|
|
- *update_resmoke_jobs_expansions
|
|
- *f_expansions_write
|
|
- *configure_evergreen_api_credentials
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/multiversion_exclude_tags_generate.sh"
|
|
- *execute_resmoke_tests
|
|
# The existence of the "run_tests_infrastructure_failure" file indicates this failure isn't
|
|
# directly actionable. We use type=setup rather than type=system or type=test for this command
|
|
# because we don't intend for any human to look at this failure.
|
|
- command: subprocess.exec
|
|
type: setup
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/check_run_tests_infrastructure_failure.sh"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/check_resmoke_failure.sh"
|
|
|
|
"scons lint":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/scons_lint.sh"
|
|
|
|
"scons compile":
|
|
- *get_version_expansions
|
|
- *apply_version_expansions
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
background: true
|
|
continue_on_err: true
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/scons_splunk.sh"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/scons_compile.sh"
|
|
|
|
"ninja compile":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/ninja_compile.sh"
|
|
|
|
"generate version expansions": &generate_version_expansions
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/functions/version_expansions_generate.sh"
|
|
|
|
"upload version expansions": &upload_version_expansions
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/version_expansions.yml
|
|
remote_file: ${project}/${version_id}/${bv_future_git_tag|version}_expansions.yml
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/x-yaml
|
|
display_name: version expansions
|
|
|
|
"generate and upload version expansions":
|
|
- *generate_version_expansions
|
|
- *upload_version_expansions
|
|
|
|
"generate resmoke constants": &generate_resmoke_constants
|
|
command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/get_bin_and_fcv_versions.sh"
|
|
|
|
"archive resmoke constants": &archive_resmoke_constants
|
|
command: archive.targz_pack
|
|
params:
|
|
target: resmoke_constants.tgz
|
|
source_dir: "src"
|
|
include:
|
|
- ".resmoke_mongo_version.yml"
|
|
- ".resmoke_mongo_release_values.yml"
|
|
|
|
"upload resmoke constants": &upload_remoske_constants
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: resmoke_constants.tgz
|
|
remote_file: ${project}/${version_id}/${bv_future_git_tag|version}-resmoke-constants.tgz
|
|
bucket: mciuploads
|
|
permissions: private
|
|
visibility: signed
|
|
content_type: application/tar
|
|
display_name: resmoke constants
|
|
|
|
"generate and upload resmoke constants":
|
|
- *generate_resmoke_constants
|
|
- *archive_resmoke_constants
|
|
- *upload_remoske_constants
|
|
|
|
"fetch resmoke constants": &fetch_resmoke_constants
|
|
command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${project}/${version_id}/${bv_future_git_tag|version}-resmoke-constants.tgz
|
|
bucket: mciuploads
|
|
extract_to: src
|
|
|
|
"generate compile expansions":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/functions/compile_expansions_generate.sh"
|
|
|
|
"apply compile expansions":
|
|
- command: expansions.update
|
|
params:
|
|
file: src/compile_expansions.yml
|
|
- *f_expansions_write
|
|
|
|
"do jepsen setup":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/do_jepsen_setup/build_libfaketime.sh"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/do_jepsen_setup/install_jepsen.sh"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/do_jepsen_setup/nodes.sh"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/do_jepsen_setup/move_binaries.sh"
|
|
|
|
"do jepsen docker setup":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: system
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/jepsen_docker/setup.sh"
|
|
"run jepsen docker test":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: setup
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/jepsen_docker/docker-up.sh"
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: jepsen-docker-log.tgz
|
|
source_dir: jepsen/docker
|
|
include:
|
|
- "docker.log"
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: jepsen-docker-log.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/jstestfuzz/jepsen-docker-log-${task_id}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: private
|
|
visibility: signed
|
|
content_type: application/gzip
|
|
display_name: Jepsen Docker Build Log - Execution ${execution}
|
|
|
|
- command: subprocess.exec
|
|
type: test
|
|
timeout_secs: 2700 # Timeout test if there is no output for more than 45 minutes.
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/jepsen_docker/list-append.sh"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/jepsen_test_fail.sh"
|
|
|
|
"cleanup jepsen docker test":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: system
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/jepsen_docker/cleanup.sh"
|
|
|
|
"run jepsen test":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
timeout_secs: 2700 # Timeout test if there is no output for more than 45 minutes.
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/jepsen_test_run.sh"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/jepsen_test_fail.sh"
|
|
|
|
"setup jstestfuzz":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/jstestfuzz_setup.sh"
|
|
|
|
"lint fuzzer sanity patch":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/lint_fuzzer_sanity_patch.sh"
|
|
|
|
"lint fuzzer sanity all":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/lint_fuzzer_sanity_all.sh"
|
|
|
|
# Used by generator
|
|
"run jstestfuzz":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/run_jstestfuzz/clone_repos.sh"
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/jstestfuzz_run.sh"
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: "jstests.tgz"
|
|
source_dir: "src/jstestfuzz"
|
|
include:
|
|
- "out/*.js"
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: jstests.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/jstestfuzz/${task_id}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: private
|
|
visibility: signed
|
|
content_type: application/gzip
|
|
display_name: Generated Tests - Execution ${execution}
|
|
|
|
"upload npm logs":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/move_npm_logs.sh"
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: "npm-logs.tgz"
|
|
source_dir: "${workdir}/"
|
|
include:
|
|
- "_logs/*"
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: npm-logs.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/jstestfuzz/${task_id}-${execution}-npm-logs.tgz
|
|
bucket: mciuploads
|
|
permissions: private
|
|
visibility: signed
|
|
content_type: application/gzip
|
|
display_name: npm logs - Execution ${execution}
|
|
|
|
"upload jstestfuzz minimized output":
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/minimizer-outputs.json
|
|
remote_file: ${project}/${build_variant}/${revision}/artifacts/minimizer-outputs-${task_id}-${execution}.json
|
|
bucket: mciuploads
|
|
permissions: private
|
|
visibility: signed
|
|
content_type: application/json
|
|
display_name: Minimizer Outputs - Execution ${execution}
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/jstestfuzz/out/minimizer-outputs-minimizedtest.js
|
|
remote_file: ${project}/${build_variant}/${revision}/artifacts/minimizer-outputs-minimizedtest-${task_id}-${execution}.js
|
|
bucket: mciuploads
|
|
permissions: private
|
|
visibility: signed
|
|
content_type: text/javascript
|
|
display_name: Minimized jstestfuzz Test - Execution ${execution}
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/wiki_page_minimized_agg_query_fuzzer.sh"
|
|
- command: attach.artifacts
|
|
params:
|
|
files:
|
|
- wiki_page_running_minimized_test_location.json
|
|
|
|
"run idl tests":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/idl_tests_run.sh"
|
|
|
|
"run powercycle test":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/powercycle_run_test.sh"
|
|
|
|
- command: expansions.update
|
|
params:
|
|
ignore_missing_file: true
|
|
file: src/powercycle_exit.yml
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: setup
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/powercycle_ssh_failure_exit.sh"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/powercycle_exit.sh"
|
|
|
|
"run packager.py":
|
|
- *get_version_expansions
|
|
- *apply_version_expansions
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/packager.py_run.sh"
|
|
|
|
"do watchdog setup":
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/do_watchdog_setup.sh"
|
|
|
|
"run package test":
|
|
- *get_version_expansions
|
|
- *apply_version_expansions
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
add_expansions_to_env: true
|
|
args:
|
|
- "src/evergreen/run_python_script.sh"
|
|
- "buildscripts/package_test.py"
|
|
- "--arch=${packager_arch}"
|
|
- "branch"
|
|
- "--test"
|
|
- "${packager_distro}"
|
|
- "https://s3.amazonaws.com/mciuploads/${project}/${build_variant}/${revision}/artifacts/${build_id}-packages.tgz"
|
|
- "--edition"
|
|
- "${repo_edition}"
|
|
- "--server-version"
|
|
- "${version}"
|
|
|
|
"run release package test":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
add_expansions_to_env: true
|
|
args:
|
|
- "src/evergreen/run_python_script.sh"
|
|
- "buildscripts/package_test.py"
|
|
- "release"
|
|
|
|
"set up EC2 instance": &set_up_ec2_instance
|
|
|
|
- command: host.create
|
|
params:
|
|
provider: ec2
|
|
distro: ${distro_id}
|
|
timeout_teardown_secs: 604800 # 7 days
|
|
security_group_ids:
|
|
- sg-097bff6dd0d1d31d0
|
|
|
|
- command: host.list
|
|
params:
|
|
wait: true
|
|
timeout_seconds: 3000
|
|
num_hosts: 1
|
|
path: src/hosts.yml
|
|
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/powercycle_check_host.sh"
|
|
|
|
- command: expansions.update
|
|
params:
|
|
file: src/powercycle_ip_address.yml
|
|
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/powercycle_setup_host.sh"
|
|
|
|
"run selinux tests":
|
|
- command: host.create
|
|
params:
|
|
provider: ec2
|
|
distro: ${distro}
|
|
timeout_teardown_secs: 86400 # 1 day
|
|
- command: host.list
|
|
params:
|
|
wait: true
|
|
timeout_seconds: 900 # 15 min
|
|
num_hosts: 1
|
|
path: src/hosts.yml
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
redirect_standard_error_to_output: true
|
|
args:
|
|
- "./src/evergreen/selinux_run_test.sh"
|
|
env:
|
|
test_list: ${test_list}
|
|
user: ec2-user
|
|
|
|
|
|
### Process & archive remote EC2 artifacts ###
|
|
"save powercycle artifacts": &save_powercycle_artifacts
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/powercycle_save_artifacts.sh"
|
|
|
|
"archive remote EC2 artifacts": &archive_remote_ec2_artifacts
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/ec2_artifacts.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/remote_ec2/remote_ec2_artifacts-${task_id}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: Remote EC2 Artifacts - Execution ${execution}
|
|
optional: true
|
|
|
|
"archive remote EC2 monitor files": &archive_remote_ec2_monitor_files
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/ec2_monitor_files.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/remote_ec2/remote_ec2_monitor-${task_id}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: Remote EC2 Monitor - Execution ${execution}
|
|
optional: true
|
|
|
|
"save ec2 task artifacts":
|
|
- *f_expansions_write
|
|
- *save_powercycle_artifacts
|
|
- *archive_remote_ec2_artifacts
|
|
- *archive_remote_ec2_monitor_files
|
|
|
|
### Process & archive local client logs ###
|
|
"tar local client logs": &tar_local_client_logs
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/local_client_logs_tar.sh"
|
|
|
|
"archive local client logs": &archive_local_client_logs
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/client-logs.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/client_logs/mongo-client-logs-${task_id}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: Client logs - Execution ${execution}
|
|
optional: true
|
|
|
|
"save local client logs":
|
|
- *f_expansions_write
|
|
- *tar_local_client_logs
|
|
- *archive_local_client_logs
|
|
|
|
### Cleanup after the watchdog FUSE testing ###
|
|
"cleanup FUSE watchdog":
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/fuse_watchdog_cleanup.sh"
|
|
|
|
### Process & archive Code Coverage artifacts ###
|
|
"process code coverage data": &process_code_coverage_data
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/functions/code_coverage_data_process.sh"
|
|
env:
|
|
GCOV_TOOL: ${gcov_tool}
|
|
|
|
"tar code coverage data": &tar_code_coverage_data
|
|
command: archive.targz_pack
|
|
params:
|
|
target: "src/gcov-intermediate-files.tgz"
|
|
source_dir: "src"
|
|
include:
|
|
- "*.gcda.gcov"
|
|
|
|
"archive code coverage data": &archive_code_coverage_data
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: "src/gcov-intermediate-files.tgz"
|
|
remote_file: ${project}/${build_variant}/${revision}/gcov/gcov-intermediate-files-${task_id}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: gcov intermediate files - Execution ${execution}
|
|
optional: true
|
|
|
|
"save code coverage data":
|
|
- *f_expansions_write
|
|
- *process_code_coverage_data
|
|
- *tar_code_coverage_data
|
|
- *archive_code_coverage_data
|
|
|
|
"tar jepsen logs": &tar_jepsen_logs
|
|
command: archive.targz_pack
|
|
params:
|
|
target: "src/jepsen-mongod-logs.tgz"
|
|
source_dir: "${workdir}/src/jepsen-workdir"
|
|
include:
|
|
- "./**.log"
|
|
|
|
"archive jepsen logs": &archive_jepsen_logs
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/jepsen-mongod-logs.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/jepsen/jepsen-mongod-logs-${task_id}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: Jepsen mongod Logs - ${execution}
|
|
optional: true
|
|
|
|
"tar jepsen results": &tar_jepsen_results
|
|
command: archive.targz_pack
|
|
params:
|
|
target: "src/jepsen-results.tgz"
|
|
source_dir: "src/jepsen-mongodb/store"
|
|
include:
|
|
- "./**"
|
|
|
|
"archive jepsen results": &archive_jepsen_results
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/jepsen-results.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/jepsen/jepsen-results-${task_id}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: Jepsen Test Results - ${execution}
|
|
optional: true
|
|
|
|
"upload jepsen_log": &upload_jepsen_log
|
|
command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/jepsen-mongodb/jepsen_${task_name}_${execution}.log
|
|
remote_file: ${project}/${build_variant}/${revision}/jepsen_${task_name}_${execution}.log
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
display_name: Jepsen Test Log
|
|
|
|
"save jepsen artifacts":
|
|
- *tar_jepsen_logs
|
|
- *archive_jepsen_logs
|
|
- *tar_jepsen_results
|
|
- *archive_jepsen_results
|
|
- *upload_jepsen_log
|
|
|
|
"save blackduck artifacts":
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: blackduck.tgz
|
|
source_dir: /home/ec2-user/blackduck/runs/
|
|
include:
|
|
- "**"
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: blackduck.tgz
|
|
remote_file: ${project}/${build_variant}/${version_id}/blackduck-${task_id}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: BlackDuck logs
|
|
|
|
### Process & archive mongo coredumps ###
|
|
"gather mongo coredumps": &gather_mongo_coredumps
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/gather_mongo_coredumps.sh"
|
|
|
|
"tar mongo coredumps": &tar_mongo_coredumps
|
|
command: archive.targz_pack
|
|
params:
|
|
target: "mongo-coredumps.tgz"
|
|
source_dir: "src"
|
|
include:
|
|
- "./**.core"
|
|
- "./**.mdmp" # Windows: minidumps
|
|
|
|
"archive mongo coredumps": &archive_mongo_coredumps
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: mongo-coredumps.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/coredumps/mongo-coredumps-${build_id}-${task_name}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: Core Dumps - Execution ${execution}
|
|
optional: true
|
|
|
|
"save mongo coredumps":
|
|
- *f_expansions_write
|
|
- *gather_mongo_coredumps
|
|
- *tar_mongo_coredumps
|
|
- *archive_mongo_coredumps
|
|
|
|
### Process & archive failed unittest artifacts ###
|
|
"gather failed unittests": &gather_failed_unittests
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/failed_unittests_gather.sh"
|
|
|
|
"tar failed unittests": &tar_failed_unittests
|
|
command: archive.targz_pack
|
|
params:
|
|
target: "mongo-unittests.tgz"
|
|
source_dir: "src/dist-unittests"
|
|
include:
|
|
- "**"
|
|
|
|
"archive failed unittests": &archive_failed_unittests
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: mongo-unittests.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/unittests/mongo-unittests-${build_id}-${task_name}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: Unit tests - Execution ${execution}
|
|
optional: true
|
|
|
|
"save failed unittests":
|
|
- *f_expansions_write
|
|
- *gather_failed_unittests
|
|
- *tar_failed_unittests
|
|
- *archive_failed_unittests
|
|
|
|
"archive dbtest": &archive_dbtest
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: dbtest-binary.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/dbtest/dbtest-${build_id}-${task_name}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/tar
|
|
display_name: dbtest binary - Execution ${execution}
|
|
optional: true
|
|
|
|
"archive dbtest debugsymbols": &archive_dbtest_debug
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: dbtest-debugsymbols.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/dbtest/dbtest-${build_id}-${task_name}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/tar
|
|
display_name: dbtest debugsymbols
|
|
optional: true
|
|
|
|
"save unstripped dbtest":
|
|
- *archive_dbtest
|
|
- *archive_dbtest_debug
|
|
|
|
### Process & archive artifacts from hung processes ###
|
|
"run hang analyzer":
|
|
- *f_expansions_write
|
|
- *configure_evergreen_api_credentials
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/hang_analyzer.sh"
|
|
|
|
"wait for resmoke to shutdown":
|
|
command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/wait_for_resmoke_to_shutdown.sh"
|
|
|
|
"tar hang analyzer debugger files": &tar_hang_analyzer_debugger_files
|
|
command: archive.targz_pack
|
|
params:
|
|
target: "src/mongo-hanganalyzer.tgz"
|
|
source_dir: "src"
|
|
include:
|
|
- "./debugger*.*"
|
|
|
|
"archive hang analyzer debugger files": &archive_hang_analyzer_debugger_files
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongo-hanganalyzer.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/hanganalyzer/mongo-hanganalyzer-${build_id}-${task_name}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: Hang Analyzer Output - Execution ${execution}
|
|
optional: true
|
|
|
|
"save hang analyzer debugger files":
|
|
- *tar_hang_analyzer_debugger_files
|
|
- *archive_hang_analyzer_debugger_files
|
|
|
|
### Process & archive disk statistic artifacts ###
|
|
"tar disk statistics": &tar_disk_statistics
|
|
command: archive.targz_pack
|
|
params:
|
|
target: "diskstats.tgz"
|
|
source_dir: "./"
|
|
include:
|
|
- "./mongo-diskstats*"
|
|
- "./mongo-diskstats*.csv"
|
|
|
|
"archive disk statistics": &archive_disk_statistics
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: diskstats.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/diskstats/mongo-diskstats-${task_id}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: Disk Stats - Execution ${execution}
|
|
optional: true
|
|
|
|
"save disk statistics":
|
|
- *tar_disk_statistics
|
|
- *archive_disk_statistics
|
|
|
|
"save libfuzzertest corpora":
|
|
- *archive_new_corpus
|
|
- *upload_new_corpus
|
|
- *upload_new_corpus_mciuploads
|
|
|
|
### Process & archive system resource artifacts ###
|
|
"tar system resource information": &tar_system_resource_information
|
|
command: archive.targz_pack
|
|
params:
|
|
target: "system-resource-info.tgz"
|
|
source_dir: src
|
|
include:
|
|
- "./system_resource_info*"
|
|
|
|
"archive system resource information": &archive_system_resource_information
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: system-resource-info.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/systemresourceinfo/mongo-system-resource-info-${task_id}-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: System Resource Info - Execution ${execution}
|
|
optional: true
|
|
|
|
"save system resource information":
|
|
- *tar_system_resource_information
|
|
- *archive_system_resource_information
|
|
|
|
"tar UndoDB recordings": &tar_undodb_recordings
|
|
command: archive.targz_pack
|
|
params:
|
|
target: undodb-recordings.tgz
|
|
source_dir: src
|
|
include:
|
|
- "./*.undo.tokeep"
|
|
- "./*.undo"
|
|
|
|
"archive UndoDB recordings": &archive_undodb_recordings
|
|
command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: undodb-recordings.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/undo/undodb-recordings-${task_id}-execution-${execution}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: UndoDB Recordings - Execution ${execution}
|
|
optional: true
|
|
|
|
"save UndoDB recordings":
|
|
- *tar_undodb_recordings
|
|
- *archive_undodb_recordings
|
|
|
|
### Attach report & artifacts ###
|
|
"attach scons logs":
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/build/scons/config.log
|
|
remote_file: ${project}/${build_variant}/${revision}/artifacts/scons-config.log.${build_id}-${task_name}-${execution}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
display_name: SCons configure log
|
|
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/scons_cache.log
|
|
content_type: text/plain
|
|
remote_file: ${project}/${build_variant}/${revision}/artifacts/scons-cache.log.${build_id}-${task_name}.${execution}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
display_name: SCons cache debug log
|
|
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/scons_stdout.log
|
|
content_type: text/plain
|
|
remote_file: ${project}/${build_variant}/${revision}/artifacts/scons-stdout.log.${build_id}-${task_name}.${execution}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
display_name: SCons stdout log
|
|
|
|
"send scons cedar report":
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/scons_metrics_report.sh"
|
|
|
|
- command: perf.send
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
bucket: mciuploads
|
|
prefix: ${task_id}_${execution}
|
|
file: src/scons_cedar_report.json
|
|
|
|
"attach report":
|
|
command: attach.results
|
|
params:
|
|
file_location: ${report_file|src/report.json}
|
|
|
|
"print top N metrics":
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
add_expansions_to_env: true
|
|
args:
|
|
- "src/evergreen/run_python_script.sh"
|
|
- "site_scons/site_tools/build_metrics/top_n_metrics.py"
|
|
- "--input=build_metrics.json"
|
|
- "--output=top_15_metrics.txt"
|
|
- "--num=15"
|
|
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/top_15_metrics.txt
|
|
remote_file: ${project}/${build_variant}/${revision}/${build_id}-${task_name}-${execution}-top_15_metrics.txt
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
display_name: Top 15 Metrics
|
|
|
|
"attach build metrics":
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: build-metrics.tgz
|
|
source_dir: src
|
|
include:
|
|
- "./build_metrics.json"
|
|
- "./populate_cache.json"
|
|
- "./pull_cache.json"
|
|
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: build-metrics.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/${build_id}-${task_name}-${execution}-build-metrics.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: Metrics JSON
|
|
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
add_expansions_to_env: true
|
|
args:
|
|
- "src/evergreen/run_python_script.sh"
|
|
- "evergreen/build_metric_cedar_report.py"
|
|
- "--build-metrics=build_metrics.json"
|
|
- "--cache-push-metrics=populate_cache.json"
|
|
- "--cache-pull-metrics=pull_cache.json"
|
|
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: build_metrics_cedar_report.tgz
|
|
source_dir: src
|
|
include:
|
|
- "./build_metrics_cedar_report.json"
|
|
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: build_metrics_cedar_report.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/${build_id}-${task_name}-${execution}-build_metrics_cedar_report.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: Cedar Report JSON
|
|
|
|
- command: perf.send
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
bucket: mciuploads
|
|
prefix: ${task_id}_${execution}
|
|
file: src/build_metrics_cedar_report.json
|
|
|
|
"attach artifacts":
|
|
command: attach.artifacts
|
|
params:
|
|
optional: true
|
|
ignore_artifacts_for_spawn: false
|
|
files:
|
|
- ${archive_file|src/archive.json}
|
|
|
|
"attach wiki page":
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/wiki_page.sh"
|
|
- command: attach.artifacts
|
|
params:
|
|
files:
|
|
- wiki_page_location.json
|
|
|
|
"attach local resmoke invocation":
|
|
command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/local-resmoke-invocation.txt
|
|
remote_file: ${project}/${build_variant}/${revision}/local-resmoke-invocation-${task_id}-${execution}.txt
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
display_name: Resmoke.py Invocation for Local Usage
|
|
|
|
"attach multiversion exclude tags":
|
|
command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/generated_resmoke_config/multiversion_exclude_tags.yml
|
|
remote_file: ${project}/${build_variant}/${revision}/multiversion_exclude_tags-${task_id}-${execution}.yml
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
display_name: Generated multiversion exclude tags options
|
|
|
|
# Pre task steps
|
|
pre:
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
|
|
# Post task steps
|
|
post:
|
|
- func: "f_expansions_write"
|
|
- func: "upload npm logs"
|
|
- func: "attach local resmoke invocation"
|
|
- func: "attach multiversion exclude tags"
|
|
- func: "attach report"
|
|
- func: "attach artifacts"
|
|
- func: "save ec2 task artifacts"
|
|
- func: "attach wiki page"
|
|
- func: "upload jstestfuzz minimized output"
|
|
- func: "kill processes"
|
|
- func: "save local client logs"
|
|
- func: "save code coverage data"
|
|
- func: "save jepsen artifacts"
|
|
- func: "save blackduck artifacts"
|
|
- func: "save mongo coredumps"
|
|
- func: "save failed unittests"
|
|
- func: "save hang analyzer debugger files"
|
|
- func: "save disk statistics"
|
|
- func: "save system resource information"
|
|
- func: "save UndoDB recordings"
|
|
- func: "umount shared scons directory"
|
|
- func: "cleanup FUSE watchdog"
|
|
- func: "cleanup environment"
|
|
- func: "cleanup jepsen docker test"
|
|
|
|
# Timeout steps
|
|
timeout:
|
|
- func: "f_expansions_write"
|
|
- func: "run hang analyzer"
|
|
- func: "wait for resmoke to shutdown"
|
|
|
|
|
|
#######################################
|
|
# Tasks #
|
|
#######################################
|
|
tasks:
|
|
|
|
## compile - build all scons targets except unittests ##
|
|
- name: compile_dist_test
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: >-
|
|
install-dist-test
|
|
${additional_compile_targets|}
|
|
task_compile_flags: >-
|
|
PREFIX=dist-test
|
|
|
|
- name: compile_upload_benchmarks
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-benchmarks
|
|
compiling_for_test: true
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: "benchmarks.tgz"
|
|
source_dir: "src"
|
|
include:
|
|
- "./build/benchmarks.txt"
|
|
- "./build/**_bm"
|
|
- "./build/**_bm.gcno"
|
|
- "./build/**_bm.exe"
|
|
- "./build/**_bm.pdb"
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: benchmarks.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/benchmarks/${build_id}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/tar
|
|
display_name: Benchmarks
|
|
|
|
- name: compile_venv_deps_check
|
|
commands:
|
|
- *f_expansions_write
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/compile_venv_dependency_check.sh"
|
|
|
|
- name: determine_patch_tests
|
|
commands:
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/gen_patch_test_tags.sh"
|
|
|
|
- name: archive_dist_test
|
|
tags: []
|
|
depends_on:
|
|
- name: compile_dist_test
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: >-
|
|
archive-dist-test
|
|
task_compile_flags: >-
|
|
PREFIX=dist-test
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
add_expansions_to_env: true
|
|
args:
|
|
- "src/evergreen/run_python_script.sh"
|
|
- "evergreen/macos_notary.py"
|
|
- "mongodb-binaries.${ext|tgz}"
|
|
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-binaries.${ext|tgz}
|
|
remote_file: ${mongo_binaries}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: Binaries
|
|
|
|
- *f_expansions_write
|
|
- *gen_feature_flags
|
|
- *fetch_resmoke_constants
|
|
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: "artifacts.tgz"
|
|
source_dir: "src"
|
|
include:
|
|
- ".resmoke_mongo_version.yml"
|
|
- ".resmoke_mongo_release_values.yml"
|
|
- "patch_test_tags.tgz"
|
|
- "./build/**.gcno"
|
|
- "./etc/*san.suppressions"
|
|
- "./etc/backports_required_for_multiversion_tests.yml"
|
|
- "./etc/evergreen_timeouts.yml"
|
|
- "./etc/expansions.default.yml"
|
|
- "./etc/evergreen_nightly.yml"
|
|
- "./etc/evergreen.yml"
|
|
- "./etc/evergreen_yml_components/**"
|
|
- "./etc/pip/**"
|
|
- "./etc/repo_config.yaml"
|
|
- "./etc/scons/**"
|
|
- "buildscripts/**"
|
|
- "all_feature_flags.txt" # Must correspond to the definition in buildscripts/idl/lib.py.
|
|
- "jstests/**"
|
|
- "patch_files.txt"
|
|
- "evergreen/**"
|
|
- "src/mongo/client/sdam/json_tests/sdam_tests/**"
|
|
- "src/mongo/client/sdam/json_tests/server_selection_tests/**"
|
|
- "src/mongo/db/modules/enterprise/docs/**"
|
|
- "src/mongo/db/modules/enterprise/jstests/**"
|
|
- "src/mongo/db/modules/subscription/jstests/**"
|
|
- "src/mongo/util/options_parser/test_config_files/**"
|
|
- "src/third_party/JSON-Schema-Test-Suite/tests/draft4/**"
|
|
- "src/third_party/mock_ocsp_responder/**"
|
|
- "src/third_party/schemastore.org/**"
|
|
exclude_files:
|
|
- "*_test.pdb"
|
|
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: artifacts.tgz
|
|
remote_file: ${mongo_artifacts}
|
|
bucket: mciuploads
|
|
permissions: private
|
|
visibility: signed
|
|
content_type: application/tar
|
|
display_name: Artifacts
|
|
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: "venv.tgz"
|
|
source_dir: "./"
|
|
include:
|
|
- "./venv/**"
|
|
- "./venv_readme.txt"
|
|
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: venv.tgz
|
|
remote_file: ${mongo_venv}
|
|
bucket: mciuploads
|
|
permissions: private
|
|
visibility: signed
|
|
content_type: application/tar
|
|
display_name: Python venv (see included venv_readme.txt)
|
|
|
|
- name: archive_dist_test_debug
|
|
tags: []
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: >-
|
|
archive-dist-test-debug
|
|
task_compile_flags: >-
|
|
PREFIX=dist-test
|
|
|
|
- func: "upload debugsymbols"
|
|
|
|
- name: compile_ninja
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
generating_for_ninja: true
|
|
separate_debug: off
|
|
task_compile_flags: >-
|
|
--ninja
|
|
- *f_expansions_write
|
|
- func: "ninja compile"
|
|
vars:
|
|
ninja_file: "build.ninja"
|
|
targets: "install-devcore compiledb"
|
|
|
|
- name: compile_ninja_quick
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
generating_for_ninja: true
|
|
separate_debug: off
|
|
task_compile_flags: >-
|
|
--ninja
|
|
- *f_expansions_write
|
|
- func: "ninja compile"
|
|
vars:
|
|
ninja_file: "build.ninja"
|
|
targets: "install-wiredtiger compiledb"
|
|
|
|
- name: compile_ninja_default_profile
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
generating_for_ninja: true
|
|
separate_debug: off
|
|
task_compile_flags: >-
|
|
--build-profile=default
|
|
--ninja
|
|
- *f_expansions_write
|
|
- func: "ninja compile"
|
|
vars:
|
|
ninja_file: "build.ninja"
|
|
|
|
- name: compile_ninja_default_profile_linux
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
generating_for_ninja: true
|
|
separate_debug: off
|
|
task_compile_flags: >-
|
|
--build-profile=default
|
|
--variables-files=etc/scons/mongodbtoolchain_stable_clang.vars
|
|
--ninja
|
|
- *f_expansions_write
|
|
- func: "ninja compile"
|
|
vars:
|
|
ninja_file: "build.ninja"
|
|
targets: "install-devcore compiledb"
|
|
|
|
- name: compile_ninja_opt_profile
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
generating_for_ninja: true
|
|
separate_debug: off
|
|
task_compile_flags: >-
|
|
--build-profile=opt
|
|
CCACHE=
|
|
ICECC=
|
|
- *f_expansions_write
|
|
- func: "ninja compile"
|
|
vars:
|
|
ninja_file: "opt.ninja"
|
|
targets: "install-devcore compiledb"
|
|
|
|
- name: compile_ninja_fast_profile
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
generating_for_ninja: true
|
|
separate_debug: off
|
|
task_compile_flags: >-
|
|
--build-profile=fast
|
|
CCACHE=
|
|
ICECC=
|
|
- *f_expansions_write
|
|
- func: "ninja compile"
|
|
vars:
|
|
ninja_file: "fast.ninja"
|
|
targets: "install-devcore compiledb"
|
|
|
|
- name: compile_ninja_san_profile
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
generating_for_ninja: true
|
|
separate_debug: off
|
|
task_compile_flags: >-
|
|
--build-profile=san
|
|
--linker=lld
|
|
CCACHE=
|
|
ICECC=
|
|
- *f_expansions_write
|
|
- func: "ninja compile"
|
|
vars:
|
|
ninja_file: "san.ninja"
|
|
targets: "install-devcore compiledb"
|
|
|
|
- name: compile_ninja_compiledb_profile
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
generating_for_ninja: true
|
|
separate_debug: off
|
|
task_compile_flags: >-
|
|
--build-profile=compiledb
|
|
--ninja
|
|
- *f_expansions_write
|
|
- func: "ninja compile"
|
|
vars:
|
|
ninja_file: "compiledb.ninja"
|
|
targets: "install-devcore compiledb"
|
|
|
|
- name: compile_ninja_next
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
generating_for_ninja: true
|
|
separate_debug: off
|
|
task_compile_flags: >-
|
|
--build-tools=next
|
|
--ninja
|
|
- *f_expansions_write
|
|
- func: "ninja compile"
|
|
vars:
|
|
ninja_file: "build.ninja"
|
|
targets: "install-devcore compiledb"
|
|
|
|
- name: compile_build_tools_next
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
task_compile_flags: >-
|
|
--build-tools=next
|
|
targets:
|
|
install-core
|
|
|
|
- name: libdeps_graph_linting
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/libdeps_setup.sh"
|
|
|
|
- func: "scons compile"
|
|
vars:
|
|
task_compile_flags: >-
|
|
--link-model=dynamic
|
|
--force-macos-dynamic-link
|
|
--build-tools=next
|
|
targets:
|
|
generate-libdeps-graph
|
|
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/libdeps_run.sh"
|
|
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/results.txt
|
|
remote_file: ${project}/${build_variant}/${revision}/artifacts/libdeps-results.txt.${build_id}-${task_name}.${execution}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
display_name: Libdeps Linter Results
|
|
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/libdeps.graphml.gz
|
|
remote_file: ${project}/${build_variant}/${revision}/artifacts/libdeps.graphml.${build_id}-${task_name}.${execution}.gz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: Libdeps Graph Data
|
|
|
|
## compile_all - build all scons targets ##
|
|
- name: compile_all
|
|
tags: []
|
|
depends_on:
|
|
- name: compile_dist_test
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-all-meta
|
|
compiling_for_test: true
|
|
|
|
- name: compile_all_but_not_unittests
|
|
tags: []
|
|
depends_on:
|
|
- name: compile_dist_test
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-all-meta-but-not-unittests
|
|
compiling_for_test: true
|
|
|
|
## clang_tidy - run clang_tidy
|
|
- name: clang_tidy
|
|
tags: []
|
|
exec_timeout_secs: 7200 # 1 hour timeout for the task overall
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
task_compile_flags: >-
|
|
--build-profile=compiledb
|
|
targets: compiledb +mongo-tidy-tests
|
|
compiling_for_test: true
|
|
compile_flags: >-
|
|
--link-model=dynamic
|
|
-j$(grep -c ^processor /proc/cpuinfo)
|
|
--variables-files=etc/scons/mongodbtoolchain_${clang_tidy_toolchain}_clang.vars
|
|
show_scons_timings: false
|
|
- command: subprocess.exec
|
|
type: test
|
|
timeout_secs: 7000 # 1 hour timeout for no output
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/run_clang_tidy.sh"
|
|
env:
|
|
clang_tidy_file: ".clang-tidy"
|
|
|
|
## compile_unittests ##
|
|
- &compile_unittests
|
|
name: compile_unittests
|
|
depends_on:
|
|
- name: compile_dist_test
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-unittests install-unittests-debug
|
|
compiling_for_test: true
|
|
|
|
- name: build_metrics_tasks_gen
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
add_expansions_to_env: true
|
|
args:
|
|
- "src/evergreen/run_python_script.sh"
|
|
- "buildscripts/evergreen_gen_build_metrics_tasks.py"
|
|
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: build_metrics_task_gen.tgz
|
|
source_dir: "src"
|
|
include:
|
|
- "build_metrics_task_gen.json"
|
|
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: build_metrics_task_gen.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/build-metrics/${task_name}-${build_id}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/gzip
|
|
display_name: Build Metrics Task Gen JSON
|
|
|
|
- command: generate.tasks
|
|
params:
|
|
files:
|
|
- src/build_metrics_task_gen.json
|
|
|
|
## A copy of the compile_unittests task for the recorded unittest taskgroup ##
|
|
- <<: *compile_unittests
|
|
name: compile_unittests_for_recorded_unittest
|
|
|
|
## run_unittests ##
|
|
- name: run_unittests
|
|
tags: []
|
|
depends_on:
|
|
- name: compile_unittests
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "run diskstats"
|
|
- func: "f_expansions_write"
|
|
- func: "monitor process threads"
|
|
- func: "collect system resource info"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: unittests
|
|
install_dir: build/install/bin
|
|
|
|
## run_unittests with UndoDB live-record ##
|
|
#- name: run_unittests_with_recording
|
|
# depends_on:
|
|
# - name: compile_unittests_for_recorded_unittest
|
|
# commands:
|
|
# - *f_expansions_write
|
|
# - func: "run diskstats"
|
|
# - func: "f_expansions_write"
|
|
# - func: "monitor process threads"
|
|
# - func: "collect system resource info"
|
|
# - command: subprocess.exec
|
|
# params:
|
|
# binary: bash
|
|
# args:
|
|
# - "./src/evergreen/undo_wiki_page.sh"
|
|
# - command: attach.artifacts
|
|
# params:
|
|
# files:
|
|
# - undo_wiki_page_location.json
|
|
# - func: "run tests"
|
|
# vars:
|
|
# suite: unittests
|
|
# record_with: --recordWith /opt/undodb5/bin/live-record
|
|
# # Start fewer jobs since there's a constant amount of overhead of starting
|
|
# # live-record for each job.
|
|
# resmoke_jobs_factor: 0.3
|
|
# install_dir: build/install/bin
|
|
|
|
|
|
##compile_and_archive_libfuzzertests - build libfuzzertests ##
|
|
- name: compile_and_archive_libfuzzertests
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: archive-fuzzertests
|
|
compiling_for_test: true
|
|
# Store the fuzzer executable, which we use to generate and run fuzzer inputs.
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: "src/fuzzertests-runtime.tgz"
|
|
remote_file: "${project}/libfuzzer-tests/${build_variant}/${revision}/libfuzzer-tests.tgz"
|
|
bucket: mciuploads
|
|
permissions: private
|
|
visibility: signed
|
|
content_type: application/tar
|
|
display_name: "LibFuzzer Tests"
|
|
|
|
## fetch_and_run_libfuzzertests - get input corpora from s3 and run libfuzzertests ##
|
|
- name: fetch_and_run_libfuzzertests
|
|
tags: []
|
|
commands:
|
|
- func: "fetch corpus"
|
|
- func: "fetch legacy corpus"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: libfuzzer
|
|
|
|
- name: server_discovery_and_monitoring_json_test
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-sdam-json-test
|
|
compiling_for_test: true
|
|
install_dir: build/install/bin
|
|
- func: "run tests"
|
|
vars:
|
|
suite: sdam_json_test
|
|
|
|
- name: server_selection_json_test
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-server-selection-json-test
|
|
compiling_for_test: true
|
|
install_dir: build/install/bin
|
|
- func: "run tests"
|
|
|
|
## compile_dbtest ##
|
|
- name: compile_dbtest
|
|
tags: []
|
|
depends_on:
|
|
- name: compile_dist_test
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-dbtest install-dbtest-debug
|
|
compiling_for_test: true
|
|
|
|
## run_dbtest ##
|
|
- name: run_dbtest
|
|
tags: []
|
|
depends_on:
|
|
- name: compile_dbtest
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "run diskstats"
|
|
- func: "f_expansions_write"
|
|
- func: "monitor process threads"
|
|
- func: "collect system resource info"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: dbtest
|
|
install_dir: build/install/bin
|
|
|
|
- name: archive_dbtest
|
|
tags: []
|
|
depends_on:
|
|
- name: compile_dbtest
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: archive-dbtest archive-dbtest-debug
|
|
compiling_for_test: true
|
|
|
|
- name: compile_visibility_test
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: archive-visibility-test-meta
|
|
task_compile_flags: >-
|
|
--ssl
|
|
--dbg=on
|
|
--opt=on
|
|
--link-model=dynamic
|
|
--force-macos-dynamic-link
|
|
--visibility-support=on
|
|
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/visibility-test-meta.${ext|tgz}
|
|
remote_file: ${project}/${build_variant}/${revision}/visibility-test-meta-${build_id}-${task_name}-${execution}.${ext|tgz}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: Binaries
|
|
|
|
## embedded_sdk_build_and_test_* - build the embedded-dev and embedded-test targets only ##
|
|
|
|
- name: embedded_sdk_build_cdriver
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- *get_version_expansions
|
|
- *apply_version_expansions
|
|
- func: f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/embedded_sdk_build_cdriver.sh"
|
|
|
|
- name: embedded_sdk_install_dev
|
|
tags: []
|
|
depends_on:
|
|
- name: embedded_sdk_build_cdriver
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-embedded-dev
|
|
task_compile_flags: &embedded_sdk_compile_flags >-
|
|
--allocator=system
|
|
--dbg=off
|
|
--enable-free-mon=off
|
|
--enable-http-client=off
|
|
--js-engine=none
|
|
--opt=size
|
|
--ssl=off
|
|
--use-system-mongo-c=on
|
|
DESTDIR='$BUILD_ROOT/mongo-embedded-sdk-$MONGO_VERSION'
|
|
CPPPATH='$BUILD_ROOT/mongo-embedded-sdk-$MONGO_VERSION/include/libbson-1.0 $BUILD_ROOT/mongo-embedded-sdk-$MONGO_VERSION/include/libmongoc-1.0'
|
|
task_compile_flags_extra: >-
|
|
--link-model=dynamic-sdk
|
|
|
|
- name: embedded_sdk_s3_put
|
|
tags: []
|
|
depends_on:
|
|
- name: embedded_sdk_install_dev
|
|
commands:
|
|
- *get_version_expansions
|
|
- *apply_version_expansions
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/embedded_sdk_s3_tar.sh"
|
|
|
|
# Upload it so we can download from EVG.
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: "src/build/embedded-sdk.tgz"
|
|
remote_file: ${project}/embedded-sdk/${build_variant}/${revision}/mongo-embedded-sdk-${version}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/tar
|
|
display_name: "Embedded SDK Tar Archive"
|
|
|
|
- name: embedded_sdk_install_tests
|
|
tags: []
|
|
depends_on:
|
|
- name: embedded_sdk_install_dev
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-embedded-test
|
|
compiling_for_test: true
|
|
task_compile_flags: *embedded_sdk_compile_flags
|
|
task_compile_flags_extra: >-
|
|
--link-model=dynamic
|
|
--force-macos-dynamic-link
|
|
# Unlike static builds, dynamic builds have no need to
|
|
# constrain the number of link jobs. Unfortunately, --jlink=1
|
|
# means one link job, not 100%. So this is a bit gross but set
|
|
# it to .99.
|
|
num_scons_link_jobs_available: 0.99
|
|
|
|
- name: embedded_sdk_tests_s3_put
|
|
tags: []
|
|
depends_on:
|
|
- name: embedded_sdk_install_tests
|
|
commands:
|
|
- *get_version_expansions
|
|
- *apply_version_expansions
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/embedded_sdk_tests_s3_tar.sh"
|
|
|
|
# Upload it so we can download from EVG.
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: "src/build/embedded-sdk-tests.tgz"
|
|
remote_file: ${project}/embedded-sdk-test/${build_variant}/${revision}/mongo-embedded-sdk-test-${version}.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/tar
|
|
display_name: "Embedded SDK Tests Tar Archive"
|
|
|
|
- name: embedded_sdk_run_tests
|
|
tags: []
|
|
depends_on:
|
|
- name: embedded_sdk_install_tests
|
|
commands:
|
|
- *get_version_expansions
|
|
- *apply_version_expansions
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/embedded_sdk_run_tests.sh"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/embedded_sdk_run_tests_post.sh"
|
|
|
|
- name: embedded_sdk_s3_put_latest
|
|
tags: []
|
|
depends_on:
|
|
- name: embedded_sdk_run_tests
|
|
commands:
|
|
- *get_version_expansions
|
|
- *apply_version_expansions
|
|
# A second put, this time to -latest, to give devs a reasonable
|
|
# way to get the most recent build.
|
|
- command: s3.put
|
|
params:
|
|
visibility: none
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: "src/build/embedded-sdk.tgz"
|
|
remote_file: ${project}/embedded-sdk/mongo-${build_variant}-latest.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/x-gzip}
|
|
|
|
- name: embedded_sdk_tests_s3_put_latest
|
|
tags: []
|
|
depends_on:
|
|
- name: embedded_sdk_run_tests
|
|
commands:
|
|
- *get_version_expansions
|
|
- *apply_version_expansions
|
|
# A second put, this time to -latest, to give devs a reasonable
|
|
# way to get the most recent build.
|
|
- command: s3.put
|
|
params:
|
|
visibility: none
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: "src/build/embedded-sdk-tests.tgz"
|
|
remote_file: ${project}/embedded-sdk-test/mongo-${build_variant}-latest.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/x-gzip}
|
|
|
|
- name: stitch_support_create_lib
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-stitch-support install-stitch-support-debug install-stitch-support-dev
|
|
task_compile_flags: >-
|
|
--link-model=dynamic-sdk
|
|
--enable-free-mon=off
|
|
--ssl=off
|
|
--enable-http-client=off
|
|
--modules=
|
|
DESTDIR='$BUILD_ROOT/stitch-support-lib-$MONGO_VERSION'
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/stitch_support_create_lib_tar.sh"
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: "src/build/stitch-support.tgz"
|
|
remote_file: "${project}/stitch-support/${build_variant}/${revision}/stitch-support-${version}.tgz"
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/tar
|
|
display_name: "Stitch Support Library"
|
|
|
|
- name: stitch_support_install_tests
|
|
tags: []
|
|
depends_on:
|
|
- name: stitch_support_create_lib
|
|
commands:
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-stitch-support-test
|
|
compiling_for_test: true
|
|
task_compile_flags: >-
|
|
--enable-free-mon=off
|
|
--ssl=off
|
|
--enable-http-client=off
|
|
--modules=
|
|
DESTDIR='$BUILD_ROOT/stitch-support-lib-$MONGO_VERSION'
|
|
|
|
- name: stitch_support_run_tests
|
|
tags: []
|
|
depends_on:
|
|
- name: stitch_support_install_tests
|
|
commands:
|
|
- func: "get and apply version expansions"
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/stitch_support_run_tests.sh"
|
|
|
|
- name: crypt_create_lib
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: archive-mongo-crypt-dev
|
|
task_compile_flags: >-
|
|
--allocator=system
|
|
--enable-free-mon=off
|
|
--enterprise-features=fle,search
|
|
--js-engine=none
|
|
--link-model=dynamic-sdk
|
|
--enable-http-client=off
|
|
--ssl=off
|
|
${crypt_task_compile_flags}
|
|
DESTDIR='$BUILD_ROOT/crypt-lib-$MONGO_VERSION'
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/crypt_run_tests.sh"
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: "src/mongo-crypt-dev.${ext|tgz}"
|
|
remote_file: "${project}/mongo_crypt/${build_variant}/${revision}/mongo_crypt_shared_v1-${version}.${ext|tgz}"
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/tar}
|
|
display_name: "Mongo crypt Library"
|
|
|
|
- name: crypt_create_debug_lib
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: archive-mongo-crypt-dev archive-mongo-crypt-debug
|
|
task_compile_flags: >-
|
|
--dbg=on
|
|
--opt=off
|
|
--allocator=system
|
|
--enable-free-mon=off
|
|
--enterprise-features=fle,search
|
|
--js-engine=none
|
|
--link-model=dynamic-sdk
|
|
DESTDIR='$BUILD_ROOT/crypt-lib-$MONGO_VERSION'
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: "src/mongo-crypt-dev.${ext|tgz}"
|
|
remote_file: "${project}/mongo_crypt/${build_variant}/${revision}/mongo_crypt_shared_v1_dev-${version}.${ext|tgz}"
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/tar}
|
|
display_name: "Mongo Crypt Library dev"
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: "src/mongo-crypt-debug.${ext|tgz}"
|
|
remote_file: "${project}/mongo_crypt/${build_variant}/${revision}/mongo_crypt_shared_v1_debug-${version}.${ext|tgz}"
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/tar}
|
|
display_name: "Mongo Crypt Library debug"
|
|
|
|
- name: crypt_install_tests
|
|
tags: []
|
|
depends_on:
|
|
- name: crypt_create_debug_lib
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: archive-mongo-crypt-shlib-test
|
|
compiling_for_test: true
|
|
task_compile_flags: >-
|
|
--allocator=system
|
|
--enable-free-mon=off
|
|
--enterprise-features=fle,search
|
|
--js-engine=none
|
|
--link-model=static
|
|
DESTDIR='$BUILD_ROOT/crypt-lib-$MONGO_VERSION'
|
|
RPATH='$$RPATH_ESCAPED_DOLLAR_ORIGIN/../lib'
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: "src/mongo-crypt-shlib-test-runtime.${ext|tgz}"
|
|
remote_file: "${project}/mongo_crypt/${build_variant}/${revision}/mongo_crypt_shlib_test-${version}.${ext|tgz}"
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/tar}
|
|
display_name: "Mongo Crypt Shared Library Test"
|
|
|
|
- name: crypt_run_tests
|
|
tags: []
|
|
depends_on:
|
|
- name: crypt_install_tests
|
|
commands:
|
|
- func: "get and apply version expansions"
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/crypt_run_tests.sh"
|
|
|
|
## lint ##
|
|
- name: lint_pylinters
|
|
tags: ["lint"]
|
|
commands:
|
|
- command: timeout.update
|
|
params:
|
|
# 40 minutes
|
|
exec_timeout_secs: 2400
|
|
- *f_expansions_write
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "scons lint"
|
|
vars:
|
|
targets: lint-pylinters
|
|
|
|
- name: lint_sconslinters
|
|
tags: ["lint"]
|
|
commands:
|
|
- command: timeout.update
|
|
params:
|
|
# 40 minutes
|
|
exec_timeout_secs: 2400
|
|
- *f_expansions_write
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "scons lint"
|
|
vars:
|
|
targets: lint-sconslinters
|
|
|
|
- name: lint_clang_format
|
|
tags: ["lint"]
|
|
commands:
|
|
- command: timeout.update
|
|
params:
|
|
# 40 minutes
|
|
exec_timeout_secs: 2400
|
|
- *f_expansions_write
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "scons lint"
|
|
vars:
|
|
targets: lint-clang-format
|
|
|
|
- name: lint_eslint
|
|
tags: ["lint"]
|
|
commands:
|
|
- command: timeout.update
|
|
params:
|
|
# 40 minutes
|
|
exec_timeout_secs: 2400
|
|
- *f_expansions_write
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "scons lint"
|
|
vars:
|
|
targets: lint-eslint
|
|
|
|
- name: lint_cpplint
|
|
tags: ["lint"]
|
|
commands:
|
|
- command: timeout.update
|
|
params:
|
|
# 40 minutes
|
|
exec_timeout_secs: 2400
|
|
- *f_expansions_write
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "scons lint"
|
|
vars:
|
|
targets: lint-lint.py
|
|
|
|
- name: lint_yaml
|
|
tags: ["lint"]
|
|
depends_on: []
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "f_expansions_write"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/lint_yaml.sh"
|
|
|
|
- name: lint_shellscripts
|
|
tags: ["lint"]
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/lint_shellscripts.sh"
|
|
|
|
- name: lint_errorcodes
|
|
tags: ["lint"]
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "scons lint"
|
|
vars:
|
|
targets: lint-errorcodes
|
|
|
|
- name: test_api_version_compatibility
|
|
tags: []
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "do setup"
|
|
- func: "f_expansions_write"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/check_idl_compat.sh"
|
|
|
|
- <<: *gen_burn_in_task_template
|
|
name: burn_in_tests_gen
|
|
tags: []
|
|
patch_only: true
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_burn_in_task_template
|
|
name: burn_in_tags_gen
|
|
tags: []
|
|
patch_only: true
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_burn_in_task_template
|
|
name: burn_in_tasks_gen
|
|
tags: []
|
|
patch_only: true
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *benchmark_template
|
|
name: benchmarks_orphaned
|
|
tags: ["benchmarks"]
|
|
commands:
|
|
- func: "do benchmark setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: benchmarks
|
|
exec_timeout_secs: 18000 # 5 hour timeout.
|
|
resmoke_jobs_max: 1
|
|
- func: "send benchmark results"
|
|
# - func: "analyze benchmark results"
|
|
vars:
|
|
suite: benchmarks
|
|
|
|
- <<: *benchmark_template
|
|
name: benchmarks_sharding
|
|
tags: ["benchmarks"]
|
|
commands:
|
|
- func: "do benchmark setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: benchmarks_sharding
|
|
resmoke_jobs_max: 1
|
|
- func: "send benchmark results"
|
|
# - func: "analyze benchmark results"
|
|
|
|
# Disabled under SERVER-64949.
|
|
# - <<: *benchmark_template
|
|
# name: benchmarks_cst
|
|
# tags: ["benchmarks"]
|
|
# commands:
|
|
# - func: "do benchmark setup"
|
|
# - func: "run tests"
|
|
# vars:
|
|
# suite: benchmarks_cst
|
|
# resmoke_jobs_max: 1
|
|
# - func: "send benchmark results"
|
|
# - func: "analyze benchmark results"
|
|
|
|
- <<: *benchmark_template
|
|
name: benchmarks_expression
|
|
tags: ["benchmarks"]
|
|
commands:
|
|
- func: "do benchmark setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: benchmarks_expression
|
|
exec_timeout_secs: 18000 # 5 hour timeout.
|
|
resmoke_jobs_max: 1
|
|
- func: "send benchmark results"
|
|
|
|
- <<: *benchmark_template
|
|
name: benchmarks_expression_sbe
|
|
tags: ["benchmarks"]
|
|
commands:
|
|
- func: "do benchmark setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: benchmarks_expression_sbe
|
|
exec_timeout_secs: 18000 # 5 hour timeout.
|
|
resmoke_jobs_max: 1
|
|
- func: "send benchmark results"
|
|
|
|
- <<: *benchmark_template
|
|
name: benchmarks_abt
|
|
tags: ["benchmarks"]
|
|
commands:
|
|
- func: "do benchmark setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suites: benchmarks_abt
|
|
exec_timeout_secs: 18000 # 5 hour timeout.
|
|
resmoke_jobs_max: 1
|
|
- func: "send benchmark results"
|
|
|
|
- <<: *benchmark_template
|
|
name: benchmarks_abt_lowering
|
|
tags: ["benchmarks"]
|
|
commands:
|
|
- func: "do benchmark setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suites: benchmarks_abt_lowering
|
|
exec_timeout_secs: 18000 # 5 hour timeout.
|
|
resmoke_jobs_max: 1
|
|
- func: "send benchmark results"
|
|
|
|
- <<: *benchmark_template
|
|
name: benchmarks_abt_path_lowering
|
|
tags: ["benchmarks"]
|
|
commands:
|
|
- func: "do benchmark setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suites: benchmarks_abt_path_lowering
|
|
exec_timeout_secs: 18000 # 5 hour timeout.
|
|
resmoke_jobs_max: 1
|
|
- func: "send benchmark results"
|
|
|
|
- <<: *benchmark_template
|
|
name: benchmarks_streams
|
|
tags: ["benchmarks"]
|
|
commands:
|
|
- func: "do benchmark setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suites: benchmarks_streams
|
|
exec_timeout_secs: 18000 # 5 hour timeout.
|
|
resmoke_jobs_max: 1
|
|
- func: "send benchmark results"
|
|
|
|
- <<: *run_jepsen_template
|
|
name: jepsen_register_findAndModify
|
|
tags: ["jepsen"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "do jepsen setup"
|
|
- func: "run jepsen test"
|
|
vars:
|
|
<<: *jepsen_config_vars
|
|
jepsen_read_with_find_and_modify: --read-with-find-and-modify
|
|
jepsen_storage_engine: --storage-engine wiredTiger
|
|
jepsen_test_name: register
|
|
|
|
- <<: *run_jepsen_template
|
|
name: jepsen_register_linearizableRead
|
|
tags: ["jepsen"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "do jepsen setup"
|
|
- func: "run jepsen test"
|
|
vars:
|
|
<<: *jepsen_config_vars
|
|
jepsen_read_concern: --read-concern linearizable
|
|
jepsen_storage_engine: --storage-engine wiredTiger
|
|
jepsen_test_name: register
|
|
|
|
- <<: *run_jepsen_template
|
|
name: jepsen_set_linearizableRead
|
|
tags: ["jepsen"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "do jepsen setup"
|
|
- func: "run jepsen test"
|
|
vars:
|
|
<<: *jepsen_config_vars
|
|
jepsen_read_concern: --read-concern linearizable
|
|
jepsen_storage_engine: --storage-engine wiredTiger
|
|
jepsen_test_name: set
|
|
|
|
- <<: *run_jepsen_template
|
|
name: jepsen_read-concern-majority
|
|
tags: ["jepsen"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "do jepsen setup"
|
|
- func: "run jepsen test"
|
|
vars:
|
|
<<: *jepsen_config_vars
|
|
jepsen_storage_engine: --storage-engine wiredTiger
|
|
jepsen_test_name: read-concern-majority
|
|
|
|
# Smoke test to ensure the Server still works with Jepsen
|
|
- <<: *run_jepsen_template
|
|
name: jepsen-smoke
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "do jepsen setup"
|
|
- func: "run jepsen test"
|
|
vars:
|
|
<<: *jepsen_config_vars
|
|
jepsen_storage_engine: --storage-engine wiredTiger
|
|
jepsen_test_name: read-concern-majority
|
|
jepsen_time_limit: --time-limit 120
|
|
|
|
- <<: *run_jepsen_template
|
|
name: jepsen_read-concern-majority_w1
|
|
tags: ["jepsen"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "do jepsen setup"
|
|
- func: "run jepsen test"
|
|
vars:
|
|
<<: *jepsen_config_vars
|
|
jepsen_storage_engine: --storage-engine wiredTiger
|
|
jepsen_test_name: read-concern-majority
|
|
jepsen_write_concern: --write-concern w1
|
|
|
|
- <<: *run_jepsen_template
|
|
name: jepsen_list-append
|
|
tags: ["jepsen_docker"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "do jepsen docker setup"
|
|
- func: "run jepsen docker test"
|
|
|
|
## initial sync multiversion fuzzer ##
|
|
- <<: *jstestfuzz_template
|
|
name: initial_sync_multiversion_fuzzer_gen
|
|
tags: ["multiversion_fuzzer", "require_npm", "random_name", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 10
|
|
num_tasks: 5
|
|
npm_command: initsync-fuzzer
|
|
suite: initial_sync_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
## initial sync generational fuzzer ##
|
|
- <<: *jstestfuzz_template
|
|
name: initial_sync_fuzzer_gen
|
|
tags: ["require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 10
|
|
num_tasks: 5
|
|
npm_command: initsync-fuzzer
|
|
suite: initial_sync_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## Standalone generational fuzzer for multiversion aggregation pipelines ##
|
|
- <<: *jstestfuzz_template
|
|
name: aggregation_multiversion_fuzzer_gen
|
|
tags: ["aggfuzzer", "common", "multiversion", "require_npm", "random_name", "future_git_tag_incompatible"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
npm_command: agg-fuzzer
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
## Standalone generational fuzzer for multiversion aggregation expressions ##
|
|
- <<: *jstestfuzz_template
|
|
name: aggregation_expression_multiversion_fuzzer_gen
|
|
tags: ["aggfuzzer", "multiversion", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
npm_command: agg-expr-fuzzer
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
## Standalone generational fuzzer for checking optimized and unoptimized expression equivalence
|
|
- <<: *jstestfuzz_template
|
|
name: aggregation_expression_optimization_fuzzer_gen
|
|
tags: ["aggfuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --diffTestingMode optimization
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
npm_command: agg-expr-fuzzer
|
|
|
|
## Standalone generational fuzzer for checking optimized and unoptimized aggregation pipelines
|
|
- <<: *jstestfuzz_template
|
|
name: aggregation_optimization_fuzzer_gen
|
|
tags: ["aggfuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --diffTestingMode optimization
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
npm_command: agg-fuzzer
|
|
|
|
## Standalone fuzzer for checking wildcard index correctness ##
|
|
- <<: *jstestfuzz_template
|
|
name: aggregation_wildcard_fuzzer_gen
|
|
tags: ["aggfuzzer", "common", "wildcard", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --diffTestingMode wildcard
|
|
npm_command: agg-fuzzer
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## Standalone fuzzer for checking columnstore index correctness ##
|
|
- <<: *jstestfuzz_template
|
|
name: aggregation_columnstore_fuzzer_gen
|
|
tags: ["aggfuzzer", "common", "columnstore", "require_npm", "random_name", "sbe_only"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --diffTestingMode columnstore
|
|
npm_command: agg-fuzzer
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## Standalone fuzzer for checking timeseries optimizations correctness ##
|
|
- <<: *jstestfuzz_template
|
|
name: aggregation_timeseries_fuzzer_gen
|
|
tags: ["aggfuzzer", "common", "timeseries", "require_npm", "random_name", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --diffTestingMode timeseries
|
|
npm_command: agg-fuzzer
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## Standalone generational fuzzer for checking optimized and unoptimized change stream pipelines ##
|
|
- <<: *jstestfuzz_template
|
|
name: change_stream_optimization_fuzzer_gen
|
|
tags: ["change_stream_fuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --diffTestingMode optimization
|
|
npm_command: change-stream-fuzzer
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz standalone fuzzer for checking find and aggregate equivalence ##
|
|
- <<: *jstestfuzz_template
|
|
name: query_fuzzer_standalone_gen
|
|
tags: ["query_fuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --diffTestingMode standalone
|
|
npm_command: query-fuzzer
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz standalone fuzzer for checking find equivalence with and without plan cache ##
|
|
- <<: *jstestfuzz_template
|
|
name: query_fuzzer_plan_cache_gen
|
|
tags: ["query_fuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --diffTestingMode plan_cache
|
|
npm_command: query-fuzzer
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz sharded fuzzer for checking find and aggregate equivalence ##
|
|
- <<: *jstestfuzz_template
|
|
name: query_fuzzer_sharded_gen
|
|
tags: ["query_fuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --diffTestingMode sharded
|
|
npm_command: query-fuzzer
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz standalone update generational fuzzer ##
|
|
- <<: *jstestfuzz_template
|
|
name: update_fuzzer_gen
|
|
tags: ["updatefuzzer", "require_npm", "random_name", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
npm_command: update-fuzzer
|
|
suite: update_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
## jstestfuzz standalone update time-series generational fuzzer ##
|
|
- <<: *jstestfuzz_template
|
|
name: update_timeseries_fuzzer_gen
|
|
tags: ["updatefuzzer", "require_npm", "random_name", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --diffTestingMode timeseries
|
|
npm_command: update-fuzzer
|
|
suite: generational_fuzzer
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz replication update generational fuzzer ##
|
|
- <<: *jstestfuzz_template
|
|
name: update_fuzzer_replication_gen
|
|
tags: ["updatefuzzer", "require_npm", "random_name", "multiversion", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
npm_command: update-fuzzer
|
|
suite: update_fuzzer_replication
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
## rollback multiversion fuzzer ##
|
|
- <<: *jstestfuzz_template
|
|
name: rollback_multiversion_fuzzer_gen
|
|
tags: ["multiversion_fuzzer", "require_npm", "random_name", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 3
|
|
num_tasks: 5
|
|
npm_command: rollback-fuzzer
|
|
suite: rollback_fuzzer
|
|
# Rollback suites create indexes with majority of nodes not available for replication. So, disabling
|
|
# index build commit quorum.
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}, enableIndexBuildCommitQuorum: false}'"
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
## rollback generational fuzzer ##
|
|
- <<: *jstestfuzz_template
|
|
name: rollback_fuzzer_gen
|
|
tags: ["rollbackfuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 3
|
|
num_tasks: 5
|
|
npm_command: rollback-fuzzer
|
|
suite: rollback_fuzzer
|
|
# Rollback suites create indexes with majority of nodes not available for replication. So, disabling
|
|
# index build commit quorum.
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}, enableIndexBuildCommitQuorum: false}'"
|
|
|
|
## rollback generational fuzzer with clean shutdowns ##
|
|
- <<: *jstestfuzz_template
|
|
name: rollback_fuzzer_clean_shutdowns_gen
|
|
tags: ["rollbackfuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 1
|
|
num_tasks: 4
|
|
jstestfuzz_vars: --numLinesPerFile 300 --maxLinesBetweenEvents 50
|
|
npm_command: rollback-fuzzer
|
|
suite: rollback_fuzzer_clean_shutdowns
|
|
# Rollback suites create indexes with majority of nodes not available for replication. So, disabling
|
|
# index build commit quorum.
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}, enableIndexBuildCommitQuorum: false}'"
|
|
|
|
## rollback generational fuzzer with unclean shutdowns ##
|
|
- <<: *jstestfuzz_template
|
|
name: rollback_fuzzer_unclean_shutdowns_gen
|
|
tags: ["rollbackfuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 1
|
|
num_tasks: 4
|
|
jstestfuzz_vars: --numLinesPerFile 300 --maxLinesBetweenEvents 50
|
|
npm_command: rollback-fuzzer
|
|
suite: rollback_fuzzer_unclean_shutdowns
|
|
# Rollback suites create indexes with majority of nodes not available for replication. So, disabling
|
|
# index build commit quorum.
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}, enableIndexBuildCommitQuorum: false}'"
|
|
|
|
## jstestfuzz ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_gen
|
|
tags: ["jstestfuzz", "common", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
npm_command: jstestfuzz
|
|
|
|
## jstestfuzz concurrent ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_concurrent_gen
|
|
tags: ["jstestfuzz", "common", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: ${jstestfuzz_concurrent_num_files|10}
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz
|
|
resmoke_args: --numClientsPerFixture=10
|
|
|
|
## jstestfuzz concurrent replica set ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_concurrent_replication_gen
|
|
tags: ["jstestfuzz", "common", "repl", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: ${jstestfuzz_concurrent_num_files|10}
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_replication
|
|
resmoke_args: --numClientsPerFixture=10
|
|
|
|
## jstestfuzz concurrent replica set with logical session ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_concurrent_replication_session_gen
|
|
tags: ["jstestfuzz", "session", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: ${jstestfuzz_concurrent_num_files|10}
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_replication_session
|
|
resmoke_args: --numClientsPerFixture=10
|
|
|
|
## jstestfuzz concurrent sharded cluster ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_concurrent_sharded_gen
|
|
tags: ["jstestfuzz", "common", "sharding", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: ${jstestfuzz_concurrent_num_files|10}
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_sharded
|
|
resmoke_args: --numClientsPerFixture=10
|
|
|
|
## jstestfuzz concurrent sharded cluster causal consistency ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_concurrent_sharded_causal_consistency_gen
|
|
tags: ["jstestfuzz", "causal", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: ${jstestfuzz_concurrent_num_files|10}
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_sharded_causal_consistency
|
|
resmoke_args: --numClientsPerFixture=10
|
|
|
|
## jstestfuzz concurrent sharded cluster continuous stepdown ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_concurrent_sharded_continuous_stepdown_gen
|
|
tags: ["jstestfuzz", "stepdowns", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: ${jstestfuzz_concurrent_num_files|10}
|
|
num_tasks: 2
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_sharded_continuous_stepdown
|
|
resmoke_args: --numClientsPerFixture=10
|
|
|
|
## jstestfuzz concurrent sharded cluster with logical session ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_concurrent_sharded_session_gen
|
|
tags: ["jstestfuzz", "session", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: ${jstestfuzz_concurrent_num_files|10}
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_sharded_session
|
|
resmoke_args: --numClientsPerFixture=10
|
|
|
|
# jstestfuzz interrupt #
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_interrupt_gen
|
|
tags: ["jstestfuzz", "interrupt", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_interrupt
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
# jstestfuzz interrupt #
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_interrupt_replication_gen
|
|
tags: ["jstestfuzz", "interrupt", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_interrupt_replication
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
# jstestfuzz write conflict #
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_replication_write_conflicts_gen
|
|
tags: ["jstestfuzz", "write_conflict", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_replication_write_conflicts
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
# jstestfuzz concurrent conflict #
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_concurrent_replication_write_conflicts_gen
|
|
tags: ["jstestfuzz", "write_conflict", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_replication_write_conflicts
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}' --numClientsPerFixture=10"
|
|
|
|
# jstestfuzz interrupt with flow control engaged #
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_interrupt_replication_flow_control_gen
|
|
tags: ["jstestfuzz", "interrupt", "flow_control", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 2
|
|
num_tasks: 1
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_interrupt_replication
|
|
resmoke_args: "--flowControlTicketOverride=1 --mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz sharded cluster continuous stepdown with flow control engaged ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_sharded_continuous_stepdown_flow_control_gen
|
|
tags: ["jstestfuzz", "flow_control", "stepdowns", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 2
|
|
num_tasks: 1
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_sharded_continuous_stepdown
|
|
resmoke_args: >-
|
|
--flowControlTicketOverride=3
|
|
--mongodSetParameters="{logComponentVerbosity: {command: 2}}"
|
|
|
|
## jstestfuzz concurrent sharded cluster continuous stepdown with flow control engaged ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_concurrent_sharded_continuous_stepdown_flow_control_gen
|
|
tags: ["jstestfuzz", "flow_control", "stepdowns", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 2
|
|
num_tasks: 1
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_sharded_continuous_stepdown
|
|
resmoke_args: >-
|
|
--flowControlTicketOverride=30
|
|
--numClientsPerFixture=10
|
|
|
|
# jstestfuzz replication continuous stepdown with flow control engaged #
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_replication_continuous_stepdown_flow_control_gen
|
|
tags: ["jstestfuzz", "repl", "flow_control", "stepdowns", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 2
|
|
num_tasks: 1
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_replication_continuous_stepdown
|
|
resmoke_args: >-
|
|
--flowControlTicketOverride=1
|
|
--mongodSetParameters="{logComponentVerbosity: {command: 2}}"
|
|
|
|
## jstestfuzz concurrent replication continuous stepdown with flow control engaged ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_concurrent_replication_continuous_stepdown_flow_control_gen
|
|
tags: ["jstestfuzz", "repl", "flow_control", "stepdowns", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 2
|
|
num_tasks: 1
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_replication_continuous_stepdown
|
|
resmoke_args: >-
|
|
--flowControlTicketOverride=10
|
|
--numClientsPerFixture=10
|
|
|
|
## jstestfuzz replica set ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_replication_gen
|
|
tags: ["jstestfuzz", "common", "repl", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_replication
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz replica set multiversion ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_replication_multiversion_gen
|
|
tags: ["multiversion_fuzzer", "require_npm", "random_name", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
suite: jstestfuzz_replication
|
|
npm_command: jstestfuzz
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
## jstestfuzz initial sync replica set ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_replication_initsync_gen
|
|
tags: ["jstestfuzz", "initsync", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 8
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_replication_initsync
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz file copy based initial sync replica set ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_replication_fcbis_gen
|
|
tags: ["jstestfuzz", "initsync", "fcbis", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 8
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_replication_fcbis
|
|
resmoke_args: --storageEngine=wiredTiger
|
|
name: jstestfuzz_replication_fcbis
|
|
|
|
## jstestfuzz replica set with logical session ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_replication_session_gen
|
|
tags: ["jstestfuzz", "session", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_replication_session
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz sharded cluster ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_sharded_gen
|
|
tags: ["jstestfuzz", "common", "sharding", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_sharded
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz sharded multiversion cluster ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_sharded_multiversion_gen
|
|
tags: ["multiversion_fuzzer", "require_npm", "random_name", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
suite: jstestfuzz_sharded
|
|
npm_command: jstestfuzz
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
## jstestfuzz sharded cluster causal consistency ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_sharded_causal_consistency_gen
|
|
tags: ["jstestfuzz", "causal", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_sharded_causal_consistency
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz sharded cluster continuous stepdown ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_sharded_continuous_stepdown_gen
|
|
tags: ["jstestfuzz", "stepdowns", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 5
|
|
num_tasks: 5
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_sharded_continuous_stepdown
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## jstestfuzz sharded cluster with logical session ##
|
|
- <<: *jstestfuzz_template
|
|
name: jstestfuzz_sharded_session_gen
|
|
tags: ["jstestfuzz", "session", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
jstestfuzz_vars: --jsTestsDir ../jstests
|
|
suite: jstestfuzz_sharded_session
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {command: 2}}'"
|
|
|
|
## resharding generational fuzzer ##
|
|
- <<: *jstestfuzz_template
|
|
name: resharding_fuzzer_inplace_gen
|
|
tags: ["resharding_fuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 10
|
|
num_tasks: 5
|
|
npm_command: resharding-fuzzer
|
|
jstestfuzz_vars: --numDonors 2 --numRecipients 2 --inPlace yes
|
|
suite: resharding_fuzzer
|
|
|
|
- <<: *jstestfuzz_template
|
|
name: resharding_fuzzer_split_gen
|
|
tags: ["resharding_fuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 10
|
|
num_tasks: 5
|
|
npm_command: resharding-fuzzer
|
|
jstestfuzz_vars: --numDonors 1 --numRecipients 2 --inPlace no
|
|
suite: resharding_fuzzer
|
|
|
|
- <<: *jstestfuzz_template
|
|
name: resharding_fuzzer_merge_gen
|
|
tags: ["resharding_fuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 10
|
|
num_tasks: 5
|
|
npm_command: resharding-fuzzer
|
|
jstestfuzz_vars: --numDonors 2 --numRecipients 1 --inPlace no
|
|
suite: resharding_fuzzer
|
|
|
|
- <<: *jstestfuzz_template
|
|
name: resharding_fuzzer_shuffle_gen
|
|
tags: ["resharding_fuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 10
|
|
num_tasks: 5
|
|
npm_command: resharding-fuzzer
|
|
jstestfuzz_vars: --numDonors 3 --numRecipients 3 --inPlace no
|
|
suite: resharding_fuzzer
|
|
|
|
- <<: *jstestfuzz_template
|
|
name: resharding_fuzzer_idempotency_gen
|
|
tags: ["resharding_fuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 10
|
|
num_tasks: 5
|
|
npm_command: resharding-fuzzer
|
|
jstestfuzz_vars: --numDonors 3 --numRecipients 3 --inPlace no
|
|
suite: resharding_fuzzer_idempotency
|
|
|
|
- <<: *jstestfuzz_template
|
|
name: resharding_fuzzer_stepup_gen
|
|
tags: ["resharding_fuzzer", "require_npm", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
<<: *jstestfuzz_config_vars
|
|
num_files: 10
|
|
num_tasks: 5
|
|
npm_command: resharding-fuzzer
|
|
jstestfuzz_vars: >-
|
|
--numDonors 3 --numRecipients 3 --inPlace yes
|
|
--electionMech stepup --electionRole donor --electionRole recipient
|
|
suite: resharding_fuzzer
|
|
|
|
## Tests that the multiversion test generation logic is not broken.
|
|
- <<: *gen_task_template
|
|
name: multiversion_sanity_check_gen
|
|
tags: ["multiversion", "multiversion_sanity_check"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_jscore_multiversion_gen
|
|
tags: ["multiversion", "multiversion_passthrough"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: replica_sets_jscore_passthrough
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
|
|
# Check that the mutational fuzzer can parse JS files modified in a patch build.
|
|
- name: lint_fuzzer_sanity_patch
|
|
tags: []
|
|
patch_only: true
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *set_up_venv
|
|
- func: "get added and modified patch files"
|
|
- func: "setup jstestfuzz"
|
|
- func: "lint fuzzer sanity patch"
|
|
|
|
# Check that the mutational fuzzer can parse all JS filess.
|
|
- name: lint_fuzzer_sanity_all
|
|
tags: []
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *set_up_venv
|
|
- func: "setup jstestfuzz"
|
|
- func: "lint fuzzer sanity all"
|
|
|
|
## integration test suites ##
|
|
|
|
- <<: *task_template
|
|
name: aggregation
|
|
tags: ["aggregation", "common"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: aggregation_repeat_queries
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: aggregation_disabled_optimization
|
|
tags: ["aggregation", "common"]
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: aggregation_ese
|
|
tags: ["aggregation", "encrypt"]
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: aggregation_ese_gcm
|
|
tags: ["aggregation", "encrypt", "gcm"]
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: aggregation_auth
|
|
tags: ["aggregation", "auth", "common"]
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: aggregation_facet_unwind_passthrough
|
|
tags: ["aggregation", "unwind"]
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: aggregation_mongos_passthrough
|
|
tags: ["aggregation", "no_async"]
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: aggregation_one_shard_sharded_collections
|
|
tags: ["aggregation", "no_async", "sharded"]
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: aggregation_read_concern_majority_passthrough
|
|
tags: ["aggregation", "read_write_concern", "no_debug_mode"]
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_factor: 0.5
|
|
|
|
- <<: *gen_task_template
|
|
name: aggregation_secondary_reads_gen
|
|
tags: ["aggregation", "secondary_reads"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: aggregation_sharded_collections_passthrough
|
|
tags: ["aggregation", "common", "sharded"]
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: aggregation_sharded_collections_causally_consistent_passthrough
|
|
tags: ["aggregation", "secondary_reads", "sharded"]
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: aggregation_column_store_index_passthrough
|
|
tags: ["aggregation", "sbe_only"]
|
|
depends_on:
|
|
- name: aggregation
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: audit
|
|
tags: ["audit", "patch_build"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: auth_gen
|
|
tags: ["auth"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- name: version_gen
|
|
commands:
|
|
- command: manifest.load
|
|
- *git_get_project
|
|
- *f_expansions_write
|
|
- *add_git_tag
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "generate version"
|
|
|
|
- name: version_burn_in_gen
|
|
commands:
|
|
- command: manifest.load
|
|
- *git_get_project
|
|
- *f_expansions_write
|
|
- *add_git_tag
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "generate version burn in"
|
|
|
|
- name: version_expansions_gen
|
|
commands:
|
|
- command: manifest.load
|
|
- *git_get_project
|
|
- *f_expansions_write
|
|
- *add_git_tag
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "generate and upload version expansions"
|
|
- func: "generate and upload resmoke constants"
|
|
|
|
- <<: *gen_task_template
|
|
name: auth_audit_gen
|
|
tags: ["auth", "audit", "patch_build"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *task_template
|
|
name: change_streams
|
|
tags: ["change_streams"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_v1_resume_token_passthrough
|
|
tags: ["change_streams"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: change_streams_multiversion_gen
|
|
tags: ["multiversion", "multiversion_passthrough"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: change_streams
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: change_streams_downgrade_gen
|
|
tags: ["multiversion_passthrough", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_mongos_sessions_passthrough
|
|
tags: ["change_streams"]
|
|
depends_on:
|
|
- name: change_streams
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_secondary_reads_sharded_collections
|
|
tags: ["change_streams", "secondary_reads"]
|
|
depends_on:
|
|
- name: change_streams
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_v1_resume_token_sharded_collections_passthrough
|
|
tags: ["change_streams"]
|
|
depends_on:
|
|
- name: change_streams
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: change_streams_sharded_collections_multiversion_gen
|
|
tags: ["multiversion_passthrough", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: change_streams_sharded_collections_passthrough
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: multiversion_future_git_tag_gen
|
|
tags: ["multiversion", "no_version_combination", "multiversion_future_git_tag"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: multiversion_future_git_tag
|
|
|
|
- <<: *gen_task_template
|
|
name: multiversion_auth_future_git_tag_gen
|
|
tags: ["auth", "multiversion", "no_version_combination", "multiversion_future_git_tag"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: multiversion_auth_future_git_tag
|
|
|
|
- <<: *task_template
|
|
name: change_streams_whole_db_passthrough
|
|
tags: ["change_streams"]
|
|
depends_on:
|
|
- name: change_streams
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_whole_db_secondary_reads_sharded_collections
|
|
tags: ["change_streams", "secondary_reads"]
|
|
depends_on:
|
|
- name: change_streams_secondary_reads_sharded_collections
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_whole_cluster_passthrough
|
|
tags: ["change_streams"]
|
|
depends_on:
|
|
- name: change_streams
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_whole_cluster_secondary_reads_sharded_collections
|
|
tags: ["change_streams", "secondary_reads"]
|
|
depends_on:
|
|
- name: change_streams_secondary_reads_sharded_collections
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_multi_stmt_txn_passthrough
|
|
tags: ["change_streams"]
|
|
depends_on:
|
|
- name: change_streams
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_multi_stmt_txn_mongos_passthrough
|
|
tags: ["change_streams"]
|
|
depends_on:
|
|
- name: change_streams
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_multi_stmt_txn_sharded_collections_passthrough
|
|
tags: ["change_streams"]
|
|
depends_on:
|
|
- name: change_streams
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_per_shard_cursor_passthrough
|
|
tags: ["change_streams"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_multitenant_passthrough
|
|
tags: ["change_streams"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: change_streams_multitenant_sharded_collections_passthrough
|
|
tags: ["change_streams"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: disk_wiredtiger
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: ese
|
|
tags: ["encrypt", "patch_build"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: failpoints
|
|
tags: ["misc_js"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: failpoints_auth
|
|
tags: ["auth"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: integration_tests_standalone
|
|
tags: ["integration", "standalone"]
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "do setup"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions" # Generate compile expansions needs to be run to mount the shared scons cache.
|
|
- func: "apply compile expansions"
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-integration-tests
|
|
compiling_for_test: true
|
|
- func: "attach scons logs"
|
|
- func: "send scons cedar report"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: integration_tests_standalone_audit
|
|
tags: ["integration", "audit"]
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "do setup"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions" # Generate compile expansions needs to be run to mount the shared scons cache.
|
|
- func: "apply compile expansions"
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-integration-tests
|
|
compiling_for_test: true
|
|
- func: "attach scons logs"
|
|
- func: "send scons cedar report"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: integration_tests_replset
|
|
tags: ["integration"]
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "do setup"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions" # Generate compile expansions needs to be run to mount the shared scons cache.
|
|
- func: "apply compile expansions"
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-integration-tests
|
|
compiling_for_test: true
|
|
- func: "attach scons logs"
|
|
- func: "send scons cedar report"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: integration_tests_replset_ssl_auth
|
|
tags: ["integration"]
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "do setup"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions" # Generate compile expansions needs to be run to mount the shared scons cache.
|
|
- func: "apply compile expansions"
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-integration-tests
|
|
compiling_for_test: true
|
|
- func: "attach scons logs"
|
|
- func: "send scons cedar report"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: integration_tests_sharded
|
|
tags: ["integration", "sharded"]
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- func: "do setup"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions" # Generate compile expansions needs to be run to mount the shared scons cache.
|
|
- func: "apply compile expansions"
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: install-integration-tests
|
|
compiling_for_test: true
|
|
- func: "attach scons logs"
|
|
- func: "send scons cedar report"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: external_auth
|
|
tags: []
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "do setup"
|
|
- func: "f_expansions_write"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/external_auth_pip.sh"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: ${external_auth_jobs_max|4}
|
|
resmoke_args: --excludeWithAnyTags=requires_domain_controller
|
|
|
|
- <<: *task_template
|
|
name: external_auth_aws
|
|
tags: []
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "do setup"
|
|
- func: "f_expansions_write"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
silent: true
|
|
args:
|
|
- "src/evergreen/external_auth_aws_setup.sh"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/external_auth_aws_pip.sh"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: external_auth_oidc
|
|
tags: []
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "do setup"
|
|
- func: "f_expansions_write"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/external_auth_pip.sh"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/external_auth_oidc_setup.sh"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: external_auth_windows
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: external_auth
|
|
resmoke_args: --includeWithAnyTags=requires_domain_controller
|
|
|
|
- <<: *task_template
|
|
name: jsCore
|
|
tags: ["jscore", "common"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: core
|
|
|
|
- <<: *task_template
|
|
name: config_fuzzer_jsCore
|
|
tags: ["config_fuzzer"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: core
|
|
resmoke_args: >-
|
|
--fuzzMongodConfigs=normal
|
|
--excludeWithAnyTags=does_not_support_config_fuzzer
|
|
|
|
- <<: *task_template
|
|
name: config_fuzzer_concurrency
|
|
tags: ["config_fuzzer"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: concurrency
|
|
resmoke_args: >-
|
|
--fuzzMongodConfigs=normal
|
|
--excludeWithAnyTags=does_not_support_config_fuzzer
|
|
|
|
- <<: *task_template
|
|
name: config_fuzzer_simulate_crash_concurrency_replication_gen
|
|
tags: ["config_fuzzer", "large"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: simulate_crash_concurrency_replication
|
|
resmoke_args: >-
|
|
--fuzzMongodConfigs=normal
|
|
--excludeWithAnyTags=does_not_support_config_fuzzer
|
|
use_large_distro: "true"
|
|
|
|
- <<: *task_template
|
|
name: config_fuzzer_concurrency_replication_gen
|
|
tags: ["config_fuzzer", "large"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: concurrency_replication
|
|
resmoke_args: >-
|
|
--fuzzMongodConfigs=normal
|
|
--excludeWithAnyTags=does_not_support_config_fuzzer
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: config_fuzzer_concurrency_sharded_replication_gen
|
|
tags: ["config_fuzzer", "large"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: concurrency_sharded_replication
|
|
resmoke_args: >-
|
|
--fuzzMongodConfigs=normal
|
|
--excludeWithAnyTags=does_not_support_config_fuzzer
|
|
use_large_distro: "true"
|
|
|
|
- <<: *task_template
|
|
name: config_fuzzer_stress_concurrency_replication_gen
|
|
tags: ["config_fuzzer_stress"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: concurrency_replication
|
|
resmoke_args: >-
|
|
--fuzzMongodConfigs=stress
|
|
--excludeWithAnyTags=does_not_support_config_fuzzer
|
|
use_large_distro: "true"
|
|
exec_timeout_secs: 14400 # 4 hours
|
|
timeout_secs: 14400 # 4 hours
|
|
|
|
- <<: *gen_task_template
|
|
name: config_fuzzer_stress_concurrency_sharded_replication_gen
|
|
tags: ["config_fuzzer_stress"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: concurrency_sharded_replication
|
|
resmoke_args: >-
|
|
--fuzzMongodConfigs=stress
|
|
--excludeWithAnyTags=does_not_support_config_fuzzer
|
|
use_large_distro: "true"
|
|
exec_timeout_secs: 14400 # 4 hours
|
|
timeout_secs: 14400 # 4 hours
|
|
|
|
- <<: *task_template
|
|
name: config_fuzzer_replica_sets_jscore_passthrough_gen
|
|
tags: ["config_fuzzer", "large"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: replica_sets_jscore_passthrough
|
|
resmoke_args: >-
|
|
--fuzzMongodConfigs=normal
|
|
--excludeWithAnyTags=does_not_support_config_fuzzer
|
|
use_large_distro: "true"
|
|
|
|
- <<: *task_template
|
|
name: config_fuzzer_sharding_jscore_passthrough_gen
|
|
tags: ["config_fuzzer", "large"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: sharding_jscore_passthrough
|
|
resmoke_args: >-
|
|
--fuzzMongodConfigs=normal
|
|
--excludeWithAnyTags=does_not_support_config_fuzzer
|
|
use_large_distro: "true"
|
|
|
|
- <<: *task_template
|
|
name: jsCore_ese
|
|
tags: ["jscore", "encrypt"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: core_ese
|
|
|
|
- <<: *task_template
|
|
name: jsCore_min_batch_repeat_queries_ese_gsm
|
|
tags: ["jscore", "encrypt", "gcm"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: core_min_batch_repeat_queries_ese_gsm
|
|
|
|
- <<: *task_template
|
|
name: jsCore_auth
|
|
tags: ["jscore", "auth", "common"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: core_auth
|
|
|
|
- <<: *task_template
|
|
name: jsCore_txns
|
|
tags: ["jscore", "common", "txns"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: core_txns
|
|
|
|
- <<: *task_template
|
|
name: jsCore_txns_large_txns_format
|
|
tags: ["jscore", "txns", "multi_oplog"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: core_txns_large_txns_format
|
|
|
|
- <<: *task_template
|
|
name: sharded_jscore_txns
|
|
tags: ["sharding", "jscore", "txns"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: sharded_jscore_txns_without_snapshot
|
|
tags: ["sharding", "wo_snapshot", "jscore"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: sharded_jscore_txns
|
|
resmoke_args: --excludeWithAnyTags=uses_snapshot_read_concern
|
|
|
|
- <<: *task_template
|
|
name: sharded_jscore_txns_sharded_collections
|
|
tags: ["sharding", "jscore", "txns"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: cst_jscore_passthrough
|
|
tags: ["jscore"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: libunwind_tests
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: libunwind
|
|
|
|
- <<: *task_template
|
|
name: causally_consistent_jscore_txns_passthrough
|
|
tags: ["causally_consistent"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharded_causally_consistent_jscore_txns_passthrough_gen
|
|
tags: ["sharding", "jscore", "causally_consistent", "txns"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharded_causally_consistent_jscore_txns_passthrough_without_snapshot_gen
|
|
tags: ["sharding", "wo_snapshot", "causally_consistent", "jscore"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: sharded_causally_consistent_jscore_txns_passthrough
|
|
resmoke_args: --excludeWithAnyTags=uses_snapshot_read_concern
|
|
|
|
- <<: *gen_task_template
|
|
name: causally_consistent_hedged_reads_jscore_passthrough_gen
|
|
tags: ["causally_consistent", "sharding", "jscore"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *task_template
|
|
name: sharded_collections_causally_consistent_jscore_txns_passthrough
|
|
tags: ["sharding", "jscore", "causally_consistent", "txns"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: replica_sets_jscore_passthrough
|
|
tags: ["replica_sets", "common", "san", "large", "ignore_non_generated_replica_sets_jscore_passthrough"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_reconfig_jscore_passthrough_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_reconfig_jscore_stepdown_passthrough_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_reconfig_kill_primary_jscore_passthrough_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_api_version_jscore_passthrough_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
fallback_num_sub_suites: 5
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_jscore_passthrough_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *task_template
|
|
name: replica_sets_large_txns_format_jscore_passthrough
|
|
tags: ["replica_sets", "multi_oplog", "large", "non_maj_read", "san"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: replica_sets_multi_stmt_txn_jscore_passthrough
|
|
tags: ["replica_sets", "large"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_multi_stmt_txn_stepdown_jscore_passthrough_gen
|
|
tags: ["replica_sets", "non_maj_read"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_multi_stmt_txn_kill_primary_jscore_passthrough_gen
|
|
tags: ["replica_sets", "non_maj_read", "non_live_record"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *task_template
|
|
name: replica_sets_multi_stmt_txn_terminate_primary_jscore_passthrough
|
|
tags: ["replica_sets", "non_maj_read"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_initsync_jscore_passthrough_gen
|
|
tags: ["replica_sets", "san", "large"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_fcbis_jscore_passthrough_gen
|
|
tags: ["replica_sets", "fcbis", "large"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_args: --storageEngine=wiredTiger
|
|
|
|
- <<: *task_template
|
|
name: replica_sets_initsync_static_jscore_passthrough
|
|
tags: ["replica_sets", "san", "large"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_kill_primary_jscore_passthrough_gen
|
|
tags: ["replica_sets", "large", "non_maj_read", "non_live_record"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *task_template
|
|
name: replica_sets_terminate_primary_jscore_passthrough
|
|
tags: ["replica_sets", "large", "non_maj_read"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: replica_sets_kill_secondaries_jscore_passthrough
|
|
tags: ["replica_sets", "san", "large", "non_live_record", "ignore_on_code_coverage"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: jsCore_column_store_indexes
|
|
depends_on:
|
|
- name: jsCore
|
|
tags: ["jscore", "sbe_only"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: core_column_store_indexes
|
|
|
|
- <<: *task_template
|
|
name: mongosTest
|
|
tags: ["misc_js", "non_read_maj", "non_live_record"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: mongos_test
|
|
|
|
- <<: *gen_task_template
|
|
name: multiversion_auth_gen
|
|
tags: ["auth", "multiversion", "no_version_combination", "future_git_tag_incompatible"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: multiversion_gen
|
|
tags: ["multiversion", "no_version_combination", "future_git_tag_incompatible"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
# Tests the runFeatureFlagMultiversionTest helper.
|
|
# This requires the 'featureFlagToaster' and 'featureFlagSpoon' parameters to be set to true on
|
|
# build variants that enable this task.
|
|
- <<: *gen_task_template
|
|
name: feature_flag_multiversion_gen
|
|
tags: ["multiversion", "no_version_combination"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: unittest_shell_hang_analyzer_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: noPassthrough_gen
|
|
tags: ["misc_js", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: no_passthrough
|
|
use_large_distro: "true"
|
|
|
|
# Only run hot_backups tests for hot_backups variant.
|
|
- <<: *gen_task_template
|
|
name: noPassthroughHotBackups_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: no_passthrough
|
|
resmoke_args: src/mongo/db/modules/*/jstests/hot_backups/*.js
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: noPassthroughWithMongod_gen
|
|
tags: ["misc_js"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: no_passthrough_with_mongod
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: slow1_gen
|
|
tags: ["misc_js", "non_win_dbg"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
use_large_distro: "true"
|
|
|
|
- <<: *task_template
|
|
name: serial_run
|
|
tags: ["misc_js", "non_win_dbg"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: sharded_collections_jscore_passthrough
|
|
tags: ["sharding", "jscore"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharded_collections_jscore_multiversion_gen
|
|
tags: ["multiversion_passthrough", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: sharded_collections_jscore_passthrough
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *task_template
|
|
name: sharding_jscore_passthrough
|
|
tags: ["sharding", "jscore", "common"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_jscore_multiversion_gen
|
|
tags: ["multiversion_passthrough", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: sharding_jscore_passthrough
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_api_version_jscore_passthrough_gen
|
|
tags: ["sharding", "jscore"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
fallback_num_sub_suites: 5
|
|
|
|
- <<: *task_template
|
|
name: sharded_multi_stmt_txn_jscore_passthrough
|
|
tags: ["sharding", "jscore", "multi_stmt"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: multi_shard_multi_stmt_txn_jscore_passthrough_gen
|
|
tags: ["multi_shard", "multi_stmt", "common"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 0 # No cap on number of jobs.
|
|
|
|
- <<: *gen_task_template
|
|
name: multi_shard_local_read_write_multi_stmt_txn_jscore_passthrough_gen
|
|
tags: ["multi_shard", "common"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: multi_stmt_txn_jscore_passthrough_with_migration_gen
|
|
tags: ["multi_stmt"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: multi_shard_multi_stmt_txn_kill_primary_jscore_passthrough_gen
|
|
tags: ["multi_shard"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: multi_shard_multi_stmt_txn_stepdown_primary_jscore_passthrough_gen
|
|
tags: ["multi_shard", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
# TODO(SERVER-65178): Add "serverless" tag to shard split passthrough when no longer feature flagged
|
|
- <<: *gen_task_template
|
|
name: shard_split_jscore_passthrough_gen
|
|
tags: ["shard_split"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: shard_split_causally_consistent_jscore_passthrough_gen
|
|
tags: ["shard_split"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: shard_split_multi_stmt_txn_jscore_passthrough_gen
|
|
tags: ["shard_split"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: shard_split_stepdown_jscore_passthrough_gen
|
|
tags: ["shard_split"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: shard_split_terminate_primary_jscore_passthrough_gen
|
|
tags: ["shard_split"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
fallback_num_sub_suites: 10
|
|
|
|
- <<: *gen_task_template
|
|
name: shard_split_kill_primary_jscore_passthrough_gen
|
|
tags: ["shard_split"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
fallback_num_sub_suites: 10
|
|
|
|
# TODO(SERVER-57896): Add "serverless" tag to shard merge passthrough when no longer feature flagged
|
|
- <<: *gen_task_template
|
|
name: shard_merge_jscore_passthrough_gen
|
|
tags: ["shard_merge"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: shard_merge_causally_consistent_jscore_passthrough_gen
|
|
tags: ["shard_merge"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *task_template
|
|
name: telemetry_passthrough
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: tenant_migration_jscore_passthrough_gen
|
|
tags: ["serverless"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: tenant_migration_causally_consistent_jscore_passthrough_gen
|
|
tags: ["serverless"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: tenant_migration_multi_stmt_txn_jscore_passthrough_gen
|
|
tags: ["serverless", "txn"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
# TODO(SERVER-68643): Add "serverless" tag to shard merge passthrough when no longer feature flagged
|
|
- <<: *gen_task_template
|
|
name: shard_merge_multi_stmt_txn_jscore_passthrough_gen
|
|
tags: ["shard_merge"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: tenant_migration_stepdown_jscore_passthrough_gen
|
|
tags: ["serverless"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: tenant_migration_terminate_primary_jscore_passthrough_gen
|
|
tags: ["serverless"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
fallback_num_sub_suites: 10
|
|
|
|
- <<: *gen_task_template
|
|
name: tenant_migration_kill_primary_jscore_passthrough_gen
|
|
tags: ["serverless"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
fallback_num_sub_suites: 10
|
|
|
|
- <<: *gen_task_template
|
|
name: talk_directly_to_shardsvrs_jscore_passthrough_gen
|
|
tags: ["serverless"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: talk_directly_to_shardsvrs_kill_primary_jscore_passthrough_gen
|
|
tags: ["serverless"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: native_tenant_data_isolation_with_security_token_jscore_passthrough_gen
|
|
tags: ["serverless"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: native_tenant_data_isolation_with_dollar_tenant_jscore_passthrough_gen
|
|
tags: ["serverless"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: clustered_collection_passthrough_gen
|
|
tags: ["large", "clustered_collections"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_clustered_collections_gen
|
|
tags: ["large", "clustered_collections"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: parallel_gen
|
|
tags: ["misc_js", "parallel"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_gen
|
|
tags: ["concurrency", "common"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_metrics_gen
|
|
tags: ["concurrency"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_compute_mode_gen
|
|
tags: ["concurrency", "no_passthrough", "compute_mode", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_replication_metrics_gen
|
|
tags: ["concurrency", "repl", "disabled_on_code_coverage"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_replication_gen
|
|
tags: ["concurrency", "common", "repl"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_replication_multiversion_gen
|
|
tags: ["multiversion", "multiversion_passthrough"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: concurrency_replication
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_replication_causal_consistency_gen
|
|
tags: ["concurrency", "repl", "large", "non_live_record"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_replication_multi_stmt_txn_gen
|
|
tags: ["concurrency", "common", "repl", "txn", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
# TODO: SERVER-35964 revert the addition of UBSAN concurrency_replication suites.
|
|
- <<: *task_template
|
|
name: concurrency_replication_ubsan
|
|
tags: ["concurrency", "ubsan", "repl"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: concurrency_replication_causal_consistency_ubsan
|
|
tags: ["concurrency", "ubsan", "repl"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: concurrency_replication_multi_stmt_txn_ubsan
|
|
tags: ["concurrency", "ubsan", "repl"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_replication_wiredtiger_cursor_sweeps_gen
|
|
tags: ["concurrency", "repl"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_replication_wiredtiger_eviction_debug_gen
|
|
tags: ["concurrency", "repl", "debug_only"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_replication_gen
|
|
tags: ["concurrency", "common", "read_concern_maj", "large", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_with_catalog_shard_gen
|
|
tags: ["catalog_shard", "large"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_replication_multiversion_gen
|
|
tags: ["multiversion_passthrough", "sharded", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: concurrency_sharded_replication
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_replication_with_balancer_gen
|
|
tags: ["concurrency", "common", "read_concern_maj", "large", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_with_balancer_and_catalog_shard_gen
|
|
tags: ["catalog_shard", "large"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_replication_no_txns_gen
|
|
tags: ["concurrency", "no_txns", "large", "sharded"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: concurrency_sharded_replication
|
|
resmoke_args: "--excludeWithAnyTags=uses_transactions"
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_replication_no_txns_with_balancer_gen
|
|
tags: ["concurrency", "no_txns", "large", "sharded"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: concurrency_sharded_replication_with_balancer
|
|
resmoke_args: "--excludeWithAnyTags=uses_transactions"
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_clusterwide_ops_add_remove_shards_gen
|
|
tags: ["concurrency", "common", "read_concern_maj", "large", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_causal_consistency_gen
|
|
tags: ["concurrency", "non_live_record", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_causal_consistency_and_balancer_gen
|
|
tags: ["concurrency", "large", "non_live_record", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_with_stepdowns_gen
|
|
tags: ["concurrency", "stepdowns", "large", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_with_stepdowns_and_balancer_gen
|
|
tags: ["concurrency", "stepdowns", "large", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_initial_sync_gen
|
|
tags: ["concurrency", "stepdowns", "initsync", "large", "sharded", "no_debug_mode", "requires_wt"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_terminate_primary_with_balancer_gen
|
|
tags: ["concurrency", "stepdowns", "kill_terminate", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_kill_primary_with_balancer_gen
|
|
tags: ["concurrency", "stepdowns", "kill_terminate", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_multi_stmt_txn_gen
|
|
tags: ["concurrency", "large", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_multi_stmt_txn_with_balancer_gen
|
|
tags: ["concurrency", "large", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_local_read_write_multi_stmt_txn_gen
|
|
tags: ["concurrency", "large", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_local_read_write_multi_stmt_txn_with_balancer_gen
|
|
tags: ["concurrency", "large", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_multi_stmt_txn_with_stepdowns_gen
|
|
tags: ["concurrency", "stepdowns", "large", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_multi_stmt_txn_terminate_primary_gen
|
|
tags: ["concurrency", "stepdowns", "kill_terminate", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_sharded_multi_stmt_txn_kill_primary_gen
|
|
tags: ["concurrency", "stepdowns", "kill_terminate", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_simultaneous_gen
|
|
tags: ["concurrency", "common", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: concurrency_simultaneous_replication_gen
|
|
tags: ["concurrency", "common", "large", "repl", "random_name"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: concurrency_simultaneous_replication_wiredtiger_cursor_sweeps
|
|
tags: ["concurrency", "repl", "random_name"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: concurrency_simultaneous_replication_wiredtiger_eviction_debug
|
|
tags: ["concurrency", "repl", "debug_only", "random_name"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: read_concern_linearizable_passthrough
|
|
tags: ["read_write_concern", "linearize", "large"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: read_concern_majority_passthrough_gen
|
|
tags: ["read_write_concern"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: write_concern_majority_passthrough_gen
|
|
tags: ["read_write_concern", "large", "write"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *task_template
|
|
name: cwrwc_passthrough
|
|
tags: ["read_write_concern", "large", "write"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: cwrwc_rc_majority_passthrough_gen
|
|
tags: ["read_write_concern"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: cwrwc_wc_majority_passthrough_gen
|
|
tags: ["read_write_concern", "write"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: secondary_reads_passthrough_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_gen
|
|
tags: ["replica_sets", "san", "large"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_max_mirroring_large_txns_format_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_max_mirroring_large_txns_format_ese_gen
|
|
tags: ["replica_sets", "encrypt", "san", "no_debug_mode", "multi_oplog"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_max_mirroring_large_txns_format_ese_gcm_gen
|
|
tags: ["replica_sets", "encrypt", "san", "gcm", "no_debug_mode", "multi_oplog"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_auth_gen
|
|
tags: ["replica_sets", "common", "san", "auth", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: replica_sets_multiversion_gen
|
|
tags: ["random_multiversion_ds", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: replica_sets
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *task_template
|
|
name: sasl
|
|
tags: ["sasl", "patch_build"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: serverless
|
|
tags: ["serverless"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_gen
|
|
tags: ["sharding", "common"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_catalog_shard_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_multiversion_gen
|
|
tags: ["random_multiversion_ds", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
suite: sharding
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_csrs_continuous_config_stepdown_gen
|
|
tags: ["sharding", "common", "csrs", "non_live_record"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: sharding_continuous_config_stepdown
|
|
use_large_distro: "true"
|
|
|
|
# This is a subset of sharding_max_mirroring_opportunistic_secondary_targeting_ese_gen and
|
|
# sharding_max_mirroring_opportunistic_secondary_targeting_ese_gcm_gen and should not be ran
|
|
# in the same varient as them
|
|
- <<: *gen_task_template
|
|
name: sharding_max_mirroring_opportunistic_secondary_targeting_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_max_mirroring_opportunistic_secondary_targeting_ese_gen
|
|
tags: ["sharding", "common", "encrypt", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_max_mirroring_opportunistic_secondary_targeting_ese_gcm_gen
|
|
tags: ["sharding", "common", "encrypt", "gcm", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_auth_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_auth_catalog_shard_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_auth_audit_gen
|
|
tags: ["sharding", "auth", "audit", "non_live_record", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_api_strict_passthrough_gen
|
|
tags: ["sharding"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_hello_failures_gen
|
|
tags: ["concurrency", "large", "sharded", "no_debug_mode"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *gen_task_template
|
|
name: sharding_last_lts_mongos_and_mixed_shards_gen
|
|
tags: ["sharding", "common", "multiversion", "no_version_combination"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
multiversion_exclude_tags_version: last_lts
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: analyze_shard_key_jscore_passthrough_gen
|
|
tags: ["sharding"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: ssl_gen
|
|
tags: ["encrypt", "ssl", "patch_build"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
resmoke_args: "--mongodSetParameters='{logComponentVerbosity: {network: 2, replication: {heartbeats: 2}}}'"
|
|
|
|
- <<: *gen_task_template
|
|
name: sslSpecial_gen
|
|
tags: ["encrypt", "ssl", "patch_build"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: ssl_special
|
|
|
|
- <<: *gen_task_template
|
|
name: ssl_x509_gen
|
|
tags: ["encrypt", "ssl", "patch_build"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
suite: ssl_x509
|
|
|
|
- <<: *task_template
|
|
name: jsCore_decimal
|
|
tags: ["jscore", "common", "decimal"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: decimal
|
|
|
|
- <<: *task_template
|
|
name: read_only
|
|
tags: ["read_only"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: read_only_sharded
|
|
tags: ["read_only"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: session_jscore_passthrough
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *gen_task_template
|
|
name: causally_consistent_jscore_passthrough_gen
|
|
tags: ["causally_consistent"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: causally_consistent_jscore_passthrough_auth_gen
|
|
tags: ["causally_consistent"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: causally_consistent_read_concern_snapshot_passthrough_gen
|
|
tags: ["causally_consistent", "read_write_concern", "durable_history"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharded_causally_consistent_read_concern_snapshot_passthrough_gen
|
|
tags: ["causally_consistent", "read_write_concern", "durable_history"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharded_causally_consistent_jscore_passthrough_gen
|
|
tags: ["causally_consistent"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: retryable_writes_jscore_passthrough_gen
|
|
tags: ["retry"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
use_large_distro: "true"
|
|
|
|
# Use explicit task definitions for retryable_writes_downgrade suites to avoid running
|
|
# with all Repl multiversion combinations.
|
|
- <<: *gen_task_template
|
|
name: retryable_writes_downgrade_last_continuous_gen
|
|
tags: ["multiversion_passthrough", "multiversion", "no_version_combination"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
multiversion_exclude_tags_version: last_continuous
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: retryable_writes_downgrade_last_lts_gen
|
|
tags: ["multiversion_passthrough", "multiversion", "no_version_combination"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
multiversion_exclude_tags_version: last_lts
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: sharded_retryable_writes_downgrade_gen
|
|
tags: ["multiversion_passthrough", "multiversion"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
vars:
|
|
run_no_feature_flag_tests: "true"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_replication_default_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache", "repl"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_replication_100ms_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache", "repl"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_replication_1sec_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache", "one_sec", "repl"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_replication_10sec_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache", "repl"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_sharding_default_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_sharding_100ms_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_sharding_100ms_refresh_jscore_txns_passthrough_gen
|
|
tags: ["logical_session_cache"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_sharding_1sec_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache", "one_sec"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_sharding_10sec_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_standalone_default_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_standalone_100ms_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_standalone_1sec_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache", "one_sec"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: logical_session_cache_standalone_10sec_refresh_jscore_passthrough_gen
|
|
tags: ["logical_session_cache"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *gen_task_template
|
|
name: retryable_writes_jscore_stepdown_passthrough_gen
|
|
tags: ["retry"]
|
|
commands:
|
|
- func: "generate resmoke tasks"
|
|
|
|
- <<: *task_template
|
|
name: watchdog_wiredtiger
|
|
tags: ["watchdog"]
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "do setup"
|
|
- func: "do watchdog setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: watchdog
|
|
resmoke_jobs_max: 1
|
|
|
|
# This is a separate task because it is only supported on Ubuntu 16.04+ which are not inmemory builders
|
|
- <<: *task_template
|
|
name: watchdog_inmemory
|
|
tags: ["watchdog"]
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "do setup"
|
|
- func: "do watchdog setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: watchdog
|
|
resmoke_args: --storageEngine=inMemory
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: free_monitoring
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: client_encrypt
|
|
tags: ["ssl", "encrypt", "patch_build"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: fle
|
|
tags: ["encrypt", "patch_build"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: fle2_query_analysis
|
|
tags: ["encrypt", "patch_build"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: fle2
|
|
tags: ["encrypt", "patch_build"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: fle2_sharding
|
|
tags: ["encrypt", "patch_build"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: fle2_high_cardinality
|
|
tags: ["encrypt"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: fle2_sharding_high_cardinality
|
|
tags: ["encrypt"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: ocsp
|
|
tags: ["ssl", "encrypt", "ocsp", "patch_build", "no_debug_mode"]
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: json_schema
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- name: powercycle_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate powercycle tasks"
|
|
vars:
|
|
task_names: >-
|
|
powercycle
|
|
powercycle_kill_mongod
|
|
powercycle_replication_smalloplog
|
|
powercycle_syncdelay
|
|
num_tasks: 1
|
|
|
|
- name: powercycle_smoke_skip_compile_gen
|
|
tags: []
|
|
commands:
|
|
- func: "generate powercycle tasks"
|
|
vars:
|
|
task_names: >-
|
|
powercycle_smoke_skip_compile
|
|
num_tasks: 20
|
|
exec_timeout_secs: 604800 # 7 days
|
|
timeout_secs: 604800 # 7 days
|
|
set_up_retry_count: 1800
|
|
run_powercycle_args: --sshAccessRetryCount=1800
|
|
|
|
- name: powercycle_sentinel
|
|
tags: []
|
|
exec_timeout_secs: 604800 # 7 days
|
|
commands:
|
|
- func: "run powercycle sentinel"
|
|
vars:
|
|
gen_task: powercycle_smoke_skip_compile_gen
|
|
|
|
- name: powercycle_smoke
|
|
tags: []
|
|
exec_timeout_secs: 7200 # 2 hour timeout for the task overall
|
|
depends_on:
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "set up remote credentials"
|
|
vars:
|
|
<<: *powercycle_remote_credentials
|
|
- func: "set up EC2 instance"
|
|
- func: "run powercycle test"
|
|
timeout_secs: 1800 # 30 minute timeout for no output
|
|
|
|
- name: powercycle
|
|
tags: ["powercycle"]
|
|
exec_timeout_secs: 7200 # 2 hour timeout for the task overall
|
|
depends_on:
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "set up remote credentials"
|
|
vars:
|
|
<<: *powercycle_remote_credentials
|
|
- func: "set up EC2 instance"
|
|
- func: "run powercycle test"
|
|
timeout_secs: 1800 # 30 minute timeout for no output
|
|
|
|
- name: powercycle_kill_mongod
|
|
tags: ["powercycle"]
|
|
exec_timeout_secs: 7200 # 2 hour timeout for the task overall
|
|
depends_on:
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "set up remote credentials"
|
|
vars:
|
|
<<: *powercycle_remote_credentials
|
|
- func: "set up EC2 instance"
|
|
- func: "run powercycle test"
|
|
timeout_secs: 1800 # 30 minute timeout for no output
|
|
|
|
- name: powercycle_last_lts_fcv
|
|
tags: ["powercycle"]
|
|
exec_timeout_secs: 7200 # 2 hour timeout for the task overall
|
|
depends_on:
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "set up remote credentials"
|
|
vars:
|
|
<<: *powercycle_remote_credentials
|
|
- func: "set up EC2 instance"
|
|
- func: "run powercycle test"
|
|
timeout_secs: 1800 # 30 minute timeout for no output
|
|
|
|
- name: powercycle_replication
|
|
tags: ["powercycle"]
|
|
exec_timeout_secs: 7200 # 2 hour timeout for the task overall
|
|
depends_on:
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "set up remote credentials"
|
|
vars:
|
|
<<: *powercycle_remote_credentials
|
|
- func: "set up EC2 instance"
|
|
- func: "run powercycle test"
|
|
timeout_secs: 1800 # 30 minute timeout for no output
|
|
|
|
- name: powercycle_replication_smalloplog
|
|
tags: ["powercycle"]
|
|
exec_timeout_secs: 7200 # 2 hour timeout for the task overall
|
|
depends_on:
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "set up remote credentials"
|
|
vars:
|
|
<<: *powercycle_remote_credentials
|
|
- func: "set up EC2 instance"
|
|
- func: "run powercycle test"
|
|
timeout_secs: 1800 # 30 minute timeout for no output
|
|
|
|
- name: powercycle_syncdelay
|
|
tags: ["powercycle"]
|
|
exec_timeout_secs: 7200 # 2 hour timeout for the task overall
|
|
depends_on:
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "set up remote credentials"
|
|
vars:
|
|
<<: *powercycle_remote_credentials
|
|
- func: "set up EC2 instance"
|
|
- func: "run powercycle test"
|
|
timeout_secs: 1800 # 30 minute timeout for no output
|
|
|
|
- name: powercycle_write_concern_majority
|
|
tags: ["powercycle"]
|
|
exec_timeout_secs: 7200 # 2 hour timeout for the task overall
|
|
depends_on:
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "set up remote credentials"
|
|
vars:
|
|
<<: *powercycle_remote_credentials
|
|
- func: "set up EC2 instance"
|
|
- func: "run powercycle test"
|
|
timeout_secs: 1800 # 30 minute timeout for no output
|
|
|
|
|
|
- name: selinux_rhel8_org
|
|
tags: []
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
- name: package
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- func: "set up venv"
|
|
- func: "fetch packages"
|
|
- func: "fetch binaries"
|
|
- func: "extract binaries"
|
|
- func: "run selinux tests"
|
|
vars:
|
|
distro: rhel80-selinux
|
|
test_list: jstests/selinux/*.js
|
|
|
|
- name: selinux_rhel8_enterprise
|
|
tags: []
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
- name: package
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- func: "set up venv"
|
|
- func: "fetch packages"
|
|
- func: "fetch binaries"
|
|
- func: "extract binaries"
|
|
- func: "run selinux tests"
|
|
vars:
|
|
distro: rhel80-selinux
|
|
- name: selinux_rhel9_org
|
|
tags: []
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
- name: package
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- func: "set up venv"
|
|
- func: "fetch packages"
|
|
- func: "fetch binaries"
|
|
- func: "extract binaries"
|
|
- func: "run selinux tests"
|
|
vars:
|
|
distro: rhel90-selinux
|
|
test_list: jstests/selinux/*.js
|
|
- name: selinux_rhel9_enterprise
|
|
tags: []
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
- name: package
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- func: "set up venv"
|
|
- func: "fetch packages"
|
|
- func: "fetch binaries"
|
|
- func: "extract binaries"
|
|
- func: "run selinux tests"
|
|
vars:
|
|
distro: rhel90-selinux
|
|
test_list: jstests/selinux/*.js src/mongo/db/modules/enterprise/jstests/selinux/*.js
|
|
|
|
|
|
- name: selinux_rhel7_org
|
|
tags: []
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
- name: package
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- func: "set up venv"
|
|
- func: "fetch packages"
|
|
- func: "fetch binaries"
|
|
- func: "extract binaries"
|
|
- func: "run selinux tests"
|
|
vars:
|
|
user: root
|
|
distro: rhel76-selinux
|
|
test_list: jstests/selinux/*.js
|
|
|
|
- name: selinux_rhel7_enterprise
|
|
tags: []
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
- name: package
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- func: "set up venv"
|
|
- func: "fetch packages"
|
|
- func: "fetch binaries"
|
|
- func: "extract binaries"
|
|
- func: "run selinux tests"
|
|
vars:
|
|
user: root
|
|
distro: rhel76-selinux
|
|
test_list: jstests/selinux/*.js src/mongo/db/modules/enterprise/jstests/selinux/*.js
|
|
|
|
- name: idl_tests
|
|
tags: []
|
|
depends_on:
|
|
- name: archive_dist_test
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "run idl tests"
|
|
|
|
- name: blackduck_scanner
|
|
tags: []
|
|
patchable: false
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "do non-compile setup"
|
|
- command: subprocess.exec
|
|
type: setup
|
|
params:
|
|
binary: bash
|
|
silent: true
|
|
args:
|
|
- "src/evergreen/blackduck_setup.sh"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/blackduck_hub.sh"
|
|
|
|
- name: tla_plus
|
|
tags: []
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "do non-compile setup"
|
|
- command: subprocess.exec
|
|
type: setup
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/download_tlc.sh"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- name: buildscripts_test
|
|
tags: []
|
|
depends_on: []
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "do non-compile setup"
|
|
- func: "set up remote credentials"
|
|
- *f_expansions_write
|
|
- func: "configure evergreen api credentials"
|
|
- *gen_feature_flags
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: resmoke_end2end_tests
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- name: test_packages
|
|
tags: []
|
|
depends_on:
|
|
- name: package
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *set_up_venv
|
|
- func: "run package test"
|
|
vars:
|
|
docker_username: ${dockerhub_username}
|
|
docker_password: ${dockerhub_password}
|
|
|
|
- name: test_packages_release
|
|
tags: []
|
|
depends_on:
|
|
- name: version_expansions_gen
|
|
variant: generate-tasks-for-version
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *set_up_venv
|
|
- func: "run release package test"
|
|
vars:
|
|
docker_username: ${dockerhub_username}
|
|
docker_password: ${dockerhub_password}
|
|
|
|
- name: package
|
|
tags: []
|
|
depends_on:
|
|
- name: compile_dist_test
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "scons compile"
|
|
vars:
|
|
targets: >-
|
|
distsrc-${ext|tgz}
|
|
archive-dist
|
|
archive-dist-debug
|
|
archive-jstestshell
|
|
archive-jstestshell-debug
|
|
${additional_package_targets|}
|
|
task_compile_flags: >-
|
|
--legacy-tarball
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
add_expansions_to_env: true
|
|
args:
|
|
- "src/evergreen/run_python_script.sh"
|
|
- "evergreen/macos_notary.py"
|
|
- "mongodb-dist.${ext|tgz}"
|
|
- func: "f_expansions_write"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/package.sh"
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/distsrc.${ext|tgz}
|
|
remote_file: ${project}/${build_variant}/${revision}/sources/mongo-src-${build_id}.${ext|tgz}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: Source tarball
|
|
# We only need to upload the source tarball from one of the build variants
|
|
# because it should be the same everywhere, so just use rhel70/windows.
|
|
build_variants: [rhel70, windows]
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-dist.${ext|tgz}
|
|
remote_file: ${project}/${build_variant}/${revision}/dist/mongo-${build_id}.${ext|tgz}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/tar
|
|
display_name: Dist Tarball
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-dist-debugsymbols.${ext|tgz}
|
|
remote_file: ${project}/${build_variant}/${revision}/dist/mongo-${build_id}-debugsymbols.${ext|tgz}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/tar
|
|
display_name: Dist Debugsymbols
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-jstestshell.${ext|tgz}
|
|
remote_file: ${mongo_jstestshell}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: Jstestshell
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-jstestshell-debugsymbols.${ext|tgz}
|
|
remote_file: ${mongo_jstestshell_debugsymbols}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: Jstestshell Debugsymbols
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-cryptd.${ext|tgz}
|
|
remote_file: ${mongo_cryptd}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: CryptD Binaries
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-cryptd-debugsymbols.${ext|tgz}
|
|
remote_file: ${mongo_cryptd_debugsymbols}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: CryptD Debugsymbols
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mh-binaries.${ext|tgz}
|
|
remote_file: ${mh_archive}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: MH Binaries
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mh-debugsymbols.${ext|tgz}
|
|
remote_file: ${mh_debugsymbols}
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
display_name: MH Debugsymbols
|
|
- func: "run packager.py"
|
|
- command: archive.targz_pack
|
|
params:
|
|
target: "packages.tgz"
|
|
source_dir: "src"
|
|
include:
|
|
- "repo/**"
|
|
- "./**.msi"
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: packages.tgz
|
|
remote_file: ${project}/${build_variant}/${revision}/artifacts/${build_id}-packages.tgz
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: application/tar
|
|
display_name: Packages
|
|
|
|
|
|
- name: publish_packages
|
|
run_on: rhel80-small
|
|
tags: ["publish"]
|
|
# This should prevent this task from running in patch builds, where we
|
|
# don't want to publish packages.
|
|
patchable: false
|
|
stepback: false
|
|
# Same dependencies as "push" below
|
|
depends_on:
|
|
- name: package
|
|
- name: jsCore
|
|
- name: run_dbtest
|
|
- name: replica_sets_jscore_passthrough
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "get and apply version expansions"
|
|
- func: "f_expansions_write"
|
|
- func: "kill processes"
|
|
- func: "cleanup environment"
|
|
- func: "set up venv"
|
|
- func: "fetch packages"
|
|
- func: "generate compile expansions"
|
|
- func: "apply compile expansions"
|
|
- func: "set up remote credentials"
|
|
vars:
|
|
aws_key_remote: ${repo_aws_key}
|
|
aws_secret_remote: ${repo_aws_secret}
|
|
- func: "set up notary client credentials"
|
|
- *f_expansions_write
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/packages_publish.sh"
|
|
|
|
- name: push
|
|
run_on: rhel80-small
|
|
tags: ["publish"]
|
|
patchable: false
|
|
depends_on:
|
|
- name: package
|
|
- name: jsCore
|
|
- name: run_dbtest
|
|
- name: replica_sets_jscore_passthrough
|
|
stepback: false
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "get and apply version expansions"
|
|
- func: "f_expansions_write"
|
|
- func: "kill processes"
|
|
- func: "cleanup environment"
|
|
- func: "set up venv"
|
|
- func: "fetch packages"
|
|
- func: "fetch dist tarball"
|
|
# Fetch mongocryptd
|
|
- command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${mongo_cryptd}
|
|
bucket: mciuploads
|
|
local_file: src/mongo-cryptd.tgz
|
|
build_variants: *mongocryptd_variants
|
|
# Fetch the mongohouse binaries
|
|
- command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${mh_archive}
|
|
bucket: mciuploads
|
|
local_file: src/mh.tgz
|
|
build_variants: *mh_variants
|
|
# Fetch the sources (on relevant variants only)
|
|
- command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${project}/${build_variant}/${revision}/sources/mongo-src-${build_id}.${ext|tgz}
|
|
bucket: mciuploads
|
|
local_file: src/distsrc.${ext|tgz}
|
|
build_variants: [rhel70, windows]
|
|
- func: "generate compile expansions"
|
|
- func: "apply compile expansions"
|
|
- func: "fetch dist debugsymbols"
|
|
- func: "set up remote credentials"
|
|
vars:
|
|
aws_key_remote: ${repo_aws_key}
|
|
aws_secret_remote: ${repo_aws_secret}
|
|
- func: "f_expansions_write"
|
|
- func: "set up notary client credentials"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/notary_client_run.sh"
|
|
|
|
# Put the binaries tarball/zipfile
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-${push_name}-${push_arch}-${suffix}.${ext|tgz}
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}
|
|
# Put the cryptd tarball/zipfile
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-cryptd-${push_name}-${push_arch}-${suffix}.${ext|tgz}
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}
|
|
build_variants: *mongocryptd_variants
|
|
# Put the mh tarball/zipfile
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mh-${push_name}-${push_arch}-${suffix}.${ext|tgz}
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
remote_file: ${push_path}-STAGE/${push_name}/mh-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}
|
|
build_variants: *mh_variants
|
|
# Put the source tarball
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-src-${src_suffix}.${ext|tar.gz}
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-src-${src_suffix}-${task_id}.${ext|tar.gz}
|
|
build_variants: [rhel70, windows]
|
|
|
|
# Put the debug symbols
|
|
# push directly to repo due to limitations in file size SERVER-63432
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
aws_key: ${aws_key}
|
|
permissions: public-read
|
|
local_file: src/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}.${ext|tgz}
|
|
bucket: ${push_bucket}
|
|
content_type: ${content_type|application/gzip}
|
|
remote_file: ${push_path}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}.${ext|tgz}
|
|
optional: true
|
|
|
|
# Put the binaries tarball signature
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sig
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sig
|
|
|
|
# Put the cryptd tarball signature
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-cryptd-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sig
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sig
|
|
build_variants: *mongocryptd_variants
|
|
|
|
# Put the source tarball signature
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-src-${src_suffix}.${ext|tar.gz}.sig
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-src-${src_suffix}-${task_id}.${ext|tar.gz}.sig
|
|
build_variants: [rhel70, windows]
|
|
|
|
# Put the debug symbols signature
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
aws_key: ${aws_key}
|
|
permissions: public-read
|
|
local_file: src/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}.${ext|tgz}.sig
|
|
bucket: build-push-testing
|
|
content_type: ${content_type|application/gzip}
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}-${task_id}.${ext|tgz}.sig
|
|
optional: true
|
|
|
|
# Put the signed MSI file
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
permissions: public-read
|
|
build_variants: ["enterprise-windows", "windows"]
|
|
local_file: src/mongodb-${push_name}-${push_arch}-${suffix}-signed.msi
|
|
bucket: build-push-testing
|
|
content_type: application/x-msi
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}-signed.msi
|
|
|
|
# Put the binaries tarball sha1
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha1
|
|
aws_key: ${aws_key}
|
|
permissions: public-read
|
|
bucket: build-push-testing
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha1
|
|
|
|
# Put the cryptd tarball sha1
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-cryptd-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha1
|
|
aws_key: ${aws_key}
|
|
permissions: public-read
|
|
bucket: build-push-testing
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha1
|
|
build_variants: *mongocryptd_variants
|
|
|
|
# Put the source tarball sha1
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-src-${src_suffix}.${ext|tar.gz}.sha1
|
|
aws_key: ${aws_key}
|
|
permissions: public-read
|
|
bucket: build-push-testing
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-src-${src_suffix}-${task_id}.${ext|tar.gz}.sha1
|
|
build_variants: [rhel70, windows]
|
|
|
|
# Put the debug symbols sha1
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
aws_key: ${aws_key}
|
|
permissions: public-read
|
|
local_file: src/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}.${ext|tgz}.sha1
|
|
bucket: build-push-testing
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}-${task_id}.${ext|tgz}.sha1
|
|
optional: true
|
|
|
|
# Push the signed MSI sha1
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
permissions: public-read
|
|
build_variants: ["enterprise-windows", "windows"]
|
|
local_file: src/mongodb-${push_name}-${push_arch}-${suffix}-signed.msi.sha1
|
|
bucket: build-push-testing
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}-signed.msi.sha1
|
|
|
|
# Put the binaries tarball sha256
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha256
|
|
permissions: public-read
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha256
|
|
|
|
# Put the cryptd tarball sha256
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-cryptd-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha256
|
|
permissions: public-read
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha256
|
|
build_variants: *mongocryptd_variants
|
|
|
|
# Put the source tarball sha256
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-src-${src_suffix}.${ext|tar.gz}.sha256
|
|
permissions: public-read
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-src-${src_suffix}-${task_id}.${ext|tar.gz}.sha256
|
|
build_variants: [rhel70, windows]
|
|
|
|
# Put the debug symbols sha256
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}.${ext|tgz}.sha256
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}-${task_id}.${ext|tgz}.sha256
|
|
optional: true
|
|
|
|
# Put the signed MSI sha256
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
build_variants: ["enterprise-windows", "windows"]
|
|
local_file: src/mongodb-${push_name}-${push_arch}-${suffix}-signed.msi.sha256
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}-signed.msi.sha256
|
|
content_type: text/plain
|
|
|
|
# Put the binaries tarball md5
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-${push_name}-${push_arch}-${suffix}.${ext|tgz}.md5
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.md5
|
|
|
|
# Put the cryptd tarball md5
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-cryptd-${push_name}-${push_arch}-${suffix}.${ext|tgz}.md5
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.md5
|
|
build_variants: *mongocryptd_variants
|
|
|
|
# Put the source tarball md5
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-src-${src_suffix}.${ext|tar.gz}.md5
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-src-${src_suffix}-${task_id}.${ext|tar.gz}.md5
|
|
build_variants: [rhel70, windows]
|
|
|
|
# Put the debug symbols md5
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}.${ext|tgz}.md5
|
|
bucket: build-push-testing
|
|
content_type: text/plain
|
|
permissions: public-read
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}-${task_id}.${ext|tgz}.md5
|
|
optional: true
|
|
|
|
# Put the signed MSI md5
|
|
- command: s3.put
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
build_variants: ["enterprise-windows", "windows"]
|
|
local_file: src/mongodb-${push_name}-${push_arch}-${suffix}-signed.msi.md5
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}-signed.msi.md5
|
|
|
|
- command: s3Copy.copy
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
s3_copy_files:
|
|
#Binaries
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-${suffix}.${ext|tgz}', 'bucket': '${push_bucket}'}}
|
|
|
|
#Cryptd
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}.${ext|tgz}', 'bucket': '${push_bucket}'},
|
|
'build_variants': *mongocryptd_variants}
|
|
|
|
# MH
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mh-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mh-${push_name}-${push_arch}-${suffix}.${ext|tgz}', 'bucket': '${push_bucket}'},
|
|
'build_variants': *mh_variants}
|
|
|
|
#Source tarball
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-src-${src_suffix}-${task_id}.${ext|tar.gz}', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': 'src/mongodb-src-${src_suffix}.${ext|tar.gz}', 'bucket': '${push_bucket}'},
|
|
'build_variants': ['rhel70', 'windows']}
|
|
|
|
#MSI (Windows only)
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}-signed.msi', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-${suffix}-signed.msi', 'bucket': '${push_bucket}'},
|
|
'build_variants': ['enterprise-windows', 'windows']}
|
|
|
|
#Binaries Signature
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sig', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sig', 'bucket': '${push_bucket}'}}
|
|
|
|
#Cryptd Signature
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sig', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sig', 'bucket': '${push_bucket}'},
|
|
'build_variants': *mongocryptd_variants}
|
|
|
|
#Source tarball signature
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-src-${src_suffix}-${task_id}.${ext|tar.gz}.sig', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': 'src/mongodb-src-${src_suffix}.${ext|tar.gz}.sig', 'bucket': '${push_bucket}'},
|
|
'build_variants': ['rhel70', 'windows']}
|
|
|
|
#SHA1 for binaries
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha1', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha1', 'bucket': '${push_bucket}'}}
|
|
|
|
#SHA1 for cryptd
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha1', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha1', 'bucket': '${push_bucket}'},
|
|
'build_variants': *mongocryptd_variants}
|
|
|
|
#SHA1 for source tarball
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-src-${src_suffix}-${task_id}.${ext|tar.gz}.sha1', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': 'src/mongodb-src-${src_suffix}.${ext|tar.gz}.sha1', 'bucket': '${push_bucket}'},
|
|
'build_variants': ['rhel70', 'windows']}
|
|
|
|
#SHA1 for MSI
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}-signed.msi.sha1', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-${suffix}-signed.msi.sha1', 'bucket': '${push_bucket}'},
|
|
'build_variants': ['enterprise-windows', 'windows']}
|
|
|
|
#SHA256 for binaries
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha256', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha256', 'bucket': '${push_bucket}'}}
|
|
|
|
#SHA256 for cryptd
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha256', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha256', 'bucket': '${push_bucket}'},
|
|
'build_variants': *mongocryptd_variants}
|
|
|
|
#SHA256 for source tarball
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-src-${src_suffix}-${task_id}.${ext|tar.gz}.sha256', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': 'src/mongodb-src-${src_suffix}.${ext|tar.gz}.sha256', 'bucket': '${push_bucket}'},
|
|
'build_variants': ['rhel70', 'windows']}
|
|
|
|
#SHA256 for MSI files
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}-signed.msi.sha256', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-${suffix}-signed.msi.sha256', 'bucket': '${push_bucket}'},
|
|
'build_variants': ['enterprise-windows', 'windows']}
|
|
|
|
#MD5 for binaries
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.md5', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-${suffix}.${ext|tgz}.md5', 'bucket': '${push_bucket}'}}
|
|
|
|
#MD5 for cryptd
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.md5', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-cryptd-${push_name}-${push_arch}-${suffix}.${ext|tgz}.md5', 'bucket': '${push_bucket}'},
|
|
'build_variants': *mongocryptd_variants}
|
|
|
|
#MD5 for source tarball
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-src-${src_suffix}-${task_id}.${ext|tar.gz}.md5', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': 'src/mongodb-src-${src_suffix}.${ext|tar.gz}.md5', 'bucket': '${push_bucket}'},
|
|
'build_variants': ['rhel70', 'windows']}
|
|
|
|
#MD5 for MSIs
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-${suffix}-${task_id}-signed.msi.md5', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-${suffix}-signed.msi.md5', 'bucket': '${push_bucket}'},
|
|
'build_variants': ['enterprise-windows', 'windows']}
|
|
|
|
# Debug symbols are not created for all variants and the copy is optional.
|
|
- command: s3Copy.copy
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
optional: true
|
|
s3_copy_files:
|
|
#Debug Symbols temporarily removed - see SERVER-63432 - need to s3.push debugsymbols due to size limit
|
|
#Debug Symbols Signature
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}-${task_id}.${ext|tgz}.sig', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}.${ext|tgz}.sig', 'bucket': '${push_bucket}'}}
|
|
|
|
#SHA1 for debug symbols
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}-${task_id}.${ext|tgz}.sha1', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}.${ext|tgz}.sha1', 'bucket': '${push_bucket}'}}
|
|
|
|
#SHA256 for debugsymbols
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}-${task_id}.${ext|tgz}.sha256', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}.${ext|tgz}.sha256', 'bucket': '${push_bucket}'}}
|
|
|
|
#MD5 for debugsymbols
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}-${task_id}.${ext|tgz}.md5', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongodb-${push_name}-${push_arch}-debugsymbols-${suffix}.${ext|tgz}.md5', 'bucket': '${push_bucket}'}}
|
|
|
|
- name: crypt_push
|
|
run_on: rhel80-small
|
|
tags: ["publish_crypt"]
|
|
patchable: false
|
|
stepback: false
|
|
depends_on:
|
|
- name: crypt_create_lib
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "f_expansions_write"
|
|
- func: "git get project and add git tag"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
- func: "kill processes"
|
|
- func: "cleanup environment"
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "get buildnumber"
|
|
- func: "f_expansions_write"
|
|
- func: "get and apply version expansions"
|
|
- func: "f_expansions_write"
|
|
- func: "generate compile expansions"
|
|
- func: "apply compile expansions"
|
|
- func: "f_expansions_write"
|
|
- command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${project}/mongo_crypt/${build_variant}/${revision}/mongo_crypt_shared_v1-${version}.${ext|tgz}
|
|
bucket: mciuploads
|
|
local_file: src/mongo_crypt_shared_v1.${ext|tgz}
|
|
- func: "generate compile expansions"
|
|
- func: "apply compile expansions"
|
|
- func: "set up remote credentials"
|
|
vars:
|
|
aws_key_remote: ${repo_aws_key}
|
|
aws_secret_remote: ${repo_aws_secret}
|
|
- func: "f_expansions_write"
|
|
- func: "set up notary client credentials"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/notary_client_crypt_run.sh"
|
|
# Put the crypt tarball/zipfile
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}.${ext|tgz}
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}
|
|
# Put the crypt tarball signature
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sig
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: ${content_type|application/gzip}
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sig
|
|
# Put the crypt tarball sha1
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha1
|
|
aws_key: ${aws_key}
|
|
permissions: public-read
|
|
bucket: build-push-testing
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha1
|
|
# Put the crypt tarball sha256
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha256
|
|
permissions: public-read
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha256
|
|
# Put the crypt tarball md5
|
|
- command: s3.put
|
|
params:
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}.${ext|tgz}.md5
|
|
aws_key: ${aws_key}
|
|
bucket: build-push-testing
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
remote_file: ${push_path}-STAGE/${push_name}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.md5
|
|
- command: s3Copy.copy
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
s3_copy_files:
|
|
#Binaries
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}.${ext|tgz}', 'bucket': '${push_bucket}'}}
|
|
#SHA1 for binaries
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha1', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha1', 'bucket': '${push_bucket}'}}
|
|
#SHA256 for binaries
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.sha256', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}.${ext|tgz}.sha256', 'bucket': '${push_bucket}'}}
|
|
#MD5 for binaries
|
|
- {'source': {'path': '${push_path}-STAGE/${push_name}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}-${task_id}.${ext|tgz}.md5', 'bucket': 'build-push-testing'},
|
|
'destination': {'path': '${push_path}/mongo_crypt_shared_v1-${push_name}-${push_arch}-${suffix}.${ext|tgz}.md5', 'bucket': '${push_bucket}'}}
|
|
|
|
- <<: *task_template
|
|
name: search
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: search_auth
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: search_ssl
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
- <<: *task_template
|
|
name: cqf
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: cqf_disabled_pipeline_opt
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: cqf_passthrough
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: cqf_parallel
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- <<: *task_template
|
|
name: streams
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- name: shared_scons_cache_pruning
|
|
tags: []
|
|
exec_timeout_secs: 7200 # 2 hour timeout for the task overall
|
|
depends_on: []
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *set_up_venv
|
|
- func: "shared scons cache pruning"
|
|
|
|
- name: win_shared_scons_cache_pruning
|
|
tags: []
|
|
exec_timeout_secs: 21600 # 2 hour timeout for the task overall
|
|
depends_on: []
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- *set_up_venv
|
|
- func: "set up win mount script"
|
|
- func: "shared scons cache pruning"
|
|
|
|
- name: validate_commit_message
|
|
tags: []
|
|
exec_timeout_secs: 600 # 10 minute timeout
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "configure evergreen api credentials"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/commit_message_validate.sh"
|
|
env:
|
|
JIRA_AUTH_ACCESS_TOKEN: ${jira_auth_access_token}
|
|
JIRA_AUTH_ACCESS_TOKEN_SECRET: ${jira_auth_access_token_secret}
|
|
JIRA_AUTH_CONSUMER_KEY: ${jira_auth_consumer_key}
|
|
JIRA_AUTH_KEY_CERT: ${jira_auth_key_cert}
|
|
|
|
- name: check_for_todos
|
|
tags: []
|
|
exec_timeout_secs: 600 # 10 minute timeout
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- func: "configure evergreen api credentials"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/todos_check.sh"
|
|
|
|
- <<: *task_template
|
|
name: mqlrun
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
|
|
- name: check_feature_flag_tags
|
|
tags: []
|
|
patch_only: true
|
|
commands:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- *f_expansions_write
|
|
- *kill_processes
|
|
- *cleanup_environment
|
|
- func: "set up venv"
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/feature_flag_tags_check.sh"
|
|
|
|
- name: antithesis_image_build
|
|
tags: ["antithesis"]
|
|
depends_on:
|
|
- name: archive_dist_test_debug
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "git get project no modules"
|
|
- func: "f_expansions_write"
|
|
- func: "kill processes"
|
|
- func: "cleanup environment"
|
|
- func: "set up venv"
|
|
- func: "do setup"
|
|
- command: s3.get
|
|
params:
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
remote_file: ${mongo_debugsymbols}
|
|
bucket: mciuploads
|
|
local_file: src/mongo-debugsymbols.${ext|tgz}
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/antithesis_image_build.sh"
|
|
|
|
- name: antithesis_image_push
|
|
tags: ["antithesis"]
|
|
depends_on:
|
|
- name: antithesis_image_build
|
|
commands:
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/antithesis_image_push.sh"
|
|
|
|
- name: antithesis_image_test
|
|
tags: ["antithesis"]
|
|
exec_timeout_secs: 14400 # Time out the task if it runs for more than 4 hours.
|
|
depends_on:
|
|
- name: antithesis_image_build
|
|
commands:
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/antithesis_dry_run.sh"
|
|
|
|
- name: generate_buildid_to_debug_symbols_mapping
|
|
tags: ["symbolizer"]
|
|
stepback: false
|
|
patchable: true
|
|
depends_on:
|
|
- archive_dist_test_debug
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "do setup"
|
|
- func: "configure evergreen api credentials"
|
|
- command: subprocess.exec
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "./src/evergreen/generate_buildid_debug_symbols_mapping.sh"
|
|
|
|
- <<: *task_template
|
|
name: query_golden_classic
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: query_golden_classic
|
|
|
|
- <<: *task_template
|
|
name: query_golden_cqf
|
|
tags: []
|
|
commands:
|
|
- func: "do setup"
|
|
- func: "run tests"
|
|
vars:
|
|
suite: query_golden_cqf
|
|
|
|
- name: publish_metrics
|
|
patchable: false
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "do non-compile setup"
|
|
- *configure_evergreen_api_credentials
|
|
- command: subprocess.exec
|
|
type: test
|
|
params:
|
|
binary: bash
|
|
args:
|
|
- "src/evergreen/run_python_script.sh"
|
|
- "evergreen/publish_metrics.py"
|
|
|
|
- name: tooling_metrics_test
|
|
tags: []
|
|
depends_on: []
|
|
commands:
|
|
- *f_expansions_write
|
|
- func: "do non-compile setup"
|
|
- func: "set up remote credentials"
|
|
- *f_expansions_write
|
|
- func: "configure evergreen api credentials"
|
|
- func: "run tests"
|
|
vars:
|
|
resmoke_jobs_max: 1
|
|
|
|
#######################################
|
|
# Task Groups #
|
|
#######################################
|
|
task_groups:
|
|
- <<: *compile_task_group_template
|
|
name: compile_dist_test_TG
|
|
tasks:
|
|
- compile_dist_test
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_upload_benchmarks_TG
|
|
tasks:
|
|
- compile_upload_benchmarks
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_and_archive_dist_test_TG
|
|
tasks:
|
|
- compile_dist_test
|
|
- archive_dist_test
|
|
- archive_dist_test_debug
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_and_archive_dist_test_then_package_TG
|
|
tasks:
|
|
- compile_dist_test
|
|
- archive_dist_test
|
|
- archive_dist_test_debug
|
|
- package
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_ninja_next_TG
|
|
tasks:
|
|
- compile_ninja_next
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_build_tools_next_TG
|
|
tasks:
|
|
- compile_build_tools_next
|
|
|
|
- <<: *compile_task_group_template
|
|
name: libdeps_graph_linting_TG
|
|
tasks:
|
|
- libdeps_graph_linting
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_ninja_TG
|
|
tasks:
|
|
- compile_ninja
|
|
teardown_task:
|
|
- command: s3.put
|
|
params:
|
|
optional: true
|
|
aws_key: ${aws_key}
|
|
aws_secret: ${aws_secret}
|
|
local_file: src/all.build.ninja
|
|
remote_file: ${project}/${build_variant}/${revision}/artifacts/all.${build_id}.build.ninja
|
|
bucket: mciuploads
|
|
permissions: public-read
|
|
content_type: text/plain
|
|
display_name: build.ninja
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_ninja_quick_TG
|
|
tasks:
|
|
- compile_ninja_quick
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_ninja_default_profile_TG
|
|
tasks:
|
|
- compile_ninja_default_profile
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_ninja_default_profile_linux_TG
|
|
tasks:
|
|
- compile_ninja_default_profile_linux
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_ninja_opt_profile_TG
|
|
tasks:
|
|
- compile_ninja_opt_profile
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_ninja_san_profile_TG
|
|
tasks:
|
|
- compile_ninja_san_profile
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_ninja_fast_profile_TG
|
|
tasks:
|
|
- compile_ninja_fast_profile
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_ninja_compiledb_profile_TG
|
|
tasks:
|
|
- compile_ninja_compiledb_profile
|
|
|
|
- <<: *compile_task_group_template
|
|
name: server_discovery_and_monitoring_json_test_TG
|
|
tasks:
|
|
- server_discovery_and_monitoring_json_test
|
|
|
|
- <<: *compile_task_group_template
|
|
name: server_selection_json_test_TG
|
|
tasks:
|
|
- server_selection_json_test
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_run_and_archive_dbtest_TG
|
|
tasks:
|
|
- compile_dbtest
|
|
- run_dbtest
|
|
- archive_dbtest
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_archive_and_run_libfuzzertests_TG
|
|
tasks:
|
|
- compile_and_archive_libfuzzertests
|
|
- fetch_and_run_libfuzzertests
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_test_and_package_serial_TG
|
|
tasks:
|
|
- compile_dist_test
|
|
- archive_dist_test
|
|
- archive_dist_test_debug
|
|
- compile_unittests
|
|
- run_unittests
|
|
- compile_dbtest
|
|
- run_dbtest
|
|
- archive_dbtest
|
|
- compile_all
|
|
- package
|
|
|
|
# The *no_unittests_TG taskgroups are useful for static builds,
|
|
# were the static binaries of the unittests can take up to
|
|
# a terabyte of data.
|
|
- <<: *compile_task_group_template
|
|
name: compile_test_and_package_serial_no_unittests_TG
|
|
tasks:
|
|
- compile_dist_test
|
|
- archive_dist_test
|
|
- archive_dist_test_debug
|
|
- compile_dbtest
|
|
- run_dbtest
|
|
- archive_dbtest
|
|
- compile_all_but_not_unittests
|
|
- package
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_test_benchmark_and_package_serial_TG
|
|
tasks:
|
|
- compile_dist_test
|
|
- archive_dist_test
|
|
- archive_dist_test_debug
|
|
- compile_unittests
|
|
- run_unittests
|
|
- compile_dbtest
|
|
- run_dbtest
|
|
- archive_dbtest
|
|
- compile_upload_benchmarks
|
|
- compile_all
|
|
- package
|
|
|
|
# The *no_unittests_TG taskgroups are useful for static builds,
|
|
# were the static binaries of the unittests can take up to
|
|
# a terabyte of data.
|
|
- <<: *compile_task_group_template
|
|
name: compile_test_benchmark_and_package_serial_no_unittests_TG
|
|
tasks:
|
|
- compile_dist_test
|
|
- archive_dist_test
|
|
- archive_dist_test_debug
|
|
- compile_dbtest
|
|
- run_dbtest
|
|
- archive_dbtest
|
|
- compile_upload_benchmarks
|
|
- compile_all_but_not_unittests
|
|
- package
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_and_test_TG
|
|
tasks:
|
|
- compile_dist_test
|
|
- compile_unittests
|
|
- run_unittests
|
|
- compile_dbtest
|
|
- run_dbtest
|
|
- compile_all
|
|
|
|
# These `parallel` task groups are only appropriate for builders that
|
|
# use --link-model=dynamic, and have scons_cache_scope: shared and
|
|
# scons_cache_mode: all. Such builders are able to share all build
|
|
# artifacts, and therefore will not repeatedly re-link the same
|
|
# code. In that mode, it makes sense to run all of these tasks
|
|
# concurrently, since they will share state across machines and can
|
|
# complete faster than running them serially. We keep them in task
|
|
# groups so that if they do run on the same machine, they can avoid the
|
|
# cost of re-running the setup tasks.
|
|
- <<: *compile_task_group_template
|
|
name: compile_test_and_package_parallel_core_stream_TG
|
|
tasks:
|
|
- compile_dist_test
|
|
- determine_patch_tests
|
|
- archive_dist_test
|
|
- archive_dist_test_debug
|
|
- compile_all
|
|
- package
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_test_and_package_parallel_unittest_stream_TG
|
|
tasks:
|
|
- compile_unittests
|
|
- run_unittests
|
|
|
|
#- <<: *compile_task_group_template
|
|
# name: compile_test_and_package_parallel_unittest_stream_with_recording_TG
|
|
# tasks:
|
|
# - compile_unittests_for_recorded_unittest
|
|
# - run_unittests_with_recording
|
|
|
|
- <<: *compile_task_group_template
|
|
name: compile_test_and_package_parallel_dbtest_stream_TG
|
|
tasks:
|
|
- compile_dbtest
|
|
- run_dbtest
|
|
- archive_dbtest
|
|
|
|
- <<: *compile_task_group_template
|
|
name: build_metrics_gen_TG
|
|
tasks:
|
|
- build_metrics_tasks_gen
|
|
|
|
|
|
- name: clang_tidy_TG
|
|
setup_group_can_fail_task: true
|
|
setup_group:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
- func: "kill processes"
|
|
- func: "cleanup environment"
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "configure evergreen api credentials"
|
|
- func: "get buildnumber"
|
|
- func: "f_expansions_write"
|
|
- func: "set up credentials"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions"
|
|
teardown_group:
|
|
- func: "f_expansions_write"
|
|
- func: "attach report"
|
|
- func: "upload clang tidy results"
|
|
- func: "umount shared scons directory"
|
|
- func: "cleanup environment"
|
|
setup_task:
|
|
- func: "apply compile expansions"
|
|
- func: "f_expansions_write"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
teardown_task:
|
|
tasks:
|
|
- clang_tidy
|
|
|
|
- name: visibility_test_TG
|
|
setup_group_can_fail_task: true
|
|
max_hosts: 1
|
|
setup_group:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
- func: "get buildnumber"
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "set up credentials"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions"
|
|
teardown_group:
|
|
- func: "umount shared scons directory"
|
|
setup_task:
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
- func: "apply compile expansions"
|
|
- func: "f_expansions_write"
|
|
teardown_task:
|
|
- func: "attach scons logs"
|
|
- func: "send scons cedar report"
|
|
tasks:
|
|
- compile_visibility_test
|
|
|
|
- name: embedded_sdk_build_and_test
|
|
setup_group_can_fail_task: true
|
|
max_hosts: 1
|
|
setup_group:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
- func: "get buildnumber"
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "set up credentials"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions"
|
|
teardown_group:
|
|
- func: "umount shared scons directory"
|
|
setup_task:
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
- func: "apply compile expansions"
|
|
- func: "f_expansions_write"
|
|
teardown_task:
|
|
- func: "attach scons logs"
|
|
- func: "send scons cedar report"
|
|
tasks:
|
|
- "embedded_sdk_build_cdriver"
|
|
- "embedded_sdk_install_dev"
|
|
- "embedded_sdk_s3_put"
|
|
- "embedded_sdk_install_tests"
|
|
- "embedded_sdk_tests_s3_put"
|
|
- "embedded_sdk_run_tests"
|
|
- "embedded_sdk_s3_put_latest"
|
|
- "embedded_sdk_tests_s3_put_latest"
|
|
|
|
- <<: *stitch_support_task_group_template
|
|
name: stitch_support_lib_build_and_archive
|
|
tags: ["stitch"]
|
|
tasks:
|
|
- "stitch_support_create_lib"
|
|
|
|
- <<: *stitch_support_task_group_template
|
|
name: stitch_support_lib_build_and_test
|
|
tags: ["stitch"]
|
|
max_hosts: 1
|
|
tasks:
|
|
- "stitch_support_install_tests"
|
|
- "stitch_support_run_tests"
|
|
|
|
- name: crypt_build
|
|
setup_task:
|
|
- func: "f_expansions_write"
|
|
- func: "apply compile expansions"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
teardown_task:
|
|
- func: "attach scons logs"
|
|
- func: "send scons cedar report"
|
|
setup_group_can_fail_task: true
|
|
setup_group:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
- func: "kill processes"
|
|
- func: "cleanup environment"
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "get buildnumber"
|
|
- func: "f_expansions_write"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions"
|
|
teardown_group:
|
|
- func: "umount shared scons directory"
|
|
tags: ["crypt"]
|
|
max_hosts: 1
|
|
tasks:
|
|
- "crypt_create_lib"
|
|
|
|
- name: crypt_build_debug_and_test
|
|
setup_task:
|
|
- func: "f_expansions_write"
|
|
- func: "apply compile expansions"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
teardown_task:
|
|
- func: "attach scons logs"
|
|
- func: "send scons cedar report"
|
|
setup_group_can_fail_task: true
|
|
setup_group:
|
|
- command: manifest.load
|
|
- func: "git get project and add git tag"
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
- func: "kill processes"
|
|
- func: "cleanup environment"
|
|
- func: "set up venv"
|
|
- func: "upload pip requirements"
|
|
- func: "get buildnumber"
|
|
- func: "f_expansions_write"
|
|
- func: "set up win mount script"
|
|
- func: "generate compile expansions"
|
|
teardown_group:
|
|
- func: "umount shared scons directory"
|
|
max_hosts: 1
|
|
tasks:
|
|
- "crypt_create_debug_lib"
|
|
- "crypt_install_tests"
|
|
- "crypt_run_tests"
|
|
|
|
- name: antithesis_build_test_push_TG
|
|
max_hosts: 1
|
|
share_processes: true
|
|
setup_task:
|
|
- func: "set task expansion macros"
|
|
- func: "f_expansions_write"
|
|
tasks:
|
|
- antithesis_image_build
|
|
- antithesis_image_push
|
|
- antithesis_image_test
|