diff options
author | Yves Duhem <yves.duhem@mongodb.com> | 2018-01-17 17:02:52 -0500 |
---|---|---|
committer | Yves Duhem <yves.duhem@mongodb.com> | 2018-01-17 17:02:52 -0500 |
commit | 0006869bf571ef76636a3cc75b033de4e6f168c6 (patch) | |
tree | b206790c4cdf140e36a521b358a8f29eb8f49e83 | |
parent | 903bbae76a2c690a7e91c9acaaa07648e4448ff9 (diff) | |
download | mongo-0006869bf571ef76636a3cc75b033de4e6f168c6.tar.gz |
SERVER-30565 Move burn_in_tests.py invocation out of compile task
(cherry picked from commit 7969a3e83d918a9a3ccaae65c6509b1abad4b34e)
Also includes the following related fix:
SERVER-30634 Fix burn_in_tests test detection on Windows
(cherry picked from commit 6b815203b752f4a1e1f8f810b7dda5e0a331b4ea)
-rw-r--r-- | etc/evergreen.yml | 39 |
1 files changed, 31 insertions, 8 deletions
diff --git a/etc/evergreen.yml b/etc/evergreen.yml index 3d62987e75a..4aee63f0e35 100644 --- a/etc/evergreen.yml +++ b/etc/evergreen.yml @@ -1278,14 +1278,6 @@ tasks: ${strip_command|/usr/bin/strip} mongobridge fi - # If this is a scheduled build, we check for changes against the last scheduled commit. - if [ "${is_patch}" != "true" ]; then - burn_in_args="--checkEvergreen" - fi - - # Capture a list of new and modified tests. - ${python|/opt/mongodbtoolchain/v2/bin/python2} buildscripts/burn_in_tests.py --branch=${branch_name} --buildVariant=${build_variant} --testListOutfile=jstests/new_tests.json --noExec $burn_in_args - # On windows we need to make sure the paths in unittests.txt are compatible with cygwin tar sed 's|\\|/|g' build/unittests.txt > build/unittests-tarlist.txt ${tar|tar} -czvf mongodb-unittests.tgz -T build/unittests-tarlist.txt build/unittests.txt @@ -1422,7 +1414,38 @@ tasks: depends_on: - name: compile commands: + - command: git.get_project + # The repository is cloned in a directory distinct from src for the modified test detection + # because the extraction of the artifacts performed in the 'do setup' causes + # 'git diff --name-only' to see all tests as modified on Windows (git 1.9.5). See SERVER-30634. + params: + directory: burn_in_tests_clonedir + revisions: # for each module include revision as <module_name> : ${<module_name>_rev} + enterprise: ${enterprise_rev} + - command: shell.exec - func: "do setup" + - func: "set up virtualenv" + - command: shell.exec + params: + working_dir: burn_in_tests_clonedir + script: | + set -o errexit + # Create a symbolic link to the venv in the src directory so activate_virtualenv can use it + # if it exists. + ln -s ../src/venv venv + ${activate_virtualenv} + set -o verbose + # If this is a scheduled build, we check for changes against the last scheduled commit. + if [ "${is_patch}" != "true" ]; then + burn_in_args="--checkEvergreen" + fi + # Copy the dbtest executable from the src dir because burn_in_tests.py calls it to get the + # list of dbtest suites. + cp ../src/dbtest${exe} . + # Capture a list of new and modified tests. + ${python|/opt/mongodbtoolchain/v2/bin/python2} buildscripts/burn_in_tests.py --branch=${branch_name} --buildVariant=${build_variant} --testListOutfile=jstests/new_tests.json --noExec $burn_in_args + # Copy the results to the src dir. + cp jstests/new_tests.json ../src/jstests/new_tests.json - func: "do multiversion setup" - func: "run tests" vars: |