mongo/etc/evergreen_yml_components/variants/codecoverage/test_dev.yml

117 lines
4.9 KiB
YAML

# Build variants in direct support of Code Coverage
buildvariants:
# Variant to support Code Coverage on arm64
- name: &AL2023-arm64-coverage AL2023-arm64-coverage
display_name: "~ AL2023.3 Arm64 Code Coverage"
run_on:
- amazon2023.3-arm64-large
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
stepback: false
expansions:
test_flags: --excludeWithAnyTags=resource_intensive,incompatible_with_gcov
compile_flags: >-
--allocator=system
--gcov
--opt=off
--dbg=on
--ssl
MONGO_DISTMOD=amazon2023
-j$(grep -c ^processor /proc/cpuinfo)
--variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars
--link-model=dynamic
BAZEL_FLAGS="--remote_download_outputs=all"
large_distro_name: amazon2023.3-arm64-large
resmoke_jobs_factor: 0.5 # Avoid starting too many mongod's
# Mixing --cache and --gcov doesn't work correctly yet. See SERVER-11084
exec_timeout_secs: 32400 # 9 hour timeout
timeout_secs: 18000 # 5 hour idle timeout
use_scons_cache: false
gcov_tool: /opt/mongodbtoolchain/v4/bin/gcov
# The gcov instrumentation saves the path the .gcno files were created in as the default path
# for the .gcda files. In Evergreen the path will start with /data/mci/[Hashed ID]/src/... where
# the hashed ID is unique per task run. GCOV_PREFIX_STRIP is the number of directory levels to
# strip from the top of the default path before appending to the GCOV_PREFIX (if any).
gcov_environment: GCOV_PREFIX=$(pwd)/.. GCOV_PREFIX_STRIP=3
num_scons_link_jobs_available: 0.99
compile_variant: *AL2023-arm64-coverage
tasks:
# These are carefully and explicitly curated. Do not add more tests/tasks without consulting with DevProd.
# unittests
- name: compile_and_package_serial_no_unittests_TG
distros:
- amazon2023.3-arm64-large
- name: compile_test_parallel_unittest_stream_TG
distros:
- amazon2023.3-arm64-large
- name: bazel_coverage
# jstests
- name: jsCore
- name: fle2
- name: aggregation
- name: change_streams
- name: replica_sets_jscore_passthrough_gen
- name: sharding_jscore_passthrough_gen
- name: sharded_collections_jscore_passthrough_gen
- name: aggregation_mongos_passthrough
- name: aggregation_sharded_collections_passthrough
- name: change_streams_mongos_sessions_passthrough
- name: fle2_sharding
# Variant to support Code Coverage on amd64/x86_64
- name: &rhel-93-64-bit-coverage rhel-93-64-bit-coverage
display_name: "~ RHEL 9.3 Code Coverage"
run_on:
- rhel93-medium
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
stepback: false
expansions:
test_flags: --excludeWithAnyTags=resource_intensive,incompatible_with_gcov
compile_flags: >-
--allocator=system
--gcov
--opt=off
--dbg=on
--ssl
MONGO_DISTMOD=rhel93
-j$(grep -c ^processor /proc/cpuinfo)
--variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars
--link-model=dynamic
BAZEL_FLAGS="--remote_download_outputs=all"
large_distro_name: rhel93-medium
resmoke_jobs_factor: 0.5 # Avoid starting too many mongod's
# Mixing --cache and --gcov doesn't work correctly yet. See SERVER-11084
exec_timeout_secs: 32400 # 9 hour timeout
timeout_secs: 18000 # 5 hour idle timeout
use_scons_cache: false
gcov_tool: /opt/mongodbtoolchain/v4/bin/gcov
# The gcov instrumentation saves the path the .gcno files were created in as the default path
# for the .gcda files. In Evergreen the path will start with /data/mci/[Hashed ID]/src/... where
# the hashed ID is unique per task run. GCOV_PREFIX_STRIP is the number of directory levels to
# strip from the top of the default path before appending to the GCOV_PREFIX (if any).
gcov_environment: GCOV_PREFIX=$(pwd)/.. GCOV_PREFIX_STRIP=3
num_scons_link_jobs_available: 0.99
compile_variant: *rhel-93-64-bit-coverage
tasks:
# These are carefully and explicitly curated. Do not add more tests/tasks without consulting with DevProd.
# unittests
- name: compile_and_package_serial_no_unittests_TG
distros:
- rhel93-large
- name: compile_test_parallel_unittest_stream_TG
distros:
- rhel93-large
- name: bazel_coverage
# jstests
- name: jsCore
- name: fle2
- name: aggregation
- name: change_streams
- name: replica_sets_jscore_passthrough_gen
- name: sharding_jscore_passthrough_gen
- name: sharded_collections_jscore_passthrough_gen
- name: aggregation_mongos_passthrough
- name: aggregation_sharded_collections_passthrough
- name: change_streams_mongos_sessions_passthrough
- name: fle2_sharding