migrat-postgres

0.2.0 • Public • Published

migrat-postgres

NPM version Build Status

The official PostgreSQL plugin for Migrat.

  • Implements global locking.
  • Implements global migration state storage, retrieval.
  • Write migrations in pure PSQL.
$ npm install migrat-postgres --save

Configuration (migrat.config.js)

var postgres = require('migrat-postgres');
 
module.exports = {
    plugins: [
        postgres({
            host: 'localhost',
            port: 5432,
            user: 'yourusername',
            password: 'yourpassword',
            database: 'yourdatabase',
            migratSchema: 'public',
            migratTable: 'migrat',
            enableLocking: true,
            enableStateStorage: true
        })
    ]
};

Creating Migrations

$ migrat create <name> --type=psql

This will create a SQL file in the migrations directory that you can write normal SQL in. Just be sure to not remove the comments (they are used to pick out the queries):

-- up: 
CREATE TABLE user (
    id serial,
    username text
);
 
-- down: 
DROP TABLE IF EXISTS user;
 
-- check: 
SELECT EXISTS(
    SELECT *
    FROM information_schema.tables
    WHERE
        table_schema = 'public' AND
        table_name = 'user'
);

License

Copyright © 2014–2016 Natural Atlas, Inc. & Contributors

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at: http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Package Sidebar

Install

npm i migrat-postgres

Weekly Downloads

12

Version

0.2.0

License

Apache-2.0

Unpacked Size

24.6 kB

Total Files

14

Last publish

Collaborators

  • brianreavis