91 lines
3.9 KiB
YAML
91 lines
3.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: "~ Code Coverage AL2023.3 Arm64"
|
|
modules: ["asp-js-engine"]
|
|
run_on:
|
|
- amazon2023.3-arm64-m8g-4xlarge
|
|
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
|
|
stepback: false
|
|
expansions:
|
|
test_flags: --excludeWithAnyTags=resource_intensive,incompatible_with_gcov
|
|
bazel_compile_flags: >-
|
|
--allocator=system
|
|
--opt=off
|
|
--dbg=True
|
|
--define=MONGO_DISTMOD=amazon2023
|
|
--linkstatic=False
|
|
--gcov=True
|
|
--collect_code_coverage
|
|
${coverage_bazel_tags}
|
|
large_distro_name: amazon2023.3-arm64-m8g-4xlarge
|
|
resmoke_jobs_factor: 0.5 # Avoid starting too many mongod's
|
|
exec_timeout_secs: 32400 # 9 hour timeout
|
|
timeout_secs: 18000 # 5 hour idle timeout
|
|
gcov_tool: /opt/mongodbtoolchain/v5/bin/llvm-cov 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
|
|
compile_variant: *AL2023-arm64-coverage
|
|
tasks:
|
|
- name: compile_and_package_serial_no_unittests_TG
|
|
distros:
|
|
- amazon2023.3-arm64-xlarge
|
|
# These are carefully and explicitly curated. Do not add more tests/tasks without consulting with DevProd.
|
|
# unittests
|
|
- name: bazel_coverage
|
|
distros:
|
|
- amazon2023.3-arm64-xlarge
|
|
# 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
|
|
# All streams jstest tasks excluding some that are not compatible at the moment.
|
|
- name: .streams_release_test !streams_aspio_iceberg_large !streams_externaljs
|
|
|
|
# Variant to support Code Coverage on amd64/x86_64
|
|
- name: &rhel-93-64-bit-coverage rhel-93-64-bit-coverage
|
|
display_name: "~ Code Coverage RHEL 9.3"
|
|
run_on:
|
|
- rhel93-medium
|
|
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
|
|
stepback: false
|
|
expansions:
|
|
test_flags: --excludeWithAnyTags=resource_intensive,incompatible_with_gcov
|
|
bazel_compile_flags: >-
|
|
--allocator=system
|
|
--gcov=True
|
|
--opt=off
|
|
--dbg=True
|
|
--define=MONGO_DISTMOD=rhel93
|
|
--linkstatic=False
|
|
${coverage_bazel_tags}
|
|
large_distro_name: rhel93-medium
|
|
resmoke_jobs_factor: 0.5 # Avoid starting too many mongod's
|
|
exec_timeout_secs: 32400 # 9 hour timeout
|
|
timeout_secs: 18000 # 5 hour idle timeout
|
|
gcov_tool: /opt/mongodbtoolchain/v5/bin/llvm-cov 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
|
|
compile_variant: *rhel-93-64-bit-coverage
|
|
tasks:
|
|
# These are carefully and explicitly curated. Do not add more tests/tasks without consulting with DevProd.
|
|
- name: bazel_coverage
|
|
distros:
|
|
- rhel93-xlarge
|