https://github.com/peterdee/sequelize-auto-migrations
Sequelize Auto-migrations fork
https://github.com/peterdee/sequelize-auto-migrations
Last synced: over 1 year ago
JSON representation
Sequelize Auto-migrations fork
- Host: GitHub
- URL: https://github.com/peterdee/sequelize-auto-migrations
- Owner: peterdee
- License: mit
- Created: 2019-05-13T06:36:37.000Z (about 7 years ago)
- Default Branch: add_complete_status
- Last Pushed: 2019-05-13T06:41:58.000Z (about 7 years ago)
- Last Synced: 2025-01-21T10:11:15.585Z (over 1 year ago)
- Language: JavaScript
- Size: 57.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# sequelize-auto-migrations
Migration generator && runner for sequelize
This package provide two tools:
* `makemigration` - tool for create new migrations
* `runmigration` - tool for apply created by first tool migrations
## Install
`npm install sequelize-auto-migrations`
## Usage
* Init sequelize, with sequelize-cli, using `sequelize init`
* Create your models
* Create initial migration - run:
`makemigration --name `
* Change models and run it again, model difference will be saved to the next migration
To preview new migration, without any changes, you can run:
`makemigration --preview`
`makemigration` tool creates `_current.json` file in `migrations` dir, that is used to calculate difference to the next migration. Do not remove it!
To create and then execute migration, use:
`makemigration --name -x`
## Executing migrations
* There is simple command to perform all created migrations (from selected revision):
`runmigration`
* To select a revision, use `--rev `
* If migration fails, you can continue, use `--pos `
* To prevent execution next migrations, use `--one`
For more information, use `makemigration --help`, `runmigration --help`
## TODO:
* Migration action sorting procedure need some fixes. When many foreign keys in tables, there is a bug with action order. Now, please check it manually (`--preview` option)
* Need to check (and maybe fix) field types: `BLOB`, `RANGE`, `ARRAY`, `GEOMETRY`, `GEOGRAPHY`
* Downgrade is not supported, add it
* This module tested with postgresql (I use it with my projects). Test with mysql and sqlite.