Deprecate mongo-orchestration in favor of mongodb-runner

XMLWordPrintableJSON

    • Not Needed

      Summary

      What is the problem or use case, what are we trying to achieve?
      Mongo Orchestration is under-maintained, and it not well architected. It is brittle and adds layers of indirection that are not needed.
      The DevTools team has been maintaining mongodb-runner, a tool that offers most of what mongo-orchestration provides.
      We propose adding the missing features to mongodb-runner, removing the usage of mongo-orchestration in drivers-evergreen-tools, and deprecating mongo-orchestration.

      Implementation plan:

      • Verify that we can run all of the orchestration files in drivers-evergreen-tools with minimal changes to mongodb-runner.
      • Create a node package in the orchestration folder that replaces the functionality of drivers_orchestration.py and mongo-orchestration.
      • Test the node package with the python driver
      • Merge required changes into mongodb-runner.
      • Ensure that no essential functionality is lost for drivers.
      • Make a PR that replaces the python package in orchestration.
      • Deprecate the mongo-orchestration package.

      Considerations:

      • We need to ensure that no current functionality is lost, including the ability to define another source of mongodb artifact information and the ability to use an existing binary directory.
      • The mongo-c-driver and mongo-cxx-driver repos would need to be updated to use the higher level run-orchestration.sh and stop-orchestration.sh
      • mongomirror and mongosync have already pinned to an older version of drivers-evergreen tools. They could keep doing that or vendor the old start-orchestration.sh file. Eventually they'd need a to migrate to another solution using mongodb-runner or another tool.
      • The following repos are currently using mongo-orchestration directly and would need to migrate off eventually: mongosql-auth-c, sql-engines-common-test-infra, bson-ruby, mongotune

            Assignee:
            Unassigned
            Reporter:
            Steve Silvester
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: