license-server/sql/reset-db.js
2018-03-27 23:07:46 +02:00

56 lines
1.4 KiB
JavaScript

require('dotenv').config()
// Node
const path = require('path')
const { promisify } = require('util')
const readFile = promisify(require('fs').readFile)
// 1st
const config = require('../config')
const { pool } = require('../src/db/pool')
// //////////////////////////////////////////////////////////
// Sanity check: Ensure this isn't being run in production
if (config.NODE_ENV !== 'development') {
throw new Error('[reset_db] May only reset database in development mode')
}
// //////////////////////////////////////////////////////////
function slurpSql(filePath) {
const relativePath = '../sql/' + filePath
const fullPath = path.join(__dirname, relativePath)
return readFile(fullPath, 'utf8')
}
async function seed() {
console.log('Resetting the database...')
await (async () => {
const sql = await slurpSql('schema.sql')
console.log('-- Executing schema.sql...')
const conn = await pool;
console.log(conn)
console.log(await conn.get('SELECT 1'))
console.log(await conn.exec(sql));
console.log(await conn.get('SELECT * FROM Activation'));
})()
// await (async () => {
// const sql = await slurpSql('seeds.sql')
// console.log('-- Executing seeds.sql...')
// await pool._query(sql)
// })()
}
seed().then(
() => {
console.log('Finished resetting db')
process.exit(0)
},
err => {
console.error('Error:', err, err.stack)
process.exit(1)
}
)