@haku-sci/utils
Version:
utils from haku-sci. Library only
26 lines • 1.21 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createDatabaseIfNotExists = createDatabaseIfNotExists;
const pg_1 = require("pg");
async function createDatabaseIfNotExists() {
const client = new pg_1.Client({
host: process.env[process.env.ENV_POSTGRESQL_HOST],
port: process.env[process.env.ENV_POSTGRESQL_PORT],
user: process.env[process.env.ENV_POSTGRESQL_USER],
password: process.env[process.env.ENV_POSTGRESQL_PASSWORD],
database: process.env[process.env.ENV_POSTGRESQL_DB],
});
try {
await client.connect();
const result = await client.query(`SELECT 1 FROM pg_database WHERE datname = $1`, [process.env[process.env.ENV_POSTGRESQL_DB]]);
if (result.rowCount === 0) {
console.log(`Database "${process.env[process.env.ENV_POSTGRESQL_DB]}" does not exist. Creating...`);
await client.query(`CREATE DATABASE "${process.env[process.env.ENV_POSTGRESQL_DB]}"`);
console.log(`Database "${process.env[process.env.ENV_POSTGRESQL_DB]}" created successfully.`);
}
}
finally {
await client.end();
}
}
//# sourceMappingURL=postgres.service.js.map