0.0.21 • Published 9 years ago

monzgration v0.0.21

Weekly downloads
1
License
MIT
Repository
github
Last release
9 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

9 years ago

0.0.20

10 years ago

0.0.19

10 years ago

0.0.18

10 years ago

0.0.17

10 years ago

0.0.16

10 years ago

0.0.15

10 years ago

0.0.14

10 years ago

0.0.12

10 years ago

0.0.11

10 years ago

0.0.10

10 years ago

0.0.9

10 years ago

0.0.8

10 years ago

0.0.7

10 years ago

0.0.6

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago