mongodb-runner
TypeScript icon, indicating that this package has built-in type declarations

5.6.2 • Public • Published

mongodb-runner

Helper for spinning up MongoDB servers and clusters for testing.

Example usage

Note: Version 5 of mongodb-runner is a full re-write. Many things work differently in version 5 and above.

$ npx mongodb-runner start -t sharded
$ npx mongodb-runner start -t replset -- --port 27017
$ npx mongodb-runner start -t replset -- --setParameter allowDiskUseByDefault=true
$ npx mongodb-runner stop --all
$ npx mongodb-runner exec -t standalone -- sh -c 'mongosh $MONGODB_URI'
$ npx mongodb-runner exec -t standalone -- --setParameter allowDiskUseByDefault=true -- sh -c 'mongosh $MONGODB_URI'

Options

mongodb-runner <command>

Commands:
  mongodb-runner start  Start a MongoDB instance
  mongodb-runner stop   Stop a MongoDB instance
  mongodb-runner ls     List currently running MongoDB instances
  mongodb-runner exec   Run a process with a MongoDB instance (as MONGODB_URI
                        env var)

Options:
  -t, --topology     Select a topology type
           [choices: "standalone", "replset", "sharded"] [default: "standalone"]
      --arbiters     number of arbiter nodes for each replica set       [number]
      --secondaries  number of secondaries for each replica set         [number]
      --shards       number of shards for sharded clusters              [number]
      --version      MongoDB server version to use                      [string]
      --logDir       Directory to store server log files in             [string]
      --binDir       Directory containing mongod/mongos binaries        [string]
      --tmpDir       Directory for temporary files    [string] [default: "/tmp"]
      --runnerDir    Directory for storing cluster metadata
                           [string] [default: "/home/addaleax/.mongodb/runner2"]
      --docker       Docker image name to run server instances under    [string]
      --id           ID to save the cluster metadata under              [string]
      --all          for `stop`: stop all clusters                     [boolean]
      --debug        Enable debug output                               [boolean]
      --help         Show help                                         [boolean]

Programmatic use

import { MongoCluster } from 'mongodb-runner';

const cluster = await MongoCluster.start({
  topology: 'standalone'
});

try {
  console.log(cluster.connectionString);
} finally {
  await cluster.close();
}

License

Apache 2.0

/mongodb-runner/

    Package Sidebar

    Install

    npm i mongodb-runner

    Weekly Downloads

    29,063

    Version

    5.6.2

    License

    Apache-2.0

    Unpacked Size

    85.1 kB

    Total Files

    33

    Last publish

    Collaborators

    • orechova
    • himanshusinghs
    • c-buckingham
    • mongo-j
    • mabaasit
    • alexander_schroll
    • chuck.kalmanek
    • mongodb-js-user
    • rueckstiess
    • durran
    • lerouxb
    • fredtruman
    • mbroadst
    • hswolff
    • satyasinha
    • matt_d_rat
    • rhysm
    • tomhollander
    • alena.khineika
    • jeff-allen-mongo
    • mmarcon
    • jonathan.balsano
    • mongodb-build
    • jack.weir
    • stennie
    • mcasimir
    • kristina.stefano
    • jarjee
    • shaketbaby
    • devtoolsbot
    • addaleax
    • gribnoysup
    • mutukrish
    • tylerbrock
    • imlucas
    • cilix
    • kangas
    • micheal.parks
    • machyne
    • schwartzrw
    • i80and
    • kay-kim
    • glowe
    • dpercy
    • redondos