migrate-mongodb-persistence

v0.0.0
Mixin for [`migrate`](https://npm.im/migrate) CLI that will persist current migration state to a MongoDB collection instead of a flat file.

migrate-mongodb-persistence

Mixin for migrate CLI that will persist current migration state to a MongoDB collection instead of a flat file.

This is useful when you have several transient application servers (and filesystems) sharing a single database. You only need to migrate once per database; not once per filesystem.

This makes migrate behave more like Django South or Ruby on Rails ActiveRecord Migrations.

Usage

  1. Make sure you're using a branch of migrate that supports mixins. npm install --save-dev git://github.com/gobengo/node-migrate#012015_mixins.

  2. Create a new module like tools/store-migration-state-in-mongo.js. Something like:

    var mongoDbConnectionString = 'localhost'; // or get from your config file
    var migrationStateCollectionname = 'migration_state'; // or whatever
    
    module.exports = require('migrate-mongo-persistence')(
        mongoDbConnectionString, migrationStateCollectionname);
    
  3. When running the migrate cli, use your mixin like ./node_modules/.bin/migrate --use tools/store-migration-state-in-mongo.js <migrateCommand>

npm i migrate-mongodb-persistence

Metadata

  • ISC
  • Whatever
  • Unknown
  • released 1/7/2015

Downloads

Maintainers