0.0.21 • Published 7 years ago

monzgration v0.0.21

Weekly downloads
1
License
MIT
Repository
github
Last release
7 years ago

monzgration

Build Status

Meteor friendly mongodb migrations.

Needs Meteor 1.4+ with node v4+ not tested with early node versions. Aiming to be a drop in replacement for Mongration but for Meteor as this library needs the Fibers library to work. I will respond to any issues quickly so please report any bugs or problems.

install

npm install monzgration --save

migration files

module.exports = {
    id: 'unique_id_goes_here',

    up: function(db, callback) {
        console.log('ran an up migration.')
        // db.insert etc
        // you must call the callback.
        // --> use async series / promises / generators here.
        callback();
    },

    down: function(db, callback) {
        console.log('ran down migration.')
        callback();
    }
};

usage with Meteor

const Monzgration = new _monzgration ({
    mongo_url: 'mongodb://localhost:27107/test', // makes a seperate connection
    persist: 'metastore' // mongo collection where metadata is stored.
});

Monzgration.add('migrations/1.js');
Monzgration.add('migrations/2.js');
Monzgration.add('migrations/3.js');

Monzgration.migrate(function (err, complete) {
    if (!err) console.log (complete);
});

Pass in files as an array

const Monzgration = new _monzgration ({
    mongo_url: 'mongodb://localhost:27107/test',
    persist: 'metastore'
    files: [
        'migrations/1.js',
        'migrations/2.js'
    ]
});

use Meteor's mongo client

// https://github.com/meteor/meteor/issues/532
//const db = MongoInternals.defaultRemoteCollectionDriver().mongo.db;
const db = new Collection('temp').rawDatabase();

// Instanciating Migration settings
const migrationSettings = {
    migrationPath,
    persist: 'sys_metastore',
    driver: db
};

outside Meteor

This library uses Fibers and Futures to be Meteor Compatible so make sure to run the code within a Fiber, see the tests for an example of how to do this.

from the command line

monzgration --mongo-url mongodb://localhost:27017/meteor --metastore sys_metastore_debug --directory test/mock/should_succeed
0.0.21

7 years ago

0.0.20

7 years ago

0.0.19

7 years ago

0.0.18

7 years ago

0.0.17

7 years ago

0.0.16

7 years ago

0.0.15

7 years ago

0.0.14

7 years ago

0.0.12

7 years ago

0.0.11

7 years ago

0.0.10

7 years ago

0.0.9

7 years ago

0.0.8

7 years ago

0.0.7

7 years ago

0.0.6

7 years ago

0.0.4

7 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago