Grunt plugin providing Sequelize's CLI functionality.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
assets
lib
tasks
test
.eslintignore
.eslintrc
.gitignore
.travis.yml
History.md
LICENSE-MIT
README.md
package.json

README.md

grunt-sequelize

Build Coverage Status

Dependency Status devDependency Status

Sequelize migrations from Grunt

Getting Started

This plugin requires Grunt ~0.4.1

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-sequelize --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-sequelize');

The "sequelize" task

Overview

In your project's Gruntfile, add a section named sequelize to the data object passed into grunt.initConfig().

grunt.initConfig({
  sequelize: {
    options: {
      migrationsPath: 'db/migrations',
      config: 'db/config.json'
    }
  }
})

Options

options.migrationsPath

Type: String

A string value that is used to location your migration files.

options.config

Type: String

A string value that is used to locate your sequelize db config.

Example of config.json
{
  "development": {
    "username": "user",
    "password": "pwd",
    "database": "my_cool_db"
  }
}

Running tasks

Both the migrate and undo tasks have been ported from Sequelize's original CLI.

Migrate

You can run the migrations up to the top migration by running:

$ grunt sequelize:migrate

or

$ grunt sequelize:migrate:up

Undo

In order to migrate down the latest migration, use:

$ grunt sequelize:migrate:undo

Redo

Also you can redo latest migration by running:

$ grunt sequelize:migrate:redo

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Validate and test your code by running

$ npm run lint

Release History

(Nothing yet)