# sails-grunt-task-db-migrate

> db-migrate integration for sails.js including db:create, db:drop and db:seed

Latest version **1.0.2** (published 2021-04-07) · 0 weekly downloads

## Install

```sh
npm install sails-grunt-task-db-migrate
pnpm add sails-grunt-task-db-migrate
yarn add sails-grunt-task-db-migrate
bun add sails-grunt-task-db-migrate
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.2 |
| Published | 2021-04-07 |
| First published | 2021-03-19 |
| Weekly downloads | 0 |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 19.4 KB |
| Known vulnerabilities | 0 |
| Install scripts | yes |
| GitHub stars | 0 |
| Author | Velmurugan Nagarajan |
| Maintainers | sureshkumarnagarajanmca |
| Keywords | sails, database, migrations, sails-grunt-task-db-migrate, sails-grunt-task, sails-grunt-task-db, sails-grunt-task-migrate, sails-db, sails-grunt, sails-grunt-db, sails-task, sails-migrate, sails migration, sails migrate, db-create, db-drop, db-seed |

## Links

- npm: https://www.npmjs.com/package/sails-grunt-task-db-migrate
- Repository: https://github.com/sureshkumarnagarajanmca/sails-grunt-task-db-migrate
- Issues: https://github.com/sureshkumarnagarajanmca/sails-grunt-task-db-migrate/issues
- npm.io page: https://npm.io/package/sails-grunt-task-db-migrate

## Recent versions

- 1.0.2 (latest) — 2021-04-07
- 1.0.1 — 2021-04-07
- 1.0.0 — 2021-04-07
- 0.0.38 — 2021-03-31
- 0.0.37 — 2021-03-31
- 0.0.36 — 2021-03-31
- 0.0.35 — 2021-03-31
- 0.0.34 — 2021-03-31
- 0.0.33 — 2021-03-25
- 0.0.32 — 2021-03-25
- 0.0.31 — 2021-03-25
- 0.0.30 — 2021-03-25
- 0.0.29 — 2021-03-25
- 0.0.28 — 2021-03-24
- 0.0.27 — 2021-03-24
- … 26 more at https://npm.io/package/sails-grunt-task-db-migrate/versions

## README

# sails-grunt-task-db-migrate

[db-migrate][] integration for [Sails.js][]. This is a fairly simple wrapper,
which provides [grunt][] tasks for running and creating migrations. It also
extracts the database configuration from the Sails config, so you don't have to
duplicate you config in a `database.json` file.

Supports Sails 0.10.x+ till Sails 1.2.4.

You don't need to install the dependencies manually. Instead, the dependencies ( like db-migrate, db-migrate-mongodb, etc... ) will be installed automatically. Before install this npm, please create `config/migrations.js`.

And also, this npm supports db:create, db:drop and db:seed.

## Setup

Installation is very typical.

```bash
$ npm install --save sails-grunt-task-db-migrate


You need to setup `config/migrations.js` to name the connection which you will
use to run migrations.

```JavaScript
// config/migrations.js
module.exports.migrations = {
  // connection name matches a field from config/connections.js
  connection: 'default' // or MySQL
};
```

Optionally, you can specify in the config file the name of the database table to
be used to track migrations (defaults to `migrations`), the directory to use for
migrations (defaults to `migrations`), and whether to create a coffeescript
file for the migrations instead of javascript file (defaults to `false`).

And also, we can set `seedingDir` option. If it is not yet set, the default path will be `seeders` folder under root folder.

```JavaScript
// config/migrations.js
module.exports.migrations = {
  // connection name matches a field from config/connections.js
  connection: 'somePostgresqlServer', // or MySQL
  table: 'sails_migrations',
  migrationsDir: 'db/migrate',
  seedingDir: 'db/seeders', 
  coffeeFile: true
};
```

You'll also need to setup `tasks/register/dbMigrate.js` to add the `db:migrate`
tasks to grunt.

```JavaScript
// tasks/register/dbMigrate.js
module.exports = require( 'sails-grunt-task-db-migrate' ).sailsGruntTasks
```


 [db-migrate]: https://github.com/kunklejr/node-db-migrate
 [sails.js]: http://sailsjs.org/
 [grunt]: http://gruntjs.com/
 [db-migrate docs]: https://github.com/kunklejr/node-db-migrate#migrations-api
 [open issues]: https://github.com/sureshkumarnagarajanmca/sails-grunt-task-db-migrate/issues


 npm i -S sails-grunt-task-db-migrate

 grunt db:migrate:create --name=create_test_schema

 grunt db:migrate:up
 
 grunt db:migrate:down --count=150

 grunt db:migrate:db:create --db-name=test_db

 grunt db:migrate:db:drop --db-name=test_db

### Sample seeder file

```JavaScript
// seeders/TestTableSeeder.js or db/seeders/TestTableSeeder ( where TestTable is a model of a db table test_table )
module.exports = aysnc() {
  TestTable.create( { field1: 'value', field: 'value' } )
}
```

---
_Source: https://npm.io/package/sails-grunt-task-db-migrate · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
