UNPKG

netlify

Version:

Netlify command line tool

41 lines 1.44 kB
import { Client } from 'pg'; import { NetlifyDev } from '@netlify/dev'; import { LocalState } from '@netlify/dev-utils'; import { PgClientExecutor } from './pg-client-executor.js'; export async function connectToDatabase(buildDir) { const state = new LocalState(buildDir); const connectionString = state.get('dbConnectionString'); if (connectionString) { const client = new Client({ connectionString }); await client.connect(); return { executor: new PgClientExecutor(client), cleanup: () => client.end(), }; } const netlifyDev = new NetlifyDev({ projectRoot: buildDir, aiGateway: { enabled: false }, blobs: { enabled: false }, edgeFunctions: { enabled: false }, environmentVariables: { enabled: false }, functions: { enabled: false }, geolocation: { enabled: false }, headers: { enabled: false }, images: { enabled: false }, redirects: { enabled: false }, staticFiles: { enabled: false }, serverAddress: null, }); await netlifyDev.start(); const { db } = netlifyDev; if (!db) { await netlifyDev.stop(); throw new Error('Local database failed to start. Set EXPERIMENTAL_NETLIFY_DB_ENABLED=1 to enable.'); } return { executor: db, cleanup: () => netlifyDev.stop(), }; } //# sourceMappingURL=db-connection.js.map