import { env } from '$lib/env'; import postgres from 'postgres'; import ssh2 from 'ssh2'; // @ts-ignore export const sql = postgres( { host: env.PG_HOST, port: parseInt(env.PG_PORT), database: env.PG_DATABASE, username: env.PG_USERNAME, password: env.PG_PASSWORD, // @ts-ignore socket: ({ host: [host], port: [port] }) => new Promise((resolve, reject) => { const ssh = new ssh2.Client(); ssh .on('error', reject) .on('ready', () => ssh.forwardOut('127.0.0.1', 12345, host, port, (err, socket) => err ? reject(err) : resolve(socket) ) ) .connect({ host: env.SSH_HOST, port: parseInt(env.SSH_PORT), username: env.SSH_USERNAME, password: env.SSH_PASSWORD }) }) } );