Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- require('dotenv').config();
- const pg = require('pg');
- const chalk = require('chalk');
- const config = {
- user: process.env.DB_ADMIN_USER,
- password: process.env.DB_ADMIN_PASSWORD,
- database: 'postgres',
- host: process.env.DB_HOST,
- port: 5432
- };
- const pgClient = new pg.Pool(config);
- pgClient.connect((err, client, done) => {
- if (err) {
- throw new Error(err);
- }
- console.log(`Connected to PostGresQL`);
- if (err) throw new Error(err);
- client.query(`DROP DATABASE IF EXISTS ${process.env.DB}`, function(err, result) {
- if (err) throw new Error(err);
- console.log(`Dropped database ${chalk.magenta(process.env.DB)}.`);
- client.query(`DROP USER IF EXISTS ${process.env.DB_USERNAME}`, function(err, result) {
- if (err) throw new Error(err);
- console.log(`Dropped user ${chalk.magenta(process.env.DB_USERNAME)}.`);
- client.query(`CREATE USER ${process.env.DB_USERNAME} WITH CREATEDB PASSWORD '${process.env.DB_PASSWORD}'`, function(err, result) {
- if (err) throw new Error(err);
- console.log(`Recreated user ${chalk.magenta(process.env.DB_USERNAME)}.`);
- client.query(`CREATE DATABASE ${process.env.DB} OWNER ${process.env.DB_USERNAME}`, function(err, result) {
- if (err) throw new Error(err);
- console.log(`Recreated database ${chalk.magenta(process.env.DB)} with owner ${chalk.magenta(process.env.DB_USERNAME)}.`);
- client.end(err => {
- if (err) throw new Error(err);
- console.log(`Ready to run migrations.`);
- done('done.');
- })
- })
- })
- })
- });
- })
Add Comment
Please, Sign In to add comment