Verifique a conexão com o banco de dados pg-promessa ao iniciar um aplicativo

Estou construindo um aplicativo expresso que se conecta a um banco de dados postgres usando opg-promessa módulo.

Gostaria de garantir que a conexão com o banco de dados seja bem-sucedida ao iniciar o servidor de aplicativos. Em outras palavras, se a conexão ao banco de dados falhar, gostaria de lançar um erro.

Meu arquivo server.js é o seguinte:

const express = require("express");

const databaseConfig= {
  "host": "localhost",
  "port": 5432,
  "database": "library_app",
  "user": "postgres"
};

const pgp = require("pg-promise")({});
const db = pgp(databaseConfig);

const app = express();
const port = 5000;

app.listen(port, (err) => {
  console.log(`running server on port: ${port}`);
});

A configuração atual iniciará o servidor expressoindependentemente se a conexão com o banco de dados é válida, qual não é o comportamento que eu gostaria.

Tentei navegar nos documentos, mas não consegui encontrar uma solução. Eu também tenteiconst db = pgp(databaseConfig).catch((err) => { // blow up });, mas isso não funcionou porquepgp não retorna uma promessa.

questionAnswers(1)

yourAnswerToTheQuestion