0.3.1 • Published 8 months ago

@mongoosejs/migrations v0.3.1

Weekly downloads
-
License
-
Repository
-
Last release
8 months ago

migrations

Mongoose Migration Framework

Getting Started

// Import the migration framework. Put this import **before** any other imports,
// except dotenv or other environment configuration
const migrations = require('@mongoosejs/migrations');

const Character = require('./models/character');
const mongoose = require('mongoose');

run().catch(err => { console.error(err); process.exit(-1); });

async function run() {
  await mongoose.connect('mongodb://localhost:27017/migrations_examples');
  // Tell the migration framework that a migration is starting.
  // Set `restart` option if you want to restart a previously failed migration.
  await migrations.startMigration({ restart: process.env.RESTART });

  try {
    // Put any migration logic here - update, save, eachAsync, etc.
    await Character.updateMany({}, { $set: { ship: 'USS Enterprise' } });
  } finally {
    // Make sure to always call `endMigration()`, even if errors occur
    await migrations.endMigration();
    await mongoose.disconnect();
  }
}

UI Setup

You can run the Migration Framework UI as an executable using the provided migration-ui command:

env PORT=3001 env MONGO_URI="mongodb://localhost:27017/mydb" ./node_modules/.bin/migration-ui

You can also import the Migration Framework UI to your Express app:

Note: you are responsible for securing the Migration Framework UI. There is currently no restrictions on the UI or API: anyone that can access the Migration Framework UI's URL can read migration data. Note: do not run the Migration Framework UI in the same process that runs migrations.

0.3.1

8 months ago

0.3.0

1 year ago

0.2.5

2 years ago

0.2.4

2 years ago

0.2.1

2 years ago

0.2.0

2 years ago

0.2.3

2 years ago

0.2.2

2 years ago

0.1.3

2 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago

0.0.5

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago