Socket
Book a DemoInstallSign in
Socket

node-migrate-mongo-orzfly

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

node-migrate-mongo-orzfly

Migrations for MongoDB

1.6.0
latest
Source
npmnpm
Version published
Weekly downloads
1
-75%
Maintainers
1
Weekly downloads
 
Created
Source

node-migrate-mongo

Migrations for MongoDB

build status npm version mit license we're hiring

node-migrate-mongo enables data migrations in your existing project. The state of your migrations is stored in the database specified in the mongo property of your Migratefile.coffee. By default, this collection is called migration_versions. See the Usage section (and let's be honest: the code) for more information.

Despite the name, this module does not borrow from TJ's node-migrate, though it follows very similar conventions.

Usage

In your existing project where you'd like to have migrations:

npm install --save node-migrate-mongo
cat << EOF- > Migratefile.coffee
  module.exports =
    mongo: 'mongodb://localhost/your_db'
EOF
migrate generate --name my_first_migration
# edit it
migrate all

Migratefile Options

  • beforeTest -- An async function called before running a migration test. By default sets NODE_ENV=test.
  • before -- An async function called before running a command. Useful for connecting your app to its database.
  • after -- An async function called after running a command.
  • afterTest -- An async function called after running a migration test.
  • mongo -- A string or function that returns a mongo connection string.
  • model -- A reference to your custom MigrationVersion model.
  • path -- The place to store your migration files. Defaults to migrations.
  • ext -- The extension for your migration files. Defaults to coffee.
  • template -- The template used when generating migrations.
  • context -- Values provided as part of this within all migration functions (up, down, and test)
  • transform -- A function that allows you to transform migrations before they are run.

before/after callbacks are called in this order: [ beforeTest, before, after, afterTest ]

Migrations that take promises

One way to accomplish this is with a Migratefile that looks like this, which will allow you to define migrations with upPromise, downPromise, and testPromise functions:

var Promise = require 'bluebird';

module.exports = {
  transform: function(migration) {
    ['up', 'down', 'test'].forEach(function(fn) {
      var promiseVersion = migration[fn + "Promise"];
      if (promiseVersion) {
        migration[fn] = function(done) {
          return Promise.resolve(promiseVersion()).nodeify(done);
        };
      }
    });
    return migration;
  }
}

Contributing

Please follow our Code of Conduct when contributing to this project.

$ git clone https://github.com/goodeggs/node-migrate-mongo && cd node-migrate-mongo
$ npm install
$ npm test

Module scaffold generated by generator-goodeggs-npm.

Keywords

mongo mongoose migrate migrations database

FAQs

Package last updated on 17 Jan 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.