Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-46141

Testing burn_in_tests requires multiversion installation

    XMLWordPrintable

    Details

    • Backwards Compatibility:
      Fully Compatible
    • Backport Requested:
      v4.4
    • Sprint:
      DAG 2020-04-06
    • Story Points:
      3

      Description

      When I run the tests for burn_in_tests (`python -m unittest buildscripts\/tests\/test_burn_in_tests.py`), I get the following error that mongo-4.2 is not installed:

      ======================================================================
      ERROR: test_one_task_one_test (buildscripts.tests.test_burn_in_tests.TestCreateMultiversionGenerateTasksConfig)
      ----------------------------------------------------------------------
      Traceback (most recent call last):
        File "/Users/lydia.stepanek/src/mongo/buildscripts/tests/test_burn_in_tests.py", line 634, in test_one_task_one_test
          evg_config, tests_by_task, evg_api, gen_config)
        File "/Users/lydia.stepanek/src/mongo/buildscripts/burn_in_tests.py", line 665, in create_multiversion_generate_tasks_config
          TASK_PATH_SUFFIX)
        File "/Users/lydia.stepanek/src/mongo/buildscripts/evergreen_gen_multiversion_tests.py", line 142, in get_exclude_files
          last_stable_commit_hash = get_backports_required_last_stable_hash(task_path_suffix)
        File "/Users/lydia.stepanek/src/mongo/buildscripts/evergreen_gen_multiversion_tests.py", line 96, in get_backports_required_last_stable_hash
          shell_version = check_output([last_stable_shell_exec, "--version"]).decode('utf-8')
        File "/Users/lydia.stepanek/.pyenv/versions/3.7.0/lib/python3.7/subprocess.py", line 376, in check_output
          **kwargs).stdout
        File "/Users/lydia.stepanek/.pyenv/versions/3.7.0/lib/python3.7/subprocess.py", line 453, in run
          with Popen(*popenargs, **kwargs) as process:
        File "/Users/lydia.stepanek/.pyenv/versions/3.7.0/lib/python3.7/subprocess.py", line 756, in __init__
          restore_signals, start_new_session)
        File "/Users/lydia.stepanek/.pyenv/versions/3.7.0/lib/python3.7/subprocess.py", line 1499, in _execute_child
          raise child_exception_type(errno_num, err_msg, err_filename)
      FileNotFoundError: [Errno 2] No such file or directory: '/data/multiversion/mongo-4.2': '/data/multiversion/mongo-4.2'
       
      ----------------------------------------------------------------------
      Ran 77 tests in 52.378s
       
      FAILED (errors=4)
      

      My understanding is that this test requires a developer to run `buildscripts\/evergreen_gen_multiversion_tests.py` locally in order to create the necessary multiversion mocks that the test needs to run. We should separate these tests into a separate file so that testing burn_in_tests does not also test multiversion setup, since they are different things.

      As a MongoDB engineer, I should be able to run burn_in_tests tests without needing any multiversion-related dependencies to be installed.

      AC:

      • The above error does not occur when running test_burn_in_tests.py

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              alexander.costas Alexander Costas
              Reporter:
              lydia.stepanek Lydia Stepanek
              Participants:
              Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: