summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErwin Pe <erwin.pe@mongodb.com>2022-11-28 20:12:05 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-11-28 20:59:13 +0000
commit144a37f14dc2584d975aa8f9b1bab963ac1ba196 (patch)
treeaf0886d1ae3f8e6e2d3c6742d16b5449a53982d9
parent804a503820b0bd377bd50885fdd4c4a9201abeff (diff)
downloadmongo-144a37f14dc2584d975aa8f9b1bab963ac1ba196.tar.gz
SERVER-71336 Add sys-perf buildvariant to run QE performance tests
-rwxr-xr-xetc/system_perf.yml110
1 files changed, 106 insertions, 4 deletions
diff --git a/etc/system_perf.yml b/etc/system_perf.yml
index 009261a7bed..19def22166c 100755
--- a/etc/system_perf.yml
+++ b/etc/system_perf.yml
@@ -26,6 +26,13 @@ variables:
variant: compile-amazon-linux2-arm64
- name: schedule_global_auto_tasks
variant: task_generation
+ _real_compile_amazon_linux2_arm64_with_mongocrypt_shlib: &_compile_amazon_linux2_arm64_with_mongocrypt_shlib
+ - name: compile
+ variant: compile-amazon-linux2-arm64
+ - name: compile_mongocrypt_shlib
+ variant: compile-amazon-linux2-arm64-mongocrypt-shlib
+ - name: schedule_global_auto_tasks
+ variant: task_generation
_real_expansions: &_expansion_updates
[]
###
@@ -41,6 +48,9 @@ variables:
# _skip_compile_amazon_linux2_arm64: &_compile_amazon_linux2_arm64
# - name: schedule_global_auto_tasks
# variant: task_generation
+# _skip_compile_amazon_linux2_arm64_with_mongocrypt_shlib: &_compile_amazon_linux2_arm64_with_mongocrypt_shlib
+# - name: schedule_global_auto_tasks
+# variant: task_generation
# _skip_expansions: &_expansion_updates
# # This is the normal (amazon2) "compile" artifact from https://evergreen.mongodb.com/version/sys_perf_97c6a9e443ff7e171b7310a1fa5c05d0768faff9
# - key: mdb_binary_for_client
@@ -256,8 +266,8 @@ functions:
params: {script: "echo"}
###
- # Compile
- compile mongodb:
+ # Prepares the environment before compiling the binaries
+ compile prep:
# We create a virtual environment with the Python dependencies for compiling the server
# installed.
- command: shell.exec
@@ -317,6 +327,11 @@ functions:
- command: expansions.update
params:
file: src/compile_expansions.yml
+ ###
+
+ ###
+ # Compile mongodb
+ compile mongodb:
- command: shell.exec
params:
working_dir: src/mongo-tools/src/github.com/mongodb/mongo-tools
@@ -388,6 +403,29 @@ functions:
display_name: mongodb${compile-variant|}.tar.gz
###
+ ###
+ # Compile mongo_crypt_v1 shared library
+ compile mongocrypt shlib:
+ - command: shell.exec
+ params:
+ working_dir: src
+ script: |
+ set -o errexit
+ set -o verbose
+ source "${workdir}/compile_venv/bin/activate"
+ python ./buildscripts/scons.py ${compile_flags|} ${scons_cache_args|} $extra_args SPLIT_DWARF=0 archive-mongo-crypt-dev MONGO_VERSION=${version} DESTDIR=$(pwd)/crypt-lib-${version} PKGDIR=$(pwd) ${patch_compile_flags|}
+ - command: s3.put
+ params:
+ aws_key: ${aws_key}
+ aws_secret: ${aws_secret}
+ local_file: src/mongo-crypt-dev.tgz
+ remote_file: ${project_dir}/${version_id}/${revision}/${platform}/mongo_crypt_shared_v1-${compile-variant|}-${version_id}.tgz
+ bucket: mciuploads
+ permissions: public-read
+ content_type: ${content_type|application/x-gzip}
+ display_name: mongo_crypt_shared_v1-${version|}-${compile-variant|}.tgz
+ ###
+
## Schedule Tasks ##
f_schedule_tasks:
- command: git.get_project
@@ -493,8 +531,20 @@ tasks:
revisions:
enterprise: ${enterprise_rev}
mongo-tools: ${mongo-tools_rev}
+ - func: "compile prep"
- func: "compile mongodb"
+ - name: compile_mongocrypt_shlib
+ commands:
+ - command: manifest.load
+ - command: git.get_project
+ params:
+ directory: src
+ revisions:
+ enterprise: ${enterprise_rev}
+ - func: "compile prep"
+ - func: "compile mongocrypt shlib"
+
- name: renew_ssl_cert
commands:
- command: git.get_project
@@ -1162,6 +1212,33 @@ buildvariants:
tasks:
- name: compile
+ - name: compile-amazon-linux2-arm64-mongocrypt-shlib
+ display_name: Compile mongo_crypt_v1.so for Amazon Linux 2 arm64
+ modules: *modules
+ cron: "0 0 * * 4" # 00:00 on Thursday
+ expansions:
+ <<: *compile-expansions
+ compile-variant: -arm64
+ compile_flags: >-
+ --separate-debug
+ MONGO_DISTMOD=amazon2
+ -j$(grep -c ^processor /proc/cpuinfo)
+ --release
+ --variables-files=etc/scons/mongodbtoolchain_v3_gcc.vars
+ --allocator=system
+ --enable-free-mon=off
+ --enterprise-features=fle,search
+ --js-engine=none
+ --link-model=dynamic-sdk
+ --enable-http-client=off
+ --ssl=off
+ SHLINKFLAGS_EXTRA="-Wl,-Bsymbolic -Wl,--no-gnu-unique"
+ CCFLAGS="-fno-gnu-unique"
+ run_on:
+ - "amazon2-arm64"
+ tasks:
+ - name: compile_mongocrypt_shlib
+
- name: linux-standalone
display_name: Linux Standalone Legacy
cron: "0 0 * * 2,4,6" # Tuesday, Thursday and Saturday at 00:00
@@ -2717,16 +2794,41 @@ buildvariants:
# authentication: enabled
# fle: enabled
# storageEngine: wiredTiger
- # compile_variant: "-arm64"
+ # compile-variant: "-arm64"
+ # requires_mongocrypt_shlib: true
# run_on:
# - "rhel70-perf-single"
- # depends_on: *_compile_amazon_linux2_arm64
+ # depends_on: *_compile_amazon_linux2_arm64_with_mongocrypt_shlib
# tasks:
# - name: schedule_patch_auto_tasks
# - name: schedule_variant_auto_tasks
# - name: industry_benchmarks
# - name: linkbench
+ # - name: linux-shard-lite-fle.2022-11
+ # display_name: Linux Shard Lite FLE 2022-11
+ # cron: "0 0 * * *" # Everyday at 00:00 to build up history
+ # # cron: "0 0 * * 0,4" # 00:00 on Sunday,Thursday
+ # modules: *modules
+ # expansions:
+ # mongodb_setup_release: 2022-11
+ # mongodb_setup: shard-lite-fle
+ # infrastructure_provisioning_release: 2022-11
+ # infrastructure_provisioning: shard-lite
+ # workload_setup: 2022-11
+ # platform: linux
+ # project_dir: *project_dir
+ # authentication: enabled
+ # storageEngine: wiredTiger
+ # compile-variant: "-arm64"
+ # requires_mongocrypt_shlib: true
+ # run_on:
+ # - "rhel70-perf-shard-lite"
+ # depends_on: *_compile_amazon_linux2_arm64_with_mongocrypt_shlib
+ # tasks:
+ # - name: schedule_patch_auto_tasks
+ # - name: schedule_variant_auto_tasks
+
# - name: linux-1-node-replSet-ese-cbc.2022-11
# display_name: Linux 1-Node ReplSet ESE CBC 2022-11
# cron: "0 0 * * *" # Everyday at 00:00 to build up history