marv-pg-driver

A postgres marv driver implementation

Usage no npm install needed!

<script type="module">
  import marvPgDriver from 'https://cdn.skypack.dev/marv-pg-driver';
</script>

README

NPM version NPM downloads Build Status Maintainability Test Coverage Code Style Dependency Status devDependencies Status

marv-pg-driver

A postgres driver for marv

Usage

migrations/
  |- 001.create-table.sql
  |- 002.create-another-table.sql

Promises

const marv = require('marv/api/promise'); // <-- Promise API
const driver = require('marv-pg-driver');
const directory = path.resolve('migrations');
const connection = {
  // Properties are passed straight pg.Client
  host: 'postgres.example.com',
};

const migrations = await marv.scan(directory);
await marv.migrate(migrations, driver({ connection });
// Profit :)

Callbacks

const marv = require('marv/api/callback'); // <-- Callback API
const driver = require('marv-pg-driver');
const directory = path.resolve('migrations');
const connection = {
  // Properties are passed straight pg.Client
  host: 'postgres.example.com',
};

marv.scan(directory, (err, migrations) => {
  if (err) throw err
  // Connection properties are passed straight pg.Client
  marv.migrate(migrations, driver({ connection }), (err) => {
    if (err) throw err
    // Profit :)
  })
})

Testing

npm install
npm run docker
npm test