Migration engine for MongoDB
Supports CLI
$ python -m pip install mmigratorinit command (see below) will create a mmigrator.config.json file
with following structure:
{
"dist": "migrations",
"connection": {
"host": "",
"port": "",
"database": "",
"user": "",
"password": ""
}
}Connection variables could be set from .env|.json files.
e.g. from .env file:
{
"host": ".env[MONGO_HOST]",
"port": ".env[MONGO_PORT]",
"database": ".env[MONGO_DB]",
"user": ".env[MONGO_USER]",
"password": ".env[MONGO_PASSWORD]"
}$ mmigrator helpoptional, will run automatically on any migration command*
$ mmigrator initfrom mmigrator import MigrationManager
...
MigrationManager.init()$ mmigrator g SomeName
# or
$ mmigrator new SomeNameMigrationManager.generate("SomeName")$ mmigrator migrate # or mmigrator run
# add --silent flag for dry-run (skip exceptions)
$ mmigrator migrate --silentMigrationManager.migrate() # or MigrationManager.run()
# add silent=True flag for dry-run (skip exceptions)
MigrationManager.migrate(silent=True)$ mmigrator revert # or mmigrator rollback
# add --silent flag for dry-run (skip exceptions)
$ mmigrator revert --silentMigrationManager.revert() # or MigrationManager.rollback()
# add silent=True flag for dry-run (skip exceptions)
MigrationManager.revert(silent=True)