Needlessly Postulating Minds
    Have ideas to improve npm?Join in the discussion! »

    mongo-seeding-cli
    TypeScript icon, indicating that this package has built-in type declarations

    3.6.0 • Public • Published

    Mongo Seeding

    Mongo Seeding CLI

    npm version Build Status codecov David David install size

    The ultimate CLI tool for populating your MongoDB database 🚀

    Define MongoDB documents in JSON, JavaScript or even TypeScript file(s). Import them with command line interface.

    Installation

    To install the app, run the following command:

    npm install -g mongo-seeding-cli

    Usage

    1. Follow the tutorial to define documents and collections to import.

    2. In order to seed your database with data from current directory using default configuration, run the following command:

      seed
    3. You can specify custom settings with command line parameters. The following example imports data from ./example/data directory using MongoDB connection URI mongodb://127.0.0.1:27017/mydb with option to drop database before import:

      seed -u 'mongodb://127.0.0.1:27017/mydb' --drop-database ./example/data

      You can also use environmental variables to configure the CLI. For example:

      DB_URI='mongodb://127.0.0.1:27017/mydb' DROP_DATABASE=true seed ./example/data

      Full configuration options are described in Configuration section.

    Configuration

    You can configure data import with command line parameters or environmental variables.

    Note: Command line parameters have always a higher priority over environmental variables.

    Command line parameters

    You can use the following parameters while using seed tool:

    Name Default Value Description
    {PATH} current directory Path to directory containing import data
    --db-uri {URI} or -u {URI} undefined If defined, the URI will be used for establishing connection to database, ignoring values defined via other db-* parameters (e.g. db-name, db-host, etc.)
    --db-protocol {DB_PROTOCOL} mongodb MongoDB database protocol
    --db-host {DB_HOST} 127.0.0.1 MongoDB database host
    --db-port {DB_PORT} 27017 MongoDB database port
    --db-name {DB_NAME} database Name of the database
    --db-username {DB_USERNAME} undefined Username for connecting with database that requires authentication
    --db-password {DB_PASSWORD} undefined Password for connecting with database that requires authentication
    --db-options undefined MongoDB connection options in a form of multiple {key}={value} values, separated by semicolon. For example: ssl=true;maxPoolSize=50
    --drop-database false Drops entire database before data import
    --drop-collections false Drops every collection which is being imported
    --replace-id false Replaces id property with _id for every document during data import
    --set-timestamps false Sets createdAt and updatedAt timestamps for every document during data import
    --reconnect-timeout 10000 Maximum time in milliseconds of waiting for successful MongoDB connection
    --ejson-parse-canonical-mode false Enables EJSON Canonical Mode for all parsed .json files. By default the EJSON Relaxed mode is enabled.
    --transpile-only false Disables type checking on TypeScript files import. This option vastly improves performance of TypeScript data import
    --silent or -s false Disables printing logging of Mongo Seeding status to standard output
    --help or -h n/a Help

    Environmental variables

    You can use the following environmental variables while using seed tool:

    Name Default Value Description
    DB_URI undefined If defined, the URI is used for establishing connection to database, ignoring values given in DB_* environmental variables (e.g. DB_HOST, DB_PORT, etc.).
    DB_HOST 127.0.0.1 MongoDB database host
    DB_PORT 27017 MongoDB database port
    DB_NAME database Name of the database
    DB_USERNAME undefined Username for connecting with database that requires authentication
    DB_PASSWORD undefined Password for connecting with database that requires authentication
    DB_OPTIONS undefined MongoDB connection options in a form of multiple {key}={value} values, separated by semicolon. For example: ssl=true;maxPoolSize=50.
    DROP_DATABASE false Drops entire database before data import
    DROP_COLLECTIONS false Drops every collection which is being imported
    REPLACE_ID false Replaces id property with _id for every document during import; useful for ORMs
    SET_TIMESTAMPS false Sets createdAt and updatedAt timestamps for every document during data import
    RECONNECT_TIMEOUT 10000 Maximum time in milliseconds of waiting for successful MongoDB connection
    EJSON_PARSE_CANONICAL_MODE false Enables EJSON Canonical Mode for all parsed .json files. By default the EJSON Relaxed mode is enabled.
    TRANSPILE_ONLY false Disables type checking on TypeScript files import. This option vastly improves performance of TypeScript data import
    SILENT false Disables printing logging of Mongo Seeding status to standard output

    Install

    npm i mongo-seeding-cli

    DownloadsWeekly Downloads

    761

    Version

    3.6.0

    License

    MIT

    Unpacked Size

    34.2 kB

    Total Files

    19

    Last publish

    Collaborators

    • avatar